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

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

Установка

npm i --save genkitx-chromadb

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

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

import { chroma } from 'genkitx-chromadb';

export default configureGenkit({
  plugins: [
    chroma([
      {
        collectionName: 'bob_collection',
        embedder: textEmbeddingGecko,
      },
    ]),
  ],
  // ...
});

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

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

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

    embedderOptions: { taskType: 'RETRIEVAL_DOCUMENT' },
    

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

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

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

Затем передайте ссылки на retrieve() и index() :

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

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

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

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