Plugin Pinecone menyediakan implementasi pengindeksan dan pengambilan yang menggunakan database vektor cloud Pinecone.
Penginstalan
npm i --save genkitx-pinecone
Konfigurasi
Untuk menggunakan plugin ini, tentukan saat Anda menginisialisasi Genkit:
import { genkit } from 'genkit';
import { pinecone } from 'genkitx-pinecone';
const ai = genkit({
plugins: [
pinecone([
{
indexId: 'bob-facts',
embedder: textEmbedding004,
},
]),
],
});
Anda harus menentukan ID indeks Pinecone dan model penyematan yang ingin Anda gunakan.
Selain itu, Anda harus mengonfigurasi Genkit dengan kunci API Pinecone Anda. Ada dua cara untuk melakukannya:
- Menetapkan variabel lingkungan
PINECONE_API_KEY
. Tentukan di parameter opsional
clientParams
:clientParams: { apiKey: ..., }
Nilai parameter ini adalah objek
PineconeConfiguration
, yang diteruskan ke klien Pinecone; Anda dapat menggunakannya untuk meneruskan parameter apa pun yang didukung klien.
Penggunaan
Impor referensi retriever dan pengindeksan seperti ini:
import { pineconeRetrieverRef } from 'genkitx-pinecone';
import { pineconeIndexerRef } from 'genkitx-pinecone';
Kemudian, gunakan referensi ini dengan ai.retrieve()
dan 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 });
Lihat halaman Retrieval-augmented generation untuk mengetahui diskusi umum tentang indexer dan retriever.