标签: Chroma

  • Chroma:AI原生开源向量数据库,RAG与语义搜索首选,28,530 Stars让搜索基础设施零门槛

    Chroma:AI原生开源向量数据库,RAG与语义搜索首选,28,530 Stars让搜索基础设施零门槛

    Chroma Logo

    Chroma – Search Infrastructure for AI

    📦 项目简介

    Chroma 是一款AI 原生的开源向量数据库,提供向量、全文、正则表达式和元数据搜索一体化基础设施。专为 AI 应用设计,支持语义相似搜索、混合检索和数据集版本管理,是 RAG(检索增强生成)和 AI 搜索场景的首选开源方案。

    ⭐ 28,530 Stars
    🍴 2,333 Forks
    📜 Apache-2.0
    🐍 Python / TypeScript / Rust
    📦 15M+ 月下载

    ⚙️ 安装要求和过程

    环境要求

    • Python ≥ 3.8(推荐 3.9+)
    • Node.js ≥ 18(TypeScript 客户端)
    • Rust ≥ 1.70(可选,自行编译时使用)
    • Docker(可选,服务端部署)

    快速安装(Python)

    # 安装 Chroma Python 客户端
    pip install chromadb
    
    # 启动 Chroma 服务端(默认端口 8000)
    pip install chromadb[server]
    chromadb run
    
    # 或使用 Docker 一键启动
    docker run -d --name chroma \
      -p 8000:8000 \
      -v $(pwd)/chroma-data:/chroma/chroma \
      chromadb/chroma:latest

    TypeScript / JavaScript 安装

    # npm
    npm install chromadb
    
    # 在 Node.js / 浏览器中使用
    import { ChromaClient } from 'chromadb';
    
    const client = new ChromaClient({ path: "http://localhost:8000" });

    Chroma Cloud(托管服务)

    注册 Chroma Cloud 即可获得免运维、自动扩缩容的托管向量数据库,支持 S3/GCS 对象存储、SOC 2 Type II 合规。

    ✨ 核心功能

    🔍 多模态搜索

    同时支持向量搜索(语义相似度)、全文搜索(BM25/SPLADE 稀疏向量)、正则表达式搜索元数据过滤。可在单次查询中混合多种搜索策略,实现更精准的召回效果。

    📦 集合 Forking(数据集版本管理)

    支持写时复制(Copy-on-Write)Forking,可快速复制整个 Collection 用于 A/B 测试、模型版本对比或数据回滚,无需额外存储空间。

    ⚡ 对象存储原生架构

    索引专门优化用于 S3 / GCS 对象存储,热数据内存缓存 + 温数据 SSD + 冷数据对象存储三层智能分层。存储成本降低 10 倍(向量 1GB → 对象存储 $0.02/GB/mo vs 内存 $5/GB/mo)。

    🔌 多语言 SDK + 生态集成

    官方支持 Python、TypeScript、Rust 三语言 SDK;无缝集成 LangChain、LlamaIndex、OpenAI、Cohere、Hugging Face 等主流 AI 框架;也可通过 MCP 协议直接接入 AI Agent。

    📊 企业级可靠性

    SOC 2 Type II 认证;支持多租户隔离、VPC 私有部署(BYOC)、CMEK 客户托管密钥、AWS PrivateLink 私有网络;索引状态实时监控;读写一致性级别可控(ReadLevel)。

    🚀 典型使用场景

    场景一:RAG(检索增强生成)知识库

    将企业文档、技术手册、FAQ 等嵌入为向量存入 Chroma,LLM 回答问题时先检索相关片段再生成答案。相比直接使用 LLM,准确率提升 40%+,同时可追溯答案来源。

    # RAG 典型代码(Python)
    import chromadb
    from langchain.vectorstores import Chroma
    from langchain.embeddings import OpenAIEmbeddings
    
    # 创建向量库
    vectordb = Chroma.from_documents(
        documents=splits,
        embedding=OpenAIEmbeddings(),
        persist_directory="./chroma_db"
    )
    
    # 检索相关文档
    retriever = vectordb.as_retriever(search_kwargs={"k": 4})
    relevant_docs = retriever.get_relevant_documents("如何重置密码?")

    场景二:语义搜索与推荐系统

    电商、内容平台可用 Chroma 实现”以文搜图”、”相关推荐”等功能。用户查询经嵌入模型转化为向量后,与数据库中商品/内容向量计算相似度,返回最相关的结果。支持混合检索(向量+全文+元数据过滤联合排序)。

    场景三:AI Agent 长期记忆

    为 AI Agent 提供跨会话的持久化记忆。将历史对话、用户偏好、工具调用记录存入 Chroma,Agent 每次运行时检索相关上下文注入 Prompt,实现”越用越懂你”的个性化体验。可与 Mem0、claude-mem 等记忆层搭配使用。

    💡 推荐理由

    Chroma 是目前最易上手的向量数据库,没有之一。pip install chromadb 后 3 行代码即可启动,不需要任何外部依赖或复杂配置。这对于想要快速验证 RAG 想法的开发者来说,是绝对的”第一步”首选。

    它的多模态搜索能力尤其值得称道——不再是单一的向量相似度搜索,而是可以混合稀疏向量(BM25)、稠密向量、全文和正则表达式,在一个查询里完成多路召回再重排序。这个设计让召回率比单纯向量搜索提升了不少,尤其在专业术语、产品编码等”精确匹配”场景。

    对象存储原生架构也是一个被低估的亮点。很多向量数据库把索引放内存,数据量大了成本直线上升。Chroma 把向量存 S3/GCS,热数据才进内存,存储成本直接降到 1/10。对于千万级向量规模的应用,这个差异就是”用得起”和”用不起”的分界线。

    最后,Chroma 的社区活跃度很高,27K+ Stars、15M+ 月下载量、9 万+ GitHub 仓库依赖,意味着你踩过的坑几乎一定有人踩过,Stack Overflow / Discord 上能找到现成答案。加上 LangChain、LlamaIndex 的官方集成,基本上”开箱即用”。

    📊 技术规格

    项目 详情
    GitHub chroma-core/chroma
    Stars 28,530
    最新版本 Python 1.5.9 / JS 3.4.5 / CLI 1.4.4
    开源许可 Apache-2.0
    主要语言 Python、Rust、Go、TypeScript
    月下载量 15,000,000+
    存储后端 S3 / GCS(对象存储原生)
    查询延迟(P50) 20ms(热缓存)/ 650ms(冷启动)
    集合上限 100 万 Collection / 500 万条记录
    搜索类型 向量 / 全文 / 正则 / 元数据 / 混合

    🚀 Chroma 让每个开发者都能在 5 分钟内拥有生产级向量搜索能力。
    无论是构建 RAG 知识库、语义搜索引擎,还是为 AI Agent 配备长期记忆,它都是最值得信赖的开源基石。

  • Chroma:43.1K Stars!开源向量数据库,让AI应用拥有长期记忆

    Chroma Banner

    开源向量数据库 · 让AI拥有长期记忆

    📦 项目简介

    Chroma 是专为AI应用打造的开源嵌入式向量数据库,让大模型拥有”长期记忆”。它通过简单的Python/JavaScript API,帮助你快速存储、查询和检索文本Embedding向量,是构建RAG(检索增强生成)应用的首选基础设施。

    🔗 GitHub:chroma-core/chroma ⭐ Stars:43.1K+ 📄 协议:Apache 2.0

    🔧 安装要求和过程

    环境要求

    依赖 要求
    Python ≥ 3.8(推荐 3.10+)
    内存 ≥ 4GB(生产环境建议 8GB+)
    存储 ≥ 1GB 可用空间
    可选后端 SQLite(默认)、DuckDB(分析场景)

    快速安装(3行代码搞定)

    pip install chromadb
    
    import chromadb
    client = chromadb.Client()  # 开箱即用!

    Docker 部署(生产推荐)

    docker run -d --name chroma \
      -p 8000:8000 \
      ghcr.io/chroma-core/chroma:latest

    部署后访问 http://localhost:8000 即可使用 HTTP API。

    🔩 核心功能

    功能 说明
    多模态向量搜索 支持文本、图像、音频的 Embedding 存储与相似度检索
    多客户端 SDK Python、JavaScript/TypeScript、REST API 全覆盖
    全文+向量混合搜索 结合关键词匹配与语义搜索,提升召回率
    内置 Embedding 函数 默认集成 Sentence Transformers,无需外部 API
    持久化存储 支持本地持久化、DuckDB 后端,数据不丢失

    💡 典型使用场景

    场景一:RAG(检索增强生成)应用

    将企业文档、知识库存入 Chroma,用户提问时先检索相关片段,再送给 LLM 生成答案。相比直接问 LLM,准确率提升 40%+,幻觉大幅减少。

    # RAG 核心代码(不到 20 行!)
    collection = client.create_collection("docs")
    collection.add(
        documents=["公司报销流程...", "年假申请..."],
        ids=["1", "2"]
    )
    results = collection.query(query_texts=["如何报销?"], n_results=1)
    # results 包含最相关的文档片段

    场景二:AI Agent 长期记忆

    让 AutoGPT、CrewAI 等 Agent 框架拥有跨会话记忆。将历史对话的 Embedding 存入 Chroma,下次对话时自动检索上下文,实现”越用越懂你”。

    场景三:语义推荐系统

    电商、内容平台的”猜你喜欢”,用 Chroma 存储商品/内容向量,用户行为向量实时检索最相似物品,推荐相关度远超协同过滤。

    🌟 推荐理由

    Chroma 是我见过最易上手的向量数据库,没有之一。不需要学 SQL,不需要配置复杂集群,pip install 之后 3 行代码就能跑起来。

    相比 Pinecone 等托管服务,Chroma 完全开源、可自托管,数据不出门,合规零风险。相比 Faiss,它提供了完整的 CRUD API 和持久化,不用每次重启都重新建索引。

    如果你正在做 RAG、AI 搜索、推荐系统,或者想给 Agent 加上记忆,Chroma 是目前开发体验最好的选择。LangChain、LlamaIndex、Supabase 都已官方集成,生态非常成熟。

    📥 下载地址

    渠道 链接 / 命令
    GitHub 仓库 github.com/chroma-core/chroma
    官网文档 docs.trychroma.com
    PyPI 安装 pip install chromadb
    npm 安装 npm install chromadb
    Docker 镜像 ghcr.io/chroma-core/chroma:latest

    — 开源项目第52期 | 夜野飞云 —

  • Chroma:43.1K Stars!开源向量数据库,让AI应用拥有长期记忆

    Chroma:43.1K Stars!开源向量数据库,让AI应用拥有长期记忆

    Chroma Banner

    开源向量数据库 · 让AI拥有长期记忆

    📦 项目简介

    Chroma 是专为AI应用打造的开源嵌入式向量数据库,让大模型拥有”长期记忆”。它通过简单的Python/JavaScript API,帮助你快速存储、查询和检索文本Embedding向量,是构建RAG(检索增强生成)应用的首选基础设施。

    🔗 GitHub:chroma-core/chroma ⭐ Stars:43.1K+ 📄 协议:Apache 2.0

    🔧 安装要求和过程

    环境要求

    依赖 要求
    Python ≥ 3.8(推荐 3.10+)
    内存 ≥ 4GB(生产环境建议 8GB+)
    存储 ≥ 1GB 可用空间
    可选后端 SQLite(默认)、DuckDB(分析场景)

    快速安装(3行代码搞定)

    pip install chromadb
    
    import chromadb
    client = chromadb.Client()  # 开箱即用!

    Docker 部署(生产推荐)

    docker run -d --name chroma \
      -p 8000:8000 \
      ghcr.io/chroma-core/chroma:latest

    部署后访问 http://localhost:8000 即可使用 HTTP API。

    🔩 核心功能

    功能 说明
    多模态向量搜索 支持文本、图像、音频的 Embedding 存储与相似度检索
    多客户端 SDK Python、JavaScript/TypeScript、REST API 全覆盖
    全文+向量混合搜索 结合关键词匹配与语义搜索,提升召回率
    内置 Embedding 函数 默认集成 Sentence Transformers,无需外部 API
    持久化存储 支持本地持久化、DuckDB 后端,数据不丢失

    💡 典型使用场景

    场景一:RAG(检索增强生成)应用

    将企业文档、知识库存入 Chroma,用户提问时先检索相关片段,再送给 LLM 生成答案。相比直接问 LLM,准确率提升 40%+,幻觉大幅减少。

    # RAG 核心代码(不到 20 行!)
    collection = client.create_collection("docs")
    collection.add(
        documents=["公司报销流程...", "年假申请..."],
        ids=["1", "2"]
    )
    results = collection.query(query_texts=["如何报销?"], n_results=1)
    # results 包含最相关的文档片段

    场景二:AI Agent 长期记忆

    让 AutoGPT、CrewAI 等 Agent 框架拥有跨会话记忆。将历史对话的 Embedding 存入 Chroma,下次对话时自动检索上下文,实现”越用越懂你”。

    场景三:语义推荐系统

    电商、内容平台的”猜你喜欢”,用 Chroma 存储商品/内容向量,用户行为向量实时检索最相似物品,推荐相关度远超协同过滤。

    🌟 推荐理由

    Chroma 是我见过最易上手的向量数据库,没有之一。不需要学 SQL,不需要配置复杂集群,pip install 之后 3 行代码就能跑起来。

    相比 Pinecone 等托管服务,Chroma 完全开源、可自托管,数据不出门,合规零风险。相比 Faiss,它提供了完整的 CRUD API 和持久化,不用每次重启都重新建索引。

    如果你正在做 RAG、AI 搜索、推荐系统,或者想给 Agent 加上记忆,Chroma 是目前开发体验最好的选择。LangChain、LlamaIndex、Supabase 都已官方集成,生态非常成熟。

    📥 下载地址

    渠道 链接 / 命令
    GitHub 仓库 github.com/chroma-core/chroma
    官网文档 docs.trychroma.com
    PyPI 安装 pip install chromadb
    npm 安装 npm install chromadb
    Docker 镜像 ghcr.io/chroma-core/chroma:latest

    — 开源项目第52期 | 夜野飞云 —

  • Chroma:28.2K Stars!AI 开源向量数据库,让语义搜索 5 行代码搞定

    Chroma:28.2K Stars!AI 开源向量数据库,让语义搜索 5 行代码搞定

    如果你正在构建 RAG 应用、智能客服、文档问答系统,你会发现一个核心难题:如何让 AI 从海量文本中快速找到最相关的内容?

    Chroma 向量数据库
    Chroma —— 面向 AI 的开源向量数据库

    📦 项目简介

    Chroma 是专为 AI 应用设计的开源向量数据库,定位为“AI 的搜索基础设施”。它让开发者能够以极简的 API 完成文档嵌入、向量存储、语义检索的全流程,是构建 RAG(检索增强生成)系统的首选工具之一。

    Chroma 的核心设计理念是简单优先:核心 API 只有 4 个函数,5 行代码即可完成文档入库和语义搜索。同时支持 Python 和 JavaScript 双语言客户端,并提供 Chroma Cloud 托管服务(注册即送 $5 免费额度,30 秒内完成数据库创建)。

    ⚙️ 安装要求与过程

    环境要求

    • Python:3.8+(推荐 3.9+)
    • Node.js:16+(使用 JavaScript 客户端时需要)
    • 内存:最低 2GB(内存模式);生产环境建议 4GB+
    • 存储:持久化模式需要磁盘空间存放向量索引

    快速安装(3 步搞定)

    # 第1步:安装 Chroma(Python)
    pip install chromadb
    
    # 第2步:启动 Chroma 服务(可选,也可直接用内存模式)
    # chroma run --path ./chroma_db
    
    # 第3步:写 5 行代码,完成第一个语义搜索!
    import chromadb
    client = chromadb.Client()
    collection = client.create_collection("my_docs")
    collection.add(documents=["你好世界", "Hello World"], ids=["id1", "id2"])
    results = collection.query(query_texts=["greeting"], n_results=1)
    print(results)

    JavaScript/TypeScript 用户:

    # JavaScript/TypeScript 安装
    npm install chromadb
    
    # 快速使用
    import { ChromaClient } from 'chromadb';
    const client = new ChromaClient();
    const collection = await client.createCollection({ name: "my_docs" });
    await collection.add({ ids: ["id1"], documents: ["Hello World"] });
    const results = await collection.query({ queryTexts: ["greeting"], nResults: 1 });
    console.log(results);

    💡 核心功能

    🎯 极简 API 设计
    核心 API 仅 4 个函数:创建集合、添加文档、查询搜索、管理集合。学习成本几乎为零,5 行代码即可完成语义搜索全流程。

    🔍 多模态搜索能力
    支持纯向量搜索、全文搜索、混合搜索(向量+关键词)三种模式。可根据场景灵活选择,搜索精度远超单一模式。

    🧠 自动嵌入处理
    添加文档时自动完成分词 → 向量嵌入 → 索引构建全流程,内置主流 Embedding 模型(Sentence Transformers 等),也支持自定义向量传入。

    🔧 灵活部署模式
    支持内存模式(快速原型)、持久化存储(生产环境)、客户端-服务端(多应用共享)、Chroma Cloud(完全托管,免运维)。

    🏷️ 多维度过滤
    支持基于元数据(metadata)的精确过滤,和基于文档内容的包含过滤。例如:只搜索”来源为官网”的文档,或只搜索”包含特定关键词”的段落。

    🌐 多语言客户端
    官方支持 Python 和 JavaScript/TypeScript 双语言客户端,API 设计一致。社区还提供了 Go、Java、Ruby 等语言客户端,覆盖主流开发生态。

    🚀 典型使用场景

    场景一:RAG 文档问答系统

    将企业知识库、产品文档、FAQ 等文本存入 Chroma,用户提问时通过语义搜索找到最相关的片段,再交给 LLM 生成回答。这是 Chroma 最经典的应用场景,也是目前大量 AI 应用的标准架构。

    # RAG 典型代码(简化版)
    import chromadb
    from sentence_transformers import SentenceTransformer
    
    # 1. 连接 Chroma
    client = chromadb.Client()
    collection = client.get_or_create_collection("company_docs")
    
    # 2. 文档切片入库(实际项目可用更高级的分片策略)
    docs = ["退款政策:7天内可申请...", "Shipping: 2-5 business days..."]
    collection.add(documents=docs, ids=["doc1", "doc2"])
    
    # 3. 用户提问 → 语义检索 → 交给 LLM
    query = "如何申请退款?"
    results = collection.query(query_texts=[query], n_results=3)
    # results['documents'] 即为最相关的文档片段,传给 LLM 生成回答

    场景二:AI 应用语义缓存

    对 LLM 的相似问题,直接返回缓存的答案,避免重复调用大模型,可降低 30-80% 的 API 成本。Chroma 的向量相似度搜索非常适合实现语义缓存——用户问”怎么退款”和”退款流程是什么”应该命中同一个缓存。

    场景三:内容推荐与去重

    新闻推荐、电商商品推荐、短视频去重等场景,都可以通过向量相似度来实现。Chroma 的轻量特性使其非常适合作为推荐系统的向量检索层,毫秒级返回相似内容。

    🌟 推荐理由

    我推荐 Chroma 的核心原因是它把”向量数据库”这个听起来很高大上的东西,做到了真正对开发者友好。以下是我的真实使用感受:

    第一,上手速度极快。对比 Pinecone、Weaviate、Qdrant 等竞品,Chroma 的学习曲线是最平缓的。核心 API 只有 4 个函数,README 中的示例代码复制到本地,5 分钟就能跑通第一个语义搜索。对于想快速验证 RAG 想法的开发者,这非常重要。

    第二,开源 + 零依赖启动。Chroma 采用 Apache 2.0 开源协议,可以免费用于商业项目。内存模式不需要安装任何外部依赖(不需要 Docker、不需要单独装数据库),pip install chromadb 之后直接就能用,对个人开发者和小型团队极其友好。

    第三,生产路径清晰。很多”易上手”的工具到了生产环境就掉链子,但 Chroma 提供了完整的升级路径:开发阶段用内存模式快速迭代 → 部署时用持久化模式 → 规模化后用 Chroma Cloud 或自托管 HTTP 服务。这个路径非常平滑,不需要重写代码。

    什么场景不适合 Chroma?如果你需要百亿级向量规模(如千万级文档),Chroma 目前的能力可能不如专用的分布式向量数据库(如 Milvus)。但对于99% 的 AI 应用开发者(百万级向量以下),Chroma 的性能和易用性是最优平衡。

    📥 下载地址

    🌐 官方网站
    trychroma.com

    🐙 GitHub 仓库
    github.com/chroma-core/chroma
    (28.2K+ Stars)

    📦 PyPI 安装
    pip install chromadb

    📦 npm 安装
    npm install chromadb

    ☁️ Chroma Cloud
    cloud.trychroma.com
    (注册送 $5 免费额度)

    📌 本文由 WorkBuddy AI 自动采集撰写,阅读原文请访问 GitHub 仓库。