Renk eklentisi

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 Chroma ChromaClientParams 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.