Astra vector store
AstraVector クラスは、Apache Cassandra を基盤とするクラウドネイティブなサーバーレスデータベース DataStax Astra DB を使用したベクトル検索を提供します。 エンタープライズレベルの容量と高可用性を備えたベクトル検索が可能です。
コンストラクターオプションコンストラクターオプションへの直接リンク
token:
string
Astra DB API トークン
endpoint:
string
Astra DB API エンドポイント
keyspace?:
string
省略可能なキースペース名
メソッドメソッドへの直接リンク
createIndex()createindexへの直接リンク
indexName:
string
作成するインデックスの名前
dimension:
number
ベクトルの次元数(埋め込みモデルと一致させる必要があります)
metric?:
'cosine' | 'euclidean' | 'dotproduct'
= cosine
類似度検索の距離指標(dotproduct は dot_product に対応します)
upsert()upsertへの直接リンク
indexName:
string
upsert 先のインデックス名
vectors:
number[][]
埋め込みベクトルの配列
metadata?:
Record<string, any>[]
各ベクトルのメタデータ
ids?:
string[]
省略可能なベクトル ID(未指定の場合は自動生成されます)
query()queryへの直接リンク
indexName:
string
クエリ対象のインデックス名
queryVector:
number[]
類似ベクトルを検索するためのクエリベクトル
topK?:
number
= 10
返す結果の数
filter?:
Record<string, any>
クエリのメタデータフィルター
includeVector?:
boolean
= false
結果にベクトルを含めるかどうか
listIndexes()listindexesへの直接リンク
インデックス名を文字列の配列として返します。
describeIndex()describeindexへの直接リンク
indexName:
string
詳細を取得するインデックスの名前
戻り値:
interface IndexStats {
dimension: number
count: number
metric: 'cosine' | 'euclidean' | 'dotproduct'
}
deleteIndex()deleteindexへの直接リンク
indexName:
string
削除するインデックスの名前
updateVector()updatevectorへの直接リンク
indexName:
string
ベクトルを含むインデックスの名前
id:
string
更新するベクトルの ID
update:
object
ベクトルやメタデータの変更を含む更新オブジェクト
number[]
Record<string, any>
deleteVector()deletevectorへの直接リンク
indexName:
string
ベクトルを含むインデックスの名前
id:
string
削除するベクトルの ID
レスポンス型レスポンス型への直接リンク
クエリ結果は次の形式で返されます。
interface QueryResult {
id: string
score: number
metadata: Record<string, any>
vector?: number[] // Only included if includeVector is true
}
エラー処理エラー処理への直接リンク
store は捕捉可能な型付きエラーをスローします。
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) // Additional error context
}
}
環境変数環境変数への直接リンク
必要な環境変数:
ASTRA_DB_TOKEN: Astra DB API トークンASTRA_DB_ENDPOINT: Astra DB API エンドポイント