Chroma
Chroma: Open Source Embedding Database
Overview
Chroma (ChromaDB) is a rapidly growing open-source vector database designed for "Developer Experience" (DX). It focuses on being the easiest way to add state to your AI application.
Key Features
1. Embedded Mode
Chroma runs in-process (inside your Python script) just like SQLite.
- No Docker container to spin up.
- no external server to manage.
- `pip install chromadb` and go.
2. Client/Server Mode
When you scale, you can switch it to run as a standalone server so multiple apps can connect to it.
3. Batteries Included
Chroma has built-in embedding functions. You don't need to generate vectors manually.
import chromadb
client = chromadb.Client()
collection = client.create_collection("my_docs")
# Chroma automatically tokenizes & embeds this text using SentenceTransformers by default
collection.add(
documents=["This is a document", "This is another"],
ids=["id1", "id2"]
)
results = collection.query(
query_texts=["This is a query context"],
n_results=2
)Use Case
Chroma is the default choice for:
- Python notebooks.
- Prototypes / MVPs.
- Local LLM apps (PrivateGPT).
- Apps where simplicity is the priority.