پلاگین Pinecon

پلاگین 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 و مدل تعبیه‌ای را که می‌خواهید استفاده کنید مشخص کنید.

علاوه بر این، باید Genkit را با کلید Pinecone API خود پیکربندی کنید. دو راه برای این کار وجود دارد:

  • متغیر محیطی 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 });

برای بحث کلی در مورد نمایه سازها و رتریورها به صفحه نسل افزوده شده بازیابی مراجعه کنید.