スキルOfficialdatabase
🔍vector
- プラグイン
- zilliz
- ソース
- GitHub で見る ↗
説明
次のような場合に使用: ユーザーがMilvusコレクション内のベクターを検索、クエリ、挿入、アップサート、取得、または削除したいとき。
原文を表示
Use when the user wants to search, query, insert, upsert, get, or delete vectors in a Milvus collection.
ユースケース
- ✓ベクターを検索するとき
- ✓ベクターをクエリするとき
- ✓ベクターを挿入するとき
- ✓ベクターをアップサートするとき
- ✓ベクターを取得するとき
- ✓ベクターを削除するとき
本文(日本語訳)
前提条件
- CLIがインストール済みでログイン状態、かつクラスターコンテキストが設定済みであること(setupスキル参照)。
- 対象コレクションが存在し、ロード済みであること(collectionスキル参照)。
コマンドリファレンス
すべてのvectorコマンドは、デフォルト以外のデータベースを指定するためのオプションフラグ --database <db-name> を受け付けます。
省略した場合は、現在のコンテキストに設定されたデータベースが使用されます。
ベクターの挿入
zilliz vector insert --collection <collection-name> --data '[{"id": 1, "vector": [0.1, 0.2, ...], "text": "hello"}]'
# オプション: --database <database-name>
# または生のJSONを使用: --body '{...}'
ベクターのUpsert
zilliz vector upsert --collection <collection-name> --data '[{"id": 1, "vector": [0.1, 0.2, ...], "text": "hello"}]'
# オプション: --partition <partition-name>, --database <database-name>
# または生のJSONを使用: --body '{...}'
ベクター検索
zilliz vector search --collection <collection-name> --data '[[0.1, 0.2, 0.3, ...]]'
# オプション:
# --anns-field <検索対象のベクターフィールド>
# --limit <返却する最大件数>
# --filter <スカラーフィルター式>
# --output-fields '["field1", "field2"]'
# --database <database-name>
ハイブリッド検索
zilliz vector hybrid-search \
--collection <collection-name> \
--search '[{"data": [[0.1, ...]], "annsField": "dense_vector", "limit": 10}, {"data": [["search text"]], "annsField": "sparse_vector", "limit": 10}]' \
--rerank '{"strategy": "rrf", "params": {"k": 60}}'
# オプション:
# --limit <返却する最大件数>
# --output-fields '["field1", "field2"]'
# --database <database-name>
# または生のJSONを使用: --body '{...}'
フィルターによるクエリ
zilliz vector query --collection <collection-name> --filter <スカラーフィルター式>
# オプション:
# --limit <返却する最大件数>
# --output-fields '["field1", "field2"]'
# --database <database-name>
IDによる取得
zilliz vector get --collection <collection-name> --id '[1, 2, 3]'
# オプション: --output-fields '["field1", "field2"]', --database <database-name>
ベクターの削除
zilliz vector delete --collection <collection-name> --filter <filter>
# オプション: --partition <partition-name>, --database <database-name>
フィルター式の構文
よく使われるフィルターパターン:
| 式 | 例 |
|---|---|
| 比較 | age > 20 |
| 等値 | status == "active" |
| INリスト | id in [1, 2, 3] |
| AND/OR | age > 20 and status == "active" |
| 文字列マッチ | text like "hello%" |
| 配列の包含 | tags array_contains "ml" |
利用ガイダンス
--dataパラメーターはベクターのJSON配列を受け付けます。各ベクターは浮動小数点数の配列です。- 検索を実行する前に、
zilliz collection describeでコレクションスキーマを確認し、フィールド名およびベクターの次元数を把握してください。 - 検索・クエリ操作を行う前に、コレクションがロードされている必要があります。
- 検索時、
--dataに指定する値はコレクションのベクター次元数と完全に一致している必要があります。 - コレクションに複数のベクターフィールドが存在する場合は、
--anns-fieldで検索対象のベクターフィールドを指定してください。 - ユーザーがテキストクエリを指定してセマンティック検索を行いたい場合は、
--dataに渡す前にエンベディングモデルを使ってテキストをベクターに変換する必要があることを説明してください。 - 大量データの挿入を行う場合は、まずデータをJSONファイルに書き出してから
zilliz vector insert --collection <name> --data "$(cat data.json)"を使用することを推奨します。 - ユーザーが結果に特定のフィールドを含めたい場合は、必ず
--output-fieldsを指定してください。 - 複雑なハイブリッド検索の設定には
--bodyを使用することもできます。
原文(English)を表示
Prerequisites
- CLI installed, logged in, and cluster context set (see setup skill).
- Target collection must exist and be loaded (see collection skill).
Commands Reference
All vector commands accept an optional --database <db-name> flag to target a non-default database. If omitted, the database from the current context is used.
Insert Vectors
zilliz vector insert --collection <collection-name> --data '[{"id": 1, "vector": [0.1, 0.2, ...], "text": "hello"}]'
# Optional: --database <database-name>
# Or use raw JSON: --body '{...}'
Upsert Vectors
zilliz vector upsert --collection <collection-name> --data '[{"id": 1, "vector": [0.1, 0.2, ...], "text": "hello"}]'
# Optional: --partition <partition-name>, --database <database-name>
# Or use raw JSON: --body '{...}'
Vector Search
zilliz vector search --collection <collection-name> --data '[[0.1, 0.2, 0.3, ...]]'
# Optional:
# --anns-field <vector-field-to-search-on>
# --limit <max-results-to-return>
# --filter <scalar-filter-expression>
# --output-fields '["field1", "field2"]'
# --database <database-name>
Hybrid Search
zilliz vector hybrid-search \
--collection <collection-name> \
--search '[{"data": [[0.1, ...]], "annsField": "dense_vector", "limit": 10}, {"data": [["search text"]], "annsField": "sparse_vector", "limit": 10}]' \
--rerank '{"strategy": "rrf", "params": {"k": 60}}'
# Optional:
# --limit <max-results-to-return>
# --output-fields '["field1", "field2"]'
# --database <database-name>
# Or use raw JSON: --body '{...}'
Query by Filter
zilliz vector query --collection <collection-name> --filter <scalar-filter-expression>
# Optional:
# --limit <max-results-to-return>
# --output-fields '["field1", "field2"]'
# --database <database-name>
Get by ID
zilliz vector get --collection <collection-name> --id '[1, 2, 3]'
# Optional: --output-fields '["field1", "field2"]', --database <database-name>
Delete a Vector
zilliz vector delete --collection <collection-name> --filter <filter>
# Optional: --partition <partition-name>, --database <database-name>
Filter Expression Syntax
Common filter patterns:
| Expression | Example |
|---|---|
| Comparison | age > 20 |
| Equality | status == "active" |
| IN list | id in [1, 2, 3] |
| AND/OR | age > 20 and status == "active" |
| String match | text like "hello%" |
| Array contains | tags array_contains "ml" |
Guidance
- The
--dataparameter accepts a JSON array of vectors. Each vector is an array of floats. - Before searching, inspect the collection schema with
zilliz collection describeto understand field names and vector dimensions. - The collection must be loaded before search/query operations.
- For search, the
--datavalue must match the collection's vector dimension exactly. - Use
--anns-fieldto specify which vector field to search on when the collection has multiple vector fields. - When the user provides a text query and wants semantic search, explain that they need to convert text to vectors first (using an embedding model) before passing to
--data. - For large insert operations, suggest writing data to a JSON file first, then using
zilliz vector insert --collection <name> --data "$(cat data.json)". - Always show
--output-fieldswhen the user wants specific fields in results. - Or use
--bodyfor complex hybrid search configurations.
原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。