Chroma

活跃
GitHub Rust Apache-2.0

简介

Chroma 是一个开源的 AI 原生嵌入式数据库,专为构建 LLM 应用而设计。提供简单的 API 来存储嵌入向量、执行相似度搜索,是构建 RAG 应用的理想选择。

核心特性

  • 极简核心 API — 仅 4 个函数:create_collection、add、query、get,5 分钟上手
  • 自动嵌入处理 — add 时自动执行 tokenization、embedding 和索引,无需手动处理
  • 元数据过滤 — 支持按 metadata 字段精确过滤和文档内容全文搜索
  • 混合搜索 — 支持向量相似度搜索和全文检索的混合查询模式
  • 多语言客户端 — Python 和 JavaScript/TypeScript 客户端,pip/npm 一键安装
  • 持久化存储 — 支持内存模式快速原型和持久化模式部署,chroma run 启动服务端

适用场景

💡 RAG 应用后端 — 为 LLM 提供向量检索能力,实现基于私有数据的问答
💡 语义搜索 — 对文档、图片描述等非结构化数据进行相似度检索
💡 推荐系统 — 基于用户行为 embedding 实现个性化推荐
💡 知识图谱补充 — 存储实体 embedding,支持语义级别的知识关联查询
💡 快速原型验证 — 用内存模式快速验证 AI 应用的检索效果

快速开始

pip install chromadb

import chromadb

# 内存模式快速启动
client = chromadb.Client()
collection = client.create_collection('my-docs')

# 添加文档(自动处理嵌入)
collection.add(
    documents=['这是文档一', '这是文档二'],
    metadatas=[{'source': 'notion'}, {'source': 'google-docs'}],
    ids=['doc1', 'doc2']
)

# 查询最相似的 2 个结果
results = collection.query(
    query_texts=['查询文档'],
    n_results=2
)
print(results)

相关项目

相关文章