关键要点
- Chroma(trychroma.com)是一款专为 AI 应用打造的免费开源嵌入数据库,而不是把通用数据库改造用于向量场景
- 采用 Apache-2.0 许可证,已通过 GitHub 仓库 确认
- 截至本次测评,GitHub 星标数已超过 29,300(验证于 2026-09-18)
- 本地化程度:完全可自行托管——开源数据库完全运行在你自己的基础设施上;Chroma Cloud 是一项独立的、可选的托管服务
- 核心 API 只有四个函数:
create_collection、add、query和delete - 三种部署模式:内存/临时模式(用于原型开发)、持久本地存储,以及客户端-服务器架构
- 常被用作 LangChain 和 LlamaIndex RAG 管道中的向量存储后端,搭配通过 Ollama 运行的本地嵌入模型或云端嵌入 API 使用
📍 简单一句话
Chroma 是一款免费、开源(Apache-2.0)的向量/嵌入数据库,即 chroma-core/chroma 项目(不是同名的那款不相关的设计工具),专为 RAG、语义搜索等 AI 应用打造,可以以内存模式、本地磁盘模式或客户端-服务器部署模式自行托管。
💬 简单来说
你不必自己搭建一套存储层来保存代表文档的数字化"嵌入向量",Chroma 会替你存储这些向量,并让你按语义而非精确关键词进行搜索。只要你喂给它原始文本,它就会自动完成分词和嵌入步骤,通过 pip install chromadb 就能在你自己的机器或服务器上运行,而且完全免费。
📌注: 本测评是 Chroma 在 本地 LLM 软件目录 词条的深度补充——该页面可以让你一眼看清 Chroma 与其他数十款本地及自托管 AI 工具的对比情况。
Chroma 是什么?
Chroma 是一款开源嵌入数据库,用于存储、索引和检索你的文本、图像或其他数据的向量表示,让 AI 应用能够按语义相似度而非精确关键词匹配来检索信息。其 GitHub 项目简介 和官网标语将其定位为"面向 AI 的开源搜索基础设施"以及"面向 AI 的开源数据基础设施",整个项目围绕一套刻意保持精简的核心 API 构建。
- 产品类型:一款自托管的向量/嵌入数据库,以 Python 和 JavaScript 库的形式发布,附带可选的服务端二进制文件——不是一个独立的可下载 GUI 应用
- 代码仓库:github.com/chroma-core/chroma
- 许可证:Apache-2.0,已通过 PyPI 上的仓库许可证分类标签确认
- 本地化程度:完全可自行托管——Chroma 的开源数据库在每一种部署模式下都完全运行在你自己的基础设施上;Chroma Cloud 是一项独立的、可选的托管/无服务器服务,面向不想自行运维的团队
- 规模:GitHub 星标数超过 29,300,Chroma 官网自称
chromadb软件包每月下载量超过 1,500 万次,并被用于超过 9 万个开源代码库——这些数字反映的是该软件包广泛的下载覆盖面,而不一定等于独立生产环境部署的实际数量 - Chroma 官网列出的知名用户包括 Capital One、Mintlify、UnitedHealthcare、Conduit、Propel、Cofounder、Weights & Biases 和 Medwise
Chroma 的项目历史
Chroma 作为 GitHub 上 chroma-core 组织下的开源项目开发,后来在同一数据库之上推出了独立的托管服务 Chroma Cloud。本测评直接通过 Chroma 自己的代码仓库和软件包注册表核实了当前的 GitHub 星标数、许可证和软件包详情,但在调研过程中未能从有明确日期的一手来源核实具体的创始人或公司名称——因此本测评不作此类陈述。如果你需要这一细节,请直接查阅 Chroma 官网及相关媒体报道,而不要依赖二手信息。
- Chroma 的核心 API 刻意保持了极简的接口面:
create_collection、add、query和delete,目的是让开发者能快速搭建起一条可用的检索管道 - 该项目已增长至超过 29,300 颗 GitHub 星标,据 Chroma 官网称,截至本次测评,
chromadb软件包每月下载量已超过 1,500 万次 - Chroma Cloud 作为一项独立的托管/无服务器服务被推出,为不想自行托管的团队提供了使用同一数据库的可选路径——Chroma 官网提到该托管套餐具备 SOC 2 Type II 合规、自动数据分层以及面向企业的"自带云"(BYOC)等特性
- 截至本次测评,PyPI 上
chromadb的最新版本为 1.5.9,发布于 2026-05-05
Chroma 能做什么?
根据 Chroma 官方的 GitHub README 和 文档,Chroma 的功能集主要围绕为 AI 应用存储和查询嵌入向量展开。
- 简洁的核心 API——四个函数覆盖了核心工作流程:
create_collection用于定义集合,add用于插入文档,query用于相似度搜索,delete用于删除条目 - 自动处理嵌入——如果你直接喂给 Chroma 原始文本而不自带嵌入向量,它会使用默认的嵌入函数自动完成文档的分词、嵌入和索引
- 元数据过滤——添加文档时可以为其附加元数据,查询结果既能按语义相似度排序,也能按这些元数据进行过滤
- 三种部署模式——用于快速原型开发的内存/临时模式、让数据在进程重启后依然保留的持久本地存储模式,以及支持多进程共享访问的客户端-服务器架构
- 语言 SDK——官方提供 Python(PyPI 上的
chromadb)和 JavaScript/TypeScript(npm 上的chromadb)客户端 - 框架集成——Chroma 常被用作 LangChain 和 LlamaIndex RAG 管道中的向量存储后端,搭配本地嵌入模型(例如通过 Ollama)或云端嵌入 API 使用
- Chroma Cloud(独立服务)——一项托管的无服务器套餐,Chroma 官网称其支持向量、全文、正则表达式和元数据搜索,外加稀疏向量搜索(BM25、SPLADE)、自动数据分层、SOC 2 Type II 合规以及面向企业的"自带云"(BYOC);请直接在 trychroma.com 核实当前的功能可用性,因为这些是托管套餐的特性,不一定全部存在于自托管的开源数据库中
使用示例:三种使用 Chroma 的方式
以下是基于 Chroma 官方文档的 API 编写的具体工作流程,均在执行 pip install chromadb 之后运行。
- 创建内存客户端并添加、查询文档:
chromadb.Client()创建一个临时客户端,create_collection()定义一个命名集合,add()插入带有可选元数据和 ID 的文档,query()按语义相似度进行搜索——如果你没有传入自己的嵌入向量,Chroma 会自动完成文本的分词和嵌入 - 使用持久本地客户端让数据在重启后依然保留:Chroma 文档记载的 API 中包含一种持久客户端模式(在当前版本中通常是
chromadb.PersistentClient(path=...)),它会将数据写入本地磁盘而不仅仅保存在内存中——在部署依赖此功能的代码之前,请务必对照 docs.trychroma.com 核实当前确切的构造函数和参数,因为客户端 API 可能会在不同版本之间发生变化 - 将 Chroma 与 LangChain 搭配作为 RAG 管道中的向量存储:典型的工作流程是加载并切分文档,使用兼容 LangChain 的嵌入模型(通过 Ollama 本地运行或使用云端服务商)对文档进行嵌入,通过 LangChain 的 Chroma 向量存储集成将向量存入 Chroma 集合,然后在检索链中将该存储用作检索步骤——请查阅 LangChain 当前的文档以确认确切的集成包和导入路径,因为 LangChain 的 Chroma 集成随着时间推移在不同软件包之间发生过迁移
import chromadb
client = chromadb.Client()
collection = client.create_collection(name="my_collection")
collection.add(
documents=["This is document1"],
metadatas=[{"source": "notion"}],
ids=["doc1"],
)
results = collection.query(
query_texts=["This is a query document"],
n_results=2,
)安装 Chroma
Chroma 可以通过 pip 或 npm 免费安装,其源代码托管在 GitHub 上。没有独立的 GUI 安装程序,因为 Chroma 是一款需要添加到 Python 或 JavaScript 项目中的数据库(客户端-服务器部署模式下可选配服务端组件)。
Source | Link |
|---|---|
| 官方网站(文档、使用场景、Chroma Cloud) | trychroma.com |
| 文档 | docs.trychroma.com |
| GitHub 仓库(源代码,Apache-2.0) | github.com/chroma-core/chroma |
| PyPI 软件包(Python) | pypi.org/project/chromadb |
| npm 软件包(JavaScript/TypeScript) | npmjs.com/package/chromadb |
使用 pip install chromadb(Python)或 npm install chromadb(JavaScript)安装。对于开源的自托管数据库,不需要 API 密钥或账号——只有当你选择使用独立的 Chroma Cloud 服务时才需要账号。
Chroma 定价:真的免费吗?
开源版 Chroma 数据库完全免费,采用 Apache-2.0 许可证——自托管数据库本身没有任何功能被锁定在付费套餐之后。Chroma Cloud 是一项独立的、可选的托管服务,面向想要无服务器托管版本、而不想自行运行数据库的团队;截至本次测评,trychroma.com 提到 Chroma Cloud 提供免费起步方案及初始免费额度——请直接查阅 trychroma.com 获取当前条款,而不要假设某个具体数字,因为托管套餐的条款变动往往比开源许可条款更频繁。
- 开源数据库:免费,Apache-2.0 许可证,Chroma 本身不设任何使用限制
- 你自己的成本仅限于自身的基础设施(算力和存储),以及如果你选择付费云端嵌入 API 而非本地模型时所产生的嵌入服务商费用
- Chroma Cloud:一项独立的、可选的托管/无服务器服务;截至本次测评,官网提到新账号享有初始免费额度——在据此做预算之前,请直接在 trychroma.com 核实当前的定价和额度条款
- 安装和使用开源数据库不需要注册账号
Chroma vs. Qdrant
Chroma 和 Qdrant 都是开源、可自托管的向量数据库,开发者常常将两者放在一起比较,用于 RAG 和语义搜索后端场景,但它们在实现语言、部署选项以及过滤能力的深度上有所不同。Chroma 主要用 Python 编写,拥有刻意保持精简的核心 API,常因能够快速搭建原型而被选用。Qdrant 用 Rust 编写,围绕更丰富的过滤能力构建(关键词匹配、全文搜索、数值范围以及基于 JSON 负载的地理位置条件,并可结合逻辑运算符),还提供轻量级的"Qdrant Edge"模式,可在边缘设备的应用内运行,此外还有自己的托管服务 Qdrant Cloud。
实现语言
- Chroma:
- Python(较新版本内核由 Rust 支撑)
- Qdrant:
- Rust
核心 API 理念
- Chroma:
- 刻意保持精简:create_collection、add、query、delete
- Qdrant:
- API 覆盖面更广,支持丰富的负载过滤(全文、数值范围、地理位置)
部署模式
- Chroma:
- 内存/临时模式、持久本地存储、客户端-服务器
- Qdrant:
- Docker 客户端-服务器模式、轻量级嵌入式 "Edge" 模式、托管服务 Qdrant Cloud
GitHub 星标数(本次测评核实)
- Chroma:
- 超过 29,300(验证于 2026-09-18)
- Qdrant:
- 超过 34,700(验证于 2026-09-18)
许可证
- Chroma:
- Apache-2.0
- Qdrant:
- Apache-2.0
最适合场景
- Chroma:
- 快速原型开发以及以 Python 为主、追求极简 API 的 RAG 管道
- Qdrant:
- 需要在向量搜索之外进行丰富、结构化元数据过滤的工作负载,或需要边缘部署能力的场景
两个项目都会频繁发布更新,并且都在各自开源数据库之外提供独立的托管云套餐——在做选择之前,请在各自官网核实当前的功能对等情况和价格,而不要依赖某一时间点的对比结果。
谁适合使用 Chroma?
Chroma 是否适合你,取决于你需要的是一款拥有极简 API 的专用自托管向量数据库,还是一套更宽泛的记忆/知识图谱层,或者一款以过滤能力为核心的数据库。
竞品与替代方案
Chroma 位于向量数据库和检索基础设施这一层,与嵌入式向量存储以及更宽泛的 RAG/数据框架同属一类,开发者常常将它们放在一起评估。这些并非完全相同的产品——有些是更窄的嵌入式数据库,有些是更宽泛的索引或编排框架——但它们都在争夺同一个决策:"我该把嵌入向量存在哪里、又该如何查询它们"。
LlamaIndex
- Best known for:
- 专注于为 LLM 应用提供索引与检索能力的数据框架
- Link:
- LlamaIndex 测评
关于LlamaIndex的文章(10篇)
- LlamaIndex Review 2026: Code-First RAG Framework, Not a No-Code Builder更新于 2026年9月2日
- Chroma Review: Open-Source Vector Database for AI and RAG更新于 2026年9月18日
- Milvus Review 2026: The Open-Source Vector Database for Local RAG更新于 2026年9月18日
- Qdrant Review 2026: The Self-Hosted Vector Database for RAG更新于 2026年9月18日
- Dify Review 2026: Open-Source LLMOps Platform vs. LangChain, Flowise更新于 2026年9月2日
- Flowise Review 2026: Visual LangChain Workflow Builder Is Shutting Down更新于 2026年9月2日
- Haystack Review 2026: deepset's RAG Framework vs. LangChain and LlamaIndex更新于 2026年9月2日
- RAGFlow Review 2026: Citation-Grade RAG for Complex Documents更新于 2026年9月2日
- txtai Review 2026: The Embedded Vector Database That Skips the Server更新于 2026年9月2日
- Best Local RAG Tools in 2026: Open WebUI, LlamaIndex, and LangChain更新于 2026年8月28日
另有15篇未显示
LangChain
- Best known for:
- 通用型 LLM 应用框架,拥有庞大的检索与代理集成生态
- Link:
- LangChain 测评
关于LangChain的文章(10篇)
- LangChain Review 2026: Features, Pricing, Alternatives更新于 2026年9月5日
- Self-Hosted AI Starter Kit Review 2026: n8n + Ollama + Qdrant in One Compose File更新于 2026年9月19日
- Chroma Review: Open-Source Vector Database for AI and RAG更新于 2026年9月18日
- cognee Review: Open-Source Knowledge-Graph Memory for AI Agents更新于 2026年9月18日
- Langchain-Chatchat Review 2026: Self-Hosted RAG and Agent Framework更新于 2026年9月18日
- Milvus Review 2026: The Open-Source Vector Database for Local RAG更新于 2026年9月18日
- Qdrant Review 2026: The Self-Hosted Vector Database for RAG更新于 2026年9月18日
- Docker Model Runner Review 2026: Local LLMs via the Docker CLI更新于 2026年9月12日
- n8n Review 2026: AI Workflow Automation With Local Ollama Support更新于 2026年9月12日
- Agent Zero Review 2026: Features, Install, Alternatives更新于 2026年9月11日
另有29篇未显示
Haystack(deepset)
- Best known for:
- deepset 推出的开源 RAG 与搜索管道框架
- Link:
- Haystack 测评
这并非向量数据库和检索工具的完整列表——完整且定期更新的目录请参见 本地 LLM 软件目录,其中也包含 Chroma 自己的目录词条。
评估 Chroma 时的常见误区
关于 Chroma 的大多数困惑,都源于把它和同名的不相关设计工具搞混、误以为 Chroma Cloud 的功能同样适用于开源数据库,或者因为用错客户端模式而丢失数据。
常见问题
Chroma 是什么?
Chroma(trychroma.com,源码位于 github.com/chroma-core/chroma)是一款免费、开源(Apache-2.0)的嵌入数据库——一款为检索增强生成、语义搜索等 AI 应用打造的向量数据库。这里指的是 chroma-core/chroma 这个项目,而不是同名的、不相关的设计/配色工具。
Chroma 免费吗?
是的,开源版 Chroma 数据库完全免费,采用 Apache-2.0 许可证,自托管数据库的任何功能都不需要付费解锁。Chroma Cloud 是一项独立的、可选的托管服务,拥有自己单独定价的套餐——当前定价请查阅 trychroma.com。
如何安装 Chroma?
Python 用户运行 pip install chromadb,JavaScript/TypeScript 用户运行 npm install chromadb。自托管的开源数据库不需要 API 密钥或账号。
Chroma 能完全离线自托管运行吗?
可以。开源版 Chroma 数据库在每一种部署模式下——内存模式、持久本地存储或客户端-服务器模式——都完全运行在你自己的基础设施上。Chroma Cloud 是一项独立的、可选的托管服务,面向不想自行托管的团队。
Chroma 有哪些部署模式?
共三种:用于快速原型开发的内存/临时模式(数据在退出后丢失)、让数据在重启后依然保留的持久本地存储模式,以及支持多进程共享访问的客户端-服务器架构。
Chroma 的核心 API 是什么?
四个函数覆盖了核心工作流程:create_collection 用于定义集合,add 用于插入文档(可附带可选的元数据和 ID),query 用于按语义相似度搜索,delete 用于删除条目。
Chroma 会自动处理嵌入向量吗?
默认会。如果你添加原始文本而不提供自己的嵌入向量,Chroma 会使用默认的嵌入函数自动为你完成文档的分词、嵌入和索引;如果你愿意,也可以自带嵌入向量和嵌入模型。
Chroma 和 Qdrant 有什么不同?
Chroma 主要用 Python 编写,拥有刻意保持精简的核心 API,常因能快速搭建原型而被选用。Qdrant 用 Rust 编写,围绕更丰富的元数据过滤能力构建(数值范围、地理位置、全文、逻辑条件)。两者都采用 Apache-2.0 许可证、可自行托管,并且都额外提供独立的托管云套餐——详见上文的完整对比。
Chroma 能和哪些框架集成?
Chroma 常被用作 LangChain 和 LlamaIndex RAG 管道中的向量存储后端,搭配本地嵌入模型(例如通过 Ollama)或云端嵌入 API 使用。
Chroma 和那款同名的设计/配色工具是同一个东西吗?
不是。本测评涉及的是 chroma-core/chroma,即位于 trychroma.com 和 github.com/chroma-core/chroma 的开源 AI 向量数据库。市面上还有一款不相关的独立产品,在设计/配色工具领域同样使用"Chroma"这个名字——在安装之前请务必确认你找的是正确的项目。
Chroma Cloud 是什么?
Chroma Cloud 是建立在同一数据库之上的一项独立、可选的托管/无服务器服务,面向不想自行托管的团队。Chroma 官网提到该套餐具备 SOC 2 Type II 合规、"自带云"(BYOC)等功能——当前功能和定价请直接在 trychroma.com 核实。