> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getbifrost.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Pinecone

> Pinecone vector database integration for semantic caching in Bifrost.

## Pinecone

[Pinecone](https://www.pinecone.io/) is a managed vector database service designed for machine learning applications, offering both serverless and pod-based deployment options.

### Key Features

* **Managed Service**: Fully managed with no infrastructure to maintain
* **Serverless Option**: Pay-per-use pricing with automatic scaling
* **High Performance**: Optimized for low-latency vector search
* **Metadata Filtering**: Advanced filtering on vector metadata
* **Namespaces**: Organize vectors into separate namespaces within an index

### Setup & Installation

**Pinecone Cloud:**

* Sign up at [pinecone.io](https://www.pinecone.io/)
* Create a new index with the desired dimensions
* Get your API key and index host URL from the console

**Local Development (Pinecone Local):**

```bash theme={null}
docker run -d \
  --name pinecone-local \
  -p 5081:5081 \
  ghcr.io/pinecone-io/pinecone-index:latest
```

### Configuration Options

<Tabs group="pinecone-config">
  <Tab title="Go SDK">
    ```go theme={null}
    vectorConfig := &vectorstore.Config{
        Enabled: true,
        Type:    vectorstore.VectorStoreTypePinecone,
        Config: vectorstore.PineconeConfig{
            APIKey:    "your-pinecone-api-key",
            IndexHost: "your-index-host.svc.environment.pinecone.io",
        },
    }

    store, err := vectorstore.NewVectorStore(context.Background(), vectorConfig, logger)
    ```
  </Tab>

  <Tab title="config.json">
    **Cloud Setup:**

    ```json theme={null}
    {
      "vector_store": {
        "enabled": true,
        "type": "pinecone",
        "config": {
          "api_key": "your-pinecone-api-key",
          "index_host": "your-index-host.svc.environment.pinecone.io"
        }
      }
    }
    ```

    **Local Development:**

    ```json theme={null}
    {
      "vector_store": {
        "enabled": true,
        "type": "pinecone",
        "config": {
          "api_key": "pclocal",
          "index_host": "localhost:5081"
        }
      }
    }
    ```
  </Tab>
</Tabs>

<Note>
  For local development with Pinecone Local, any API key value works (e.g., "pclocal"). The index host should point to localhost:5081 by default.
</Note>

<Warning>
  Pinecone requires all IDs to be unique strings. Namespaces are created automatically when you first upsert vectors.
</Warning>

For the VectorStore interface API and usage examples, see [Vector Store Architecture](/architecture/framework/vector-store). For semantic caching setup, see [Semantic Caching](/features/semantic-caching).
