Chroma eklentisi, istemci/sunucu modunda Chroma vektör veritabanını kullanan dizinleyici ve retriever uygulamaları sağlar.
Kurulum
npm i --save genkitx-chromadb
Yapılandırma
Bu eklentiyi kullanmak için, configureGenkit()
çağırırken eklentiyi belirtin:
import { chroma } from 'genkitx-chromadb';
export default configureGenkit({
plugins: [
chroma([
{
collectionName: 'bob_collection',
embedder: textEmbeddingGecko,
},
]),
],
// ...
});
Bir renk koleksiyonunu ve kullanmak istediğiniz yerleştirme modelini belirtmeniz gerekir. Ek olarak, isteğe bağlı iki parametre vardır:
clientParams
: Renk sunucunuzu Genkit akışınızla aynı makinede çalıştırmıyorsanız kimlik doğrulama seçeneklerini belirtmeniz gerekir. Başka bir şekilde, varsayılan bir Chrome sunucusu yapılandırması çalıştırmıyorsanız Chroma istemcisine geçirmek için bir ChromaChromaClientParams
nesnesi belirtebilirsiniz:clientParams: { path: "http://192.168.10.42:8000", }
embedderOptions
: Seçenekleri yerleştirene iletmek için şu parametreyi kullanın:embedderOptions: { taskType: 'RETRIEVAL_DOCUMENT' },
Kullanım
Aşağıdaki gibi alıcı ve dizinleyici referanslarını içe aktarın:
import { chromaRetrieverRef } from 'genkitx-chromadb';
import { chromaIndexerRef } from 'genkitx-chromadb';
Ardından, referansları retrieve()
ve index()
için iletin:
// 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 });
Dizine ekleyenler ve toplayıcılar hakkında genel bir konuşma için Alma ile zenginleştirilmiş oluşturma sayfasına bakın.