一、CROMA.io 简介
CROMA.io 是一个开源的 AI 原生向量数据库,它内置了所有你需要开始使用的功能,并且可以在你的机器上运行,其托管版本目前处于早期访问阶段。它类似于 DuckDB,但专注于嵌入式数据的存储和检索,能够帮助开发者轻松构建智能应用。
二、使用入口及获取方式
三、近期产品功能更新及应用场景(2025 年 2 月)
CROMA.io 推出了新的实验性 API,允许用户以批处理模式向其集合添加大量文档。这意味着用户可以一次性添加更多文档,而不需要逐个添加每个文档,从而节省了大量时间。在应用场景方面,CROMA.io 可用于构建智能问答系统、文本检索工具、知识库查询系统等,帮助用户快速获取与查询文本语义相似的文档或信息。
四、使用方法与详细步骤
- 电脑端 :
- 安装 :根据使用的编程语言,选择相应的方式进行安装。以 Python 为例,运行
pip install chromadb
命令完成安装。
- 创建客户端 :导入 ChromaClient 并创建客户端实例,如
client = chromadb.Client()
。
- 创建集合 :使用客户端创建集合,可指定集合名称及嵌入函数等,例如
collection = client.create_collection(name="my_collection")
。
- 添加文档 :向集合中添加文本文档,可以一次性添加多条文档,如
collection.add(documents=["document1", "document2"], ids=["id1", "id2"])
。
- 查询集合 :使用查询文本查询集合,获取与查询文本最相似的结果,例如
results = collection.query(query_texts=["query_text"], n_results=5)
。
- 检查结果 :查看查询返回的结果,包括最相似的文档及其相关性分数等。
- 手机端 :目前 CROMA.io 主要通过编程接口使用,暂无专门的手机端应用。若要在手机上使用,可借助支持 Python 或 JavaScript 开发的手机编程环境,如 Pythonista(iOS)等,通过编写代码来调用 CROMA.io 的 API 进行操作。
五、近 6 个月的详细更新内容
- 2025 年 2 月 :推出新的实验性 API,允许用户以批处理模式向集合添加大量文档,可显著节省时间。
- 2025 年 1 月 :改进了集合创建过程中的嵌入函数选择机制,使其更加灵活和高效。
- 2024 年 12 月 :对查询性能进行了优化,提高了大规模数据集下的查询速度和准确性。
- 2024 年 11 月 :增加了对更多嵌入模型的支持,为用户提供了更多选择。
- 2024 年 10 月 :修复了一些已知的 bug,提升了系统的稳定性和可靠性。
六、使用技巧
- 灵活选择嵌入模型 :CROMA.io 支持多种嵌入模型,用户可以根据实际需求和计算资源选择合适的模型,如
all-MiniLM-L6-v2
等,以获得最佳的嵌入效果和性能。
- 合理设置查询参数 :在查询集合时,可以通过调整
n_results
(返回结果数量)、where
(过滤条件)等参数,精确控制查询结果的范围和数量,提高查询的准确性和效率。
- 批量操作提升效率 :利用新推出的批处理 API,一次性添加大量文档,减少操作次数,提高数据处理效率。
七、常见问题解决方法
- 登录问题 :如果在登录 CROMA.io 时遇到问题,如账号无法登录,可先检查网络连接是否正常,确保输入的账号和密码正确。若问题仍未解决,可前往官方社区或支持页面寻求帮助。
- 使用问题 :在使用过程中,若遇到无法创建集合、添加文档失败等问题,可参考官方文档中的错误提示和解决方案,或在 Discord 社区提问,获取其他用户或开发者的帮助。
八、CROMA.io vs 竞品对比分析
与一些传统的数据库相比,CROMA.io 专注于向量数据的存储和检索,更适合处理嵌入式数据和语义搜索任务。在性能方面,CROMA.io 对查询性能进行了优化,能够快速处理大规模数据集,具有较高的查询效率。其开源的特性使得用户可以自由定制和扩展,且社区活跃,开发者可以得到及时的支持和帮助。
九、普通用户关心问题
- 收费情况 :CROMA.io 开源版本是免费的,但托管版本目前处于早期访问阶段,其定价策略和收费模式可能因具体服务和功能而有所不同,用户可根据自身需求选择合适的版本。
- 安全性 :作为开源项目,CROMA.io 的安全性在一定程度上取决于社区的维护和更新。其本身提供了一些安全相关的配置选项,用户可以根据需要进行设置,以保障数据的安全性。
- 可靠性 :CROMA.io 在不断的更新和优化过程中,其稳定性和可靠性得到了逐步提升。然而,由于开源项目的特性,用户在使用过程中可能会遇到一些未知的问题,但活跃的社区可以为用户提供了一定的技术支持和解决方案。
十、CROMA.io 的主要功能特点
- 开源免费 :CROMA.io 是开源项目,用户可以免费使用、修改和分发其代码,降低了开发成本。
- 本地运行与部署灵活 :既可以运行在本地机器上,又可以轻松部署到服务器或云平台,如 AWS 等,方便用户根据实际需求进行选择。
- 易于使用的 API :提供了简单易用的 Python 和 JavaScript API,方便开发者快速上手和集成到自己的应用中。
- 内置嵌入函数 :如果用户未提供嵌入函数,CROMA.io 会默认使用句子转换器等内置嵌入模型,自动生成向量,简化了开发流程。
- 高效的查询性能 :针对向量数据的查询进行了优化,能够快速返回与查询文本最相似的结果,适用于多种需要快速检索相似信息的应用场景。
参考文章或数据来源
- https://www.cnblogs.com/wanghengbin/p/18092896
- https://www.aidoczh.com/chroma/getting-started/
- https://www.cnblogs.com/code-daily/p/18826233