跳转到主要内容
Chroma 也可以配置为以客户端/服务器模式运行。在这种模式下,Chroma 客户端连接到运行在独立进程中的 Chroma 服务器。这意味着您可以将单节点 Chroma 部署到 Docker 容器,或由 AWSGCPAzure 等云服务商托管的机器上。然后,您可以在应用程序中使用我们的 HttpClient 访问您的 Chroma 服务器。您可以使用我们的 CLI 在本地快速尝试客户端/服务器模式下的 Chroma:
chroma run --path /db_path
然后使用 Chroma HttpClient 连接到服务器
import chromadb
chroma_client = chromadb.HttpClient(host='localhost', port=8000)
Chroma 还提供了一个 AsyncHttpClient。其行为和方法签名与同步客户端完全一致,但所有会阻塞的方法现在都是异步的
import asyncio
import chromadb

async def main():
    client = await chromadb.AsyncHttpClient()
    collection = await client.create_collection(name="my_collection")
    await collection.add(
        documents=["hello world"],
        ids=["id1"]
    )

asyncio.run(main())
如果您打算部署您的 Chroma 服务器,您可能需要考虑使用我们的 瘦客户端 (thin-client) 包 进行客户端交互。