alicloud-ai-search-milvus
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseCategory: provider
分类:服务商
AliCloud Milvus (Serverless) via PyMilvus
通过PyMilvus使用阿里云Milvus(Serverless)
This skill uses standard PyMilvus APIs to connect to AliCloud Milvus and run vector search.
本技能使用标准PyMilvus API连接阿里云Milvus并执行向量检索。
Prerequisites
前置条件
- Install SDK (recommended in a venv to avoid PEP 668 limits):
bash
python3 -m venv .venv
. .venv/bin/activate
python -m pip install --upgrade pymilvus- Provide connection via environment variables:
- (e.g.
MILVUS_URI)http://<host>:19530 - (
MILVUS_TOKEN)<username>:<password> - (default:
MILVUS_DB)default
- 安装SDK(建议在虚拟环境venv中安装,以避免PEP 668限制):
bash
python3 -m venv .venv
. .venv/bin/activate
python -m pip install --upgrade pymilvus- 通过环境变量提供连接信息:
- (例如
MILVUS_URI)http://<host>:19530 - (格式为
MILVUS_TOKEN)<username>:<password> - (默认值:
MILVUS_DB)default
Quickstart (Python)
快速开始(Python版)
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"),
)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
1) 创建集合
client.create_collection(
collection_name="docs",
dimension=768,
)
client.create_collection(
collection_name="docs",
dimension=768,
)
2) Insert data
2) 插入数据
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)
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
3) 搜索
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)
undefinedquery_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)
undefinedScript quickstart
脚本快速开始
bash
python skills/ai/search/alicloud-ai-search-milvus/scripts/quickstart.pyEnvironment variables:
MILVUS_URIMILVUS_TOKEN- (optional)
MILVUS_DB - (optional)
MILVUS_COLLECTION - (optional)
MILVUS_DIMENSION
Optional args: , , , .
--collection--dimension--limit--filterbash
python skills/ai/search/alicloud-ai-search-milvus/scripts/quickstart.py环境变量:
MILVUS_URIMILVUS_TOKEN- (可选)
MILVUS_DB - (可选)
MILVUS_COLLECTION - (可选)
MILVUS_DIMENSION
可选参数:、、、。
--collection--dimension--limit--filterNotes for Claude Code/Codex
针对Claude Code/Codex的注意事项
- Insert is async; wait a few seconds before searching newly inserted data.
- Keep vector aligned with your embedding model.
dimension - Use filters to enforce tenant scoping or dataset partitions.
- 插入操作是异步的;在检索新插入的数据前请等待几秒。
- 确保向量与你的嵌入模型保持一致。
dimension - 使用过滤器来实现租户范围限定或数据集分区。
Error handling
错误处理
- Auth errors: check and instance permissions.
MILVUS_TOKEN - Dimension mismatch: ensure all vectors match collection dimension.
- Network errors: verify VPC/public access settings on the instance.
- 认证错误:检查和实例权限。
MILVUS_TOKEN - 维度不匹配:确保所有向量与集合的维度一致。
- 网络错误:验证实例的VPC/公网访问设置。
References
参考资料
-
PyMilvusexamples for AliCloud Milvus
MilvusClient -
Source list:
references/sources.md
-
适用于阿里云Milvus的PyMilvus示例
MilvusClient -
来源列表:
references/sources.md