Chroma
Maven 依赖
<dependency>
<groupId>dev.langchain4j</groupId>
<artifactId>langchain4j-chroma</artifactId>
<version>1.18.1-beta28</version>
</dependency>
API
ChromaEmbeddingStore
示例
支持的 API 版本
Chroma 有多个 REST API 版本:
- 直到 0.5.16 版本:仅支持 API V1
- 0.5.16 到 0.6.3 版本:支持 API V1 和 V2(约在 0.6.2 引入的 V1 API 存在一些问题)
- 0.7.0 之后的版本:仅支持 API V2,因此在配置
ChromaEmbeddingStore时需要选择正确的版本:
ChromaEmbeddingStore.builder()
.apiVersion(ChromaApiVersion.V2)
.baseUrl(...)
.tenantName(...)
.databaseName(...)
.collectionName(...)
.build();
当前限制
- Chroma 不能对字母数字元数据使用大于和小于过滤,仅支持 int 和 float
- Chroma 的 not 过滤行为如下:如果按 "key" 不等于 "a" 过滤, 实际上会返回所有 "key" 值 != "a" 的项目,但不会返回没有 "key" 元数据的项目!