Wtyczka Pinecone

Wtyczka Pinecone udostępnia implementacje indeksatora i wyszukiwarki, które korzystają z bazy danych wektorów w chmurze Pinecone.

Instalacja

npm i --save genkitx-pinecone

Konfiguracja

Aby użyć tej wtyczki, określ ją podczas inicjowania Genkit:

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

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

Musisz podać identyfikator indeksu Pinecone i model umieszczania, którego chcesz użyć.

Musisz też skonfigurować Genkit za pomocą klucza API Pinecone. Możesz to zrobić na 2 sposoby:

  • Ustaw zmienną środowiskową PINECONE_API_KEY.
  • Określ je w parametrze opcjonalnym clientParams:

    clientParams: {
      apiKey: ...,
    }
    

    Wartością tego parametru jest obiekt PineconeConfiguration, który jest przekazywany do klienta Pinecone. Możesz go użyć do przekazania dowolnego parametru obsługiwanego przez klienta.

Wykorzystanie

Zaimportuj odwołania do pobierania i indeksowania w ten sposób:

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

Następnie użyj tych odwołań z 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 });

Aby dowiedzieć się więcej o indeksowaniu i wyszukiwaniu, zapoznaj się ze stroną generowanie z wykorzystaniem wyszukiwania.