跳转到主要内容
有多种方法可以实例化客户端以连接到您的 Chroma 数据库。

云客户端

您可以使用 CloudClient 创建一个连接到 Chroma Cloud 的客户端。
import chromadb

client = chromadb.CloudClient(
    tenant='Tenant ID',
    database='Database name',
    api_key='Chroma Cloud API key'
)
CloudClient 仅需 API 密钥参数即可实例化。在这种情况下,我们将从 Chroma Cloud 解析租户(tenant)和数据库(DB)。请注意,只有当提供的 API 密钥作用域仅限单个数据库时,我们的自动解析才会生效。 如果您设置了 CHROMA_API_KEYCHROMA_TENANTCHROMA_DATABASE 环境变量,则只需实例化不带参数的 CloudClient
client = chromadb.CloudClient()

内存客户端

在 Python 中,您可以运行内存中的 Chroma 服务器,并使用临时客户端进行连接
import chromadb

client = chromadb.Client()
Client() 方法会启动一个内存中的 Chroma 服务器,并返回一个可用于连接的客户端。 这在 Python 笔记本中实验不同的嵌入函数和检索技术时非常有用。如果您不需要数据持久化,临时客户端是快速启动 Chroma 的理想选择。

持久化客户端

您可以使用 PersistentClient 配置 Chroma,使其从本地机器保存和加载数据库。数据将自动持久化,并在启动时加载(如果存在)。
import chromadb

client = chromadb.PersistentClient(path="/path/to/save/to")
path 是 Chroma 在磁盘上存储数据库文件以及启动时加载文件的位置。如果您未提供路径,默认值为 .chroma客户端对象包含一些有用的便捷方法。
  • heartbeat() - 返回一个纳秒级的心跳。用于确保客户端保持连接状态。
  • reset() - 清空并完全重置数据库。警告:此操作具有破坏性且不可逆。
client.heartbeat()
client.reset()