Skip to Content

Chroma Vector Store

ChromaVector クラスは、オープンソースの埋め込みデータベースである ChromaDB を使用したベクター検索を提供します。 メタデータフィルタリングとハイブリッド検索機能を備えた効率的なベクター検索を提供します。

コンストラクタオプション

path:

string
ChromaDBインスタンスへのURLパス

auth?:

object
認証設定

auth

provider:

string
認証プロバイダー

credentials:

string
認証資格情報

メソッド

createIndex()

indexName:

string
作成するインデックスの名前

dimension:

number
ベクトルの次元(埋め込みモデルに一致する必要があります)

metric?:

'cosine' | 'euclidean' | 'dotproduct'
= cosine
類似検索のための距離メトリック

upsert()

indexName:

string
アップサートするインデックスの名前

vectors:

number[][]
埋め込みベクトルの配列

metadata?:

Record<string, any>[]
各ベクトルのメタデータ

ids?:

string[]
オプションのベクトルID(提供されない場合は自動生成)

documents?:

string[]
Chroma固有: ベクトルに関連付けられた元のテキストドキュメント

query()

indexName:

string
クエリを実行するインデックスの名前

queryVector:

number[]
類似ベクトルを見つけるためのクエリベクトル

topK?:

number
= 10
返す結果の数

filter?:

Record<string, any>
クエリのメタデータフィルター

includeVector?:

boolean
= false
結果にベクトルを含めるかどうか

documentFilter?:

Record<string, any>
Chroma固有: ドキュメント内容に適用するフィルター

listIndexes()

文字列としてインデックス名の配列を返します。

describeIndex()

indexName:

string
説明するインデックスの名前

返される内容:

interface IndexStats { dimension: number; count: number; metric: "cosine" | "euclidean" | "dotproduct"; }

deleteIndex()

indexName:

string
削除するインデックスの名前

updateIndexById()

indexName:

string
更新するベクトルを含むインデックスの名前

id:

string
更新するベクトルのID

update:

object
更新パラメータ

update オブジェクトには以下を含めることができます:

vector?:

number[]
既存のものを置き換える新しいベクトル

metadata?:

Record<string, any>
既存のメタデータを置き換える新しいメタデータ

deleteIndexById()

indexName:

string
削除するベクトルを含むインデックスの名前

id:

string
削除するベクトルのID

応答タイプ

クエリ結果は次の形式で返されます:

interface QueryResult { id: string; score: number; metadata: Record<string, any>; document?: string; // Chroma-specific: Original document if it was stored vector?: number[]; // Only included if includeVector is true }

エラーハンドリング

ストアはキャッチ可能な型付きエラーをスローします:

try { await store.query({ indexName: "index_name", queryVector: queryVector, }); } catch (error) { if (error instanceof VectorStoreError) { console.log(error.code); // 'connection_failed' | 'invalid_dimension' | etc console.log(error.details); // 追加のエラーコンテキスト } }

関連