Pinecone 插件

Pinecone 插件提供使用 Pinecone 云矢量数据库的索引器和检索器实现。

安装

npm i --save genkitx-pinecone

配置

如需使用此插件,请在调用 configureGenkit() 时指定该插件:

import { pinecone } from 'genkitx-pinecone';

export default configureGenkit({
  plugins: [
    pinecone([
      {
        indexId: 'bob-facts',
        embedder: textEmbeddingGecko,
      },
    ]),
  ],
  // ...
});

您必须指定 Pinecone 索引 ID 和要使用的嵌入模型。

此外,您还必须使用 Pinecone API 密钥配置 Genkit。您可以采用下列两种方法:

  • 设置 PINECONE_API_KEY 环境变量。

  • clientParams 可选参数中指定该值:

    clientParams: {
      apiKey: ...,
    }
    

    此参数的值是一个 PineconeConfiguration 对象,该对象会被传递给 Pinecone 客户端;您可以使用它来传递客户端支持的任何参数。

用量

按如下所示导入检索器和索引器引用:

import { pineconeRetrieverRef } from 'genkitx-pinecone';
import { pineconeIndexerRef } from 'genkitx-pinecone';

然后,将引用传递给 retrieve()index()

// To use the index you configured when you loaded the plugin:
let docs = await retrieve({ retriever: pineconeRetrieverRef, query });

// To specify an index:
export const bobFactsRetriever = pineconeRetrieverRef({
  indexId: 'bob-facts',
});
docs = await retrieve({ retriever: bobFactsRetriever, query });
// To use the index you configured when you loaded the plugin:
await index({ indexer: pineconeIndexerRef, documents });

// To specify an index:
export const bobFactsIndexer = pineconeIndexerRef({
  indexId: 'bob-facts',
});
await index({ indexer: bobFactsIndexer, documents });

请参阅检索增强的生成页面,查看有关索引器和检索器的一般性讨论。