Skip to main content

Overview

Upsonic supports 8 vector database providers out of the box. Each provider shares a common configuration interface (BaseVectorDBConfig) while exposing provider-specific options for advanced tuning. All providers support dense vector search, full-text search, and hybrid search through a unified API — so you can switch providers without changing your application logic.

Provider Comparison

Quick Start

Every provider follows the same pattern — swap the provider and config to switch vector databases:

Connection Modes

Most providers support multiple connection modes via ConnectionConfig:
Not all providers use ConnectionConfig. FAISS uses db_path directly, Pinecone uses api_key + environment, and PGVector uses connection_string. SuperMemory only requires an api_key. See each provider’s page for details.

Shared Configuration

All providers inherit these base parameters from BaseVectorDBConfig:

Choosing a Provider

For prototyping and development:
  • Chroma (embedded mode) or FAISS — zero infrastructure, fast iteration
For production with managed infrastructure:
  • Pinecone — fully managed, auto-scaling, zero ops
  • SuperMemory — zero-config (handles embeddings too)
For production with self-hosted infrastructure:
  • Qdrant or Milvus — feature-rich, scalable, battle-tested
  • Weaviate — if you need schema-based collections and AI modules
For existing PostgreSQL setups:
  • PGVector — adds vector search to your existing database