Pinecone 外掛程式

Pinecone 外掛程式提供索引器和擷取器實作項目,這些項目會使用 Pinecone 雲端向量資料庫。

安裝

npm i --save genkitx-pinecone

設定

如要使用這個外掛程式,請在初始化 Genkit 時指定它:

import { genkit } from 'genkit';
import { pinecone } from 'genkitx-pinecone';

const ai = genkit({
  plugins: [
    pinecone([
      {
        indexId: 'bob-facts',
        embedder: textEmbedding004,
      },
    ]),
  ],
});

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

此外,您必須使用 Pinecone API 金鑰設定 Genkit。您可以透過兩種方式進行這項操作:

  • 設定 PINECONE_API_KEY 環境變數。
  • 請在 clientParams 選用參數中指定:

    clientParams: {
      apiKey: ...,
    }
    

    這個參數的值是 PineconeConfiguration 物件,會傳遞至 Pinecone 用戶端;您可以使用該物件傳遞用戶端支援的任何參數。

用量

匯入擷取器和索引器參照,如下所示:

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

然後將這些參照項目與 ai.retrieve()ai.index() 搭配使用:

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

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

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

如要進一步瞭解索引器和擷取器,請參閱「擷取輔助產生」頁面。