Chroma #

什么是 Chroma? #

Chroma 是一个开源的 AI 原生向量数据库,专为构建 AI 应用而设计。它提供了简单易用的 API,让开发者可以轻松地存储、检索和管理工作流中的向量嵌入,是构建 RAG(检索增强生成)应用的理想选择。

文档结构 #

本指南按以下结构组织,循序渐进地帮助你掌握 Chroma:

1. 入门基础 #

主题 描述 文档链接
Chroma 简介 Chroma 的定义、特点、历史与应用场景 intro.md
基础概念与安装 核心概念、安装配置、环境准备 basics.md
快速开始 第一个程序、基本操作流程 quickstart.md

2. 核心功能 #

主题 描述 文档链接
集合管理 创建、删除、配置集合 collections.md
文档操作 添加、更新、删除文档 documents.md
向量嵌入 嵌入函数、自定义嵌入、多模态支持 embeddings.md
查询与检索 相似性搜索、过滤查询、混合检索 querying.md

3. 进阶应用 #

主题 描述 文档链接
高级配置 持久化、分布式部署、性能优化 advanced.md
集成与扩展 LangChain、LlamaIndex、其他框架集成 integrations.md
最佳实践 生产部署、安全配置、性能调优 best-practices.md

学习路径 #

text
入门阶段
├── Chroma 简介
├── 安装与配置
├── 第一个程序
│
基础阶段
├── 集合管理
├── 文档操作
├── 向量嵌入
│
进阶阶段
├── 查询与检索
├── 高级配置
├── 框架集成
│
高级阶段
├── 生产部署
├── 性能优化
├── 最佳实践

Chroma vs 其他向量数据库 #

特性 Chroma Pinecone Weaviate Milvus
开源
本地运行
易用性 ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐ ⭐⭐⭐
学习曲线
云服务
嵌入函数 内置 需外部 内置 需外部
适合场景 原型/中小型 生产级 企业级 大规模

快速开始 #

安装 #

bash
pip install chromadb

第一个程序 #

python
import chromadb

chroma_client = chromadb.Client()

collection = chroma_client.create_collection(name="my_collection")

collection.add(
    documents=["这是第一个文档", "这是第二个文档", "这是第三个文档"],
    ids=["id1", "id2", "id3"]
)

results = collection.query(
    query_texts=["第一个"],
    n_results=2
)

print(results)

核心概念预览 #

集合(Collection) #

python
collection = chroma_client.create_collection(
    name="documents",
    metadata={"description": "文档存储"}
)

文档(Document) #

python
collection.add(
    documents=["文档内容"],
    metadatas=[{"source": "web"}],
    ids=["doc1"]
)

嵌入(Embedding) #

python
from chromadb.utils import embedding_functions

embedding_function = embedding_functions.SentenceTransformerEmbeddingFunction(
    model_name="all-MiniLM-L6-v2"
)

查询(Query) #

python
results = collection.query(
    query_texts=["搜索内容"],
    n_results=5,
    where={"source": "web"}
)

适用场景 #

  • RAG 应用:检索增强生成、知识库问答
  • 语义搜索:文档搜索、内容推荐
  • 相似性匹配:去重、聚类分析
  • 推荐系统:内容推荐、个性化排序
  • 多模态搜索:图像搜索、跨模态检索

Chroma 的优势 #

text
✅ 简单易用
   - 纯 Python 实现
   - API 设计直观
   - 零配置启动

✅ 功能完整
   - 内置嵌入函数
   - 支持元数据过滤
   - 支持多种存储后端

✅ 开源免费
   - Apache 2.0 许可
   - 活跃的社区
   - 持续更新

✅ 生产就绪
   - 持久化存储
   - 分布式支持
   - 云服务可用

资源推荐 #

开始学习 #

选择适合你的起点:


继续探索本指南,逐步掌握 Chroma 技术,从新手成长为向量数据库应用开发专家!

最后更新:2026-04-04