Плагин сосновая шишка

Плагин 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,
      },
    ]),
  ],
});

Вы должны указать идентификатор индекса шишки и модель внедрения, которую вы хотите использовать.

Кроме того, вы должны настроить Genkit с помощью ключа API Pinecone. Есть два способа сделать это:

  • Установите переменную среды 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 });

См. страницу генерации с расширенным поиском для общего обсуждения индексаторов и ретриверов.