About aliyun-milvus-search
aliyun-milvus-search is a PyMilvus-based skill for connecting to AliCloud Milvus and running vector searches. It is intended for workflows that need configurable collection queries and bounded, reproducible operations.
Key features
- 01Connects through PyMilvus
- 02Runs vector searches
- 03Configures database and collection
- 04Supports limits and filters
- 05Records outputs and evidence
Use cases
- 01Searching vectors in an AliCloud Milvus collection
- 02Limiting retrieval by tenant or dataset
- 03Checking connectivity before an operation
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ cinience/ alicloud-skills --skill aliyun-milvus-searchAfter installing, type/aliyun-milvus-searchin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
agents/openai.yamlreferences/sources.mdscripts/quickstart.pyDetails
From the project READMECategory: provider
AliCloud Milvus (Serverless) via PyMilvus
This skill uses standard PyMilvus APIs to connect to AliCloud Milvus and run vector search.
Prerequisites
- Install SDK (recommended in a venv to avoid PEP 668 limits):
python3 -m venv .venv
. .venv/bin/activate
python -m pip install --upgrade pymilvus
- Provide connection via environment variables:
MILVUS_URI(e.g.http://<host>:19530)MILVUS_TOKEN(<username>:<password>)MILVUS_DB(default:default)
Quickstart (Python)
import os
from pymilvus import MilvusClient
client = MilvusClient(
uri=os.getenv("MILVUS_URI"),
token=os.getenv("MILVUS_TOKEN"),
db_name=os.getenv("MILVUS_DB", "default"),
)
# 1) Create a collection
client.create_collection(
collection_name="docs",
dimension=768,
)
# 2) Insert data
items = [
{"id": 1, "vector": [0.01] * 768, "source": "kb", "chunk": 0},
{"id": 2, "vector": [0.02] * 768, "source": "kb", "chunk": 1},
]
client.insert(collection_name="docs", data=items)
# 3) Search
query_vectors = [[0.01] * 768]
res = client.search(
collection_name="docs",
data=query_vectors,
limit=5,
filter='source == "kb" and chunk >= 0',
output_fields=["source", "chunk"],
)
print(res)
Script quickstart
python skills/ai/search/aliyun-milvus-search/scripts/quickstart.py
Environment variables:
MILVUS_URIMILVUS_TOKENMILVUS_DB(optional)MILVUS_COLLECTION(optional)MILVUS_DIMENSION(optional)
Optional args: --collection, --dimension, --limit, --filter.
Notes for Claude Code/Codex
- Insert is async; wait a few seconds before searching newly inserted data.
- Keep vector
dimensionaligned with your embedding model. - Use filters to enforce tenant scoping or dataset partitions.
Error handling
- Auth errors: check
MILVUS_TOKENand instance permissions. - Dimension mismatch: ensure all vectors match collection dimension.
- Network errors: verify VPC/public access settings on the instance.
Validation
mkdir -p output/aliyun-milvus-search
for f in skills/ai/search/aliyun-milvus-search/scripts/*.py; do
python3 -m py_compile "$f"
done
echo "py_compile_ok" > output/aliyun-milvus-search/validate.txt
Pass criteria: command exits 0 and output/aliyun-milvus-search/validate.txt is generated.
Output And Evidence
- Save artifacts, command outputs, and API response summaries under
output/aliyun-milvus-search/. - Include key parameters (region/resource id/time range) in evidence files for reproducibility.
Workflow
- Confirm user intent, region, identifiers, and whether the operation is read-only or mutating.
- Run one minimal read-only query first to verify connectivity and permissions.
- Execute the target operation with explicit parameters and bounded scope.
- Verify results and save output/evidence files.
References
-
PyMilvus
MilvusClientexamples for AliCloud Milvus -
Source list:
references/sources.md