Plug-in Pinecone

O plug-in Pinecone fornece implementações do indexador e de recuperação que usam o banco de dados de vetores da nuvem Pinecone.

Instalação

npm i --save genkitx-pinecone

Configuração

Para usar esse plug-in, especifique-o ao chamar configureGenkit():

import { pinecone } from 'genkitx-pinecone';

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

É necessário especificar um ID de índice do Pinecone e o modelo de incorporação que você quer usar.

Além disso, você precisa configurar o Genkit com sua chave de API do Pinecone. Há duas maneiras de fazer isso:

  • Defina a variável de ambiente PINECONE_API_KEY.

  • Especifique-a no parâmetro opcional clientParams:

    clientParams: {
      apiKey: ...,
    }
    

    O valor desse parâmetro é um objeto PineconeConfiguration, que é transmitido ao cliente Pinecone e pode ser usado para transmitir qualquer parâmetro aceito pelo cliente.

Uso

Importe referências de recuperador e indexador da seguinte maneira:

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

Em seguida, transmita as referências para retrieve() e 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 });

Consulte a página Geração aumentada de recuperação para ver uma discussão geral sobre indexadores e recuperados.