Wtyczka Chroma udostępnia implementacje indeksujące i retrievera, które korzystają z Wektorowa baza danych Chroma w trybie klienta/serwera.
Instalacja
npm i --save genkitx-chromadb
Konfiguracja
Aby używać tej wtyczki, określ ją, gdy wywołujesz configureGenkit()
:
import { chroma } from 'genkitx-chromadb';
export default configureGenkit({
plugins: [
chroma([
{
collectionName: 'bob_collection',
embedder: textEmbeddingGecko,
},
]),
],
// ...
});
Musisz wybrać kolekcję Chroma i model osadzania, którego chcesz użyć. W dodatkowo dostępne są 2 opcjonalne parametry:
clientParams
: jeśli nie uruchamiasz serwera Chroma na tym samym komputerze w Genkit musisz określić opcje uwierzytelniania. W przeciwnym razie jeśli masz uruchomioną domyślną konfigurację serwera Chroma, możesz określić,ChromaClientParams
obiekt do klienta Chroma:clientParams: { path: "http://192.168.10.42:8000", }
embedderOptions
– użyj tego parametru, aby przekazać opcje do umieszczania na stronie:embedderOptions: { taskType: 'RETRIEVAL_DOCUMENT' },
Wykorzystanie
Importuj odwołania do pobierania i indeksowania w ten sposób:
import { chromaRetrieverRef } from 'genkitx-chromadb';
import { chromaIndexerRef } from 'genkitx-chromadb';
Następnie przekaż odwołania do elementów 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 znajdziesz na stronie Generowanie rozszerzonego przez wyszukiwanie. na temat tych programów.