Wtyczka Chroma

Wtyczka Chroma udostępnia implementacje indeksujące i retrievery, które korzystają z bazy danych wektorów Chroma w trybie klient/serwer.

Instalacja

npm i --save genkitx-chromadb

Konfiguracja

Aby użyć tej wtyczki, podaj ją podczas wywoływania funkcji configureGenkit():

import { chroma } from 'genkitx-chromadb';

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

Musisz określić kolekcję Chroma i model umieszczania, którego chcesz użyć. Dodatkowo dostępne są 2 opcjonalne parametry:

  • clientParams: jeśli nie używasz serwera Chroma na tym samym komputerze co proces Genkit, musisz określić opcje uwierzytelniania. W przeciwnym razie nie korzystasz z domyślnej konfiguracji serwera Chroma, możesz określić obiekt Chroma ChromaClientParams, który zostanie przekazany do klienta Chroma:

    clientParams: {
      path: "http://192.168.10.42:8000",
    }
    
  • embedderOptions: użyj tego parametru, aby przekazać opcje do mechanizmu umieszczania:

    embedderOptions: { taskType: 'RETRIEVAL_DOCUMENT' },
    

Wykorzystanie

Zaimportuj odwołania do modułu pobierania i indeksowania, takie jak:

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

Następnie przekaż odwołania do funkcji retrieve() i 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 });

Ogólne informacje na temat indeksatorów i modułów pobierania znajdziesz na stronie generowania rozszerzonego przez wyszukiwanie.