Providers
Vector Stores

Vector Store Providers

Vector stores enable semantic search over memories.

Chroma

Local development and prototyping.

Installation

pip install remina-memory[chroma]

Configuration

"vector_store": {
    "provider": "chroma",
    "config": {
        "path": "~/.remina/chroma",
        "collection_name": "remina",
    }
}
OptionTypeDefaultDescription
pathstr~/.remina/chromaDatabase directory
collection_namestrreminaCollection name

Characteristics:

  • Zero configuration
  • Embedded (no server)
  • Persistent storage
  • Single-node only

Qdrant

Self-hosted production deployments.

Installation

pip install remina-memory[qdrant]

Configuration

"vector_store": {
    "provider": "qdrant",
    "config": {
        "url": "http://localhost:6333",
        "api_key": None,
        "collection_name": "remina",
        "embedding_dims": 1536,
    }
}
OptionTypeDefaultDescription
urlstrhttp://localhost:6333Server URL
api_keystrNoneAPI key (cloud)
collection_namestrreminaCollection name
embedding_dimsint1536Embedding dimensions

Setup

docker run -d \
  --name remina-qdrant \
  -p 6333:6333 \
  -p 6334:6334 \
  -v qdrant_storage:/qdrant/storage \
  qdrant/qdrant

Characteristics:

  • High performance
  • Horizontal scaling
  • Rich filtering
  • Cloud and self-hosted options

Pinecone

Managed, serverless production deployments.

Installation

pip install remina-memory[pinecone]

Configuration

"vector_store": {
    "provider": "pinecone",
    "config": {
        "api_key": "your-api-key",
        "index_name": "remina",
        "namespace": "default",
        "embedding_dims": 768,
        "cloud": "aws",
        "region": "us-east-1",
    }
}
OptionTypeDefaultDescription
api_keystrenv varPinecone API key
index_namestrreminaIndex name
namespacestrNoneNamespace
embedding_dimsint768Embedding dimensions
cloudstrawsCloud provider
regionstrus-east-1Region

Characteristics:

  • Fully managed
  • Serverless scaling
  • High availability
  • Pay-per-use

Vector Store Interface

All vector stores implement:

class VectorStoreBase(ABC):
    async def upsert(self, id: str, embedding: List[float], metadata: Dict) -> None
    async def upsert_batch(self, items: List[Tuple[str, List[float], Dict]]) -> None
    async def search(self, embedding: List[float], limit: int = 10, filters: Dict = None) -> List[VectorSearchResult]
    async def delete(self, ids: List[str]) -> None
    async def close(self) -> None

Embedding Dimensions

⚠️

The embedding_dims must match your embedder's output dimensions.

EmbedderModelDimensions
OpenAItext-embedding-3-small1536
OpenAItext-embedding-3-large3072
Geminitext-embedding-004768
Cohereembed-english-v3.01024
HuggingFaceall-MiniLM-L6-v2384