Плагин цветности

Плагин Chroma предоставляет реализации индексатора и средства извлечения, которые используют базу данных векторов Chroma в режиме клиент/сервер.

Установка

npm i --save genkitx-chromadb

Конфигурация

Чтобы использовать этот плагин, укажите его при инициализации Genkit:

import { genkit } from 'genkit';
import { chroma } from 'genkitx-chromadb';

const ai = genkit({
  plugins: [
    chroma([
      {
        collectionName: 'bob_collection',
        embedder: textEmbedding004,
      },
    ]),
  ],
});

Вы должны указать коллекцию Chroma и модель внедрения, которую вы хотите использовать. Кроме того, есть два необязательных параметра:

  • clientParams : если вы не используете сервер Chroma на том же компьютере, что и поток Genkit, вам необходимо указать параметры аутентификации или по другим причинам вы не используете конфигурацию сервера Chroma по умолчанию, вы можете указать ChromaClientParams object для передачи клиент Chroma:

    clientParams: {
      path: "http://192.168.10.42:8000",
    }
    
  • embedderOptions : используйте этот параметр для передачи параметров средству внедрения:

    embedderOptions: { taskType: 'RETRIEVAL_DOCUMENT' },
    

Использование

Импортируйте ссылки на ретривер и индексатор следующим образом:

import { chromaRetrieverRef } from 'genkitx-chromadb';
import { chromaIndexerRef } from 'genkitx-chromadb';

Затем используйте ссылки с помощью ai.retrieve() и ai.index() :

// To use the index you configured when you loaded the plugin:
let docs = await ai.retrieve({ retriever: chromaRetrieverRef, query });

// To specify an index:
export const bobFactsRetriever = chromaRetrieverRef({
  collectionName: 'bob-facts',
});
docs = await ai.retrieve({ retriever: bobFactsRetriever, query });
// To use the index you configured when you loaded the plugin:
await ai.index({ indexer: chromaIndexerRef, documents });

// To specify an index:
export const bobFactsIndexer = chromaIndexerRef({
  collectionName: 'bob-facts',
});
await ai.index({ indexer: bobFactsIndexer, documents });

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