メインコンテンツへ移動

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 エンドポイント