Pinecone vector database integration

By Ai Flowi · Published

The Pinecone vector database integration connects a configured Pinecone store to search and ingestion fields in AI Flowi Workflow. Set an API key and index name, choose the intended namespace, and connect a compatible embedding model before evaluating search results. This page explains the component contract, rather than provisioning a hosted database.

The exported Pinecone inputs address index selection, content grouping and text lookup. The steps below are an example configuration.

1. Prepare the index and accounts

You need your own Pinecone account, an API key authorized for the intended index, and access to the embedding provider you select. Protect the index credential in private settings; an index name is a resource selector, not a replacement for authorization.

Resolve representation compatibility with the text embeddings explanation before selecting your Pinecone index.

Keep a configuration note pairing index_name, namespace and distance_strategy with the prepared provider resource. For an illustrative product-manual library, use separate reviewed namespaces for current and retired manuals, then check which namespace a query actually reaches. A result from a retired manual can look plausible while answering the wrong product version. The export supplies no namespace discovery or index-creation controls, so obtain those identifiers from your own account rather than guessing them in the workflow.

If your immediate task is simply to read a permitted wiki, start with the Confluence integration. Loading source content and searching an index are separate stages. Adding a Pinecone node does not establish that source permissions will be carried into retrieval.

2. Set the Pinecone fields

The table follows the exported required flags. Optional means the field is not marked required in that export; Pinecone defaults and runtime completeness cannot be inferred from that flag.

Example configuration; not production-tested by Ai Flowi.

Pinecone: exported inputs and configuration decisions
FieldWhat to decideType / requiredConnection types / choices
distance_strategyReconcile this metric with the configuration recorded for your Pinecone index.str / NoPinecone: input_types omitted; choices: “Cosine”, “Euclidean”, “Dot Product”
embeddingAttach the model object that matches the Pinecone index; numeric JSON cannot replace that object.other / NoPinecone connections: Embeddings
index_nameUse the exact intended index identifier, verified in your own provider account.str / YesPinecone: input_types omitted
ingest_dataInspect a Pinecone ingestion specimen before supplying Data, DataFrame or Table.other / NoPinecone connections: Data, DataFrame, Table
namespaceSelect the manual grouping; investigate an empty namespace independently.str / NoPinecone: input_types omitted
number_of_resultsSet a small result count for inspection; the catalogue gives no default or range.int / NoPinecone: input_types omitted
pinecone_api_keyProvide your own authorized credential privately, without copying it into shared examples.str / YesPinecone: input_types is []
search_querySupply the question as a Message-compatible query input.query / NoPinecone connections: Message
should_cache_vector_storeRevisit this cache switch after a manual revision; Pinecone refresh timing remains unverified.bool / NoPinecone: input_types omitted
text_keyMatch the text-bearing field in your prepared records; no default field name is established.str / NoPinecone: input_types omitted
  1. Add OpenAI Embeddings if that is the embedding provider used for your prepared content. Choose the index-matching model and configure its private openai_api_key. Its catalogue choices include "text-embedding-3-small"; this is an available setting, not a recommendation for every index.
  2. Connect OpenAI Embeddings embeddings to Pinecone embedding, following the model configuration recorded for that Pinecone index.
  3. Set Pinecone index_name to your prepared index and namespace to a dedicated synthetic-content namespace. Assign the observed manual-text field to text_key.
  4. Enter a synthetic search_query, such as a question about the test document’s topic, and set number_of_results to 3 as an illustrative count. Leave ingest_data disconnected while investigating the search path; confirm its behavior before running.
  5. Inspect the selected output and the provider-side records. Confirm that the source text and references belong to the intended namespace before using them in an answer.

These settings do not claim that an empty ingestion input prevents every write or that a selected distance strategy overrides the provider index. Verify both behaviors on disposable content before relying on retrieval without Pinecone writes.

4. Map search results to the receiving component

Pinecone exports search_results, displayed as Search Results with type JSON, and dataframe, displayed as Table with type Table. A downstream JSON processor needs the first port; a Table-compatible consumer can use the second. Pinecone result keys, score fields and metadata columns are absent from this catalogue snapshot.

Your useful output is a set of retrieved records whose content you can trace back to the prepared source. For the manual example, inspect the retrieved passage and its edition reference before preparing a citation. The observed count cannot demonstrate exhaustive coverage of a manual namespace; inspect the cited passage before accepting an answer about the product.

Keep ingestion distinct from retrieval

The ingest_data input supports structured source data, but the export omits record identifiers, replacement behavior and duplicate handling. Prepare a small ingestion sample separately, retain the manual edition reference, then inspect changes to the provider records. Do not combine unknown ingestion behavior with a production question-answering flow.

The text_key setting concerns the record field containing text; namespace concerns the selected grouping. These Pinecone selectors provide no documented reader-authorization policy. Where several teams share an index, test whether a query can reveal another team’s records and enforce access before presenting retrieved material.

When should I choose a path other than Pinecone?

No output here establishes retrieval quality, score thresholds, index creation, automatic source synchronization, or deletion of obsolete vectors. Cache behavior and provider failure handling need their own checks. After changing credentials, namespace or content, verify fresh results rather than assuming cached state follows the change.

Skip this integration when an exact lookup by identifier covers the task, when you cannot verify the embedding setup, or when the workflow must enforce per-document permissions that you have not implemented. For a PostgreSQL-based vector-store contract, compare PGVector; its connection and collection fields differ.

Book a demo