我使用Firebase作为我的数据存储。我的Firestore数据结构中,父集合(“organizations”)中的文档包含一个子集合(“rags”),该子集合存储文本块及其对应的向量嵌入。
我想创建一个检索器,能够高效地从特定组织的“rags”子集合中获取最相关的文档。
以下是我当前代码的简化版本:
const retrieverConfig = defineFirestoreRetriever({ name: 'retriever', firestore: firestore, collection: 'organizations', ...options, embedder: textEmbeddingGecko })
这不会从子集合中检索向量,因为它只查看父集合‘organizations’。
我如何创建一个自定义检索器来查询子集合?
回答:
您可能可以使用与Firestore SDK(在任何客户端平台上)相同的方式来定位子集合,只需提供到子集合的分隔路径即可:
collection: 'organizations/DOCID/SUBCOLLECTION'
其中DOCID是organizations集合中唯一的文档ID,SUBCOLLECTION是该文档下嵌套的子集合名称。