<< All versions
Skill v1.0.0
currentLLM-judged scan90/100gutsofpratik/horizon-skills/source-46b99c230a34a7218768eaab
──Details
PublishedOctober 24, 2026 at 03:28 AM
Content Hashsha256:f530379e62d1858e...
Git SHAd796bed40371
──Files
Files (1 file, 3.6 KB)
SKILL.md3.6 KBactive
SKILL.md · 106 lines · 3.6 KB
version: "1.0.0" name: vector description: Use when the user wants to search, query, insert, upsert, get, or delete vectors in a Milvus collection.
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
bash
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
bash
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
bash
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
bash
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
bash
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
bash
zilliz vector get --collection <collection-name> --id '[1, 2, 3]'# Optional: --output-fields '["field1", "field2"]', --database <database-name>
Delete a Vector
bash
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.