mcpField
A
alicloud-ai-search-milvus

alicloud-ai-search-milvus

github.com/cinience数据与数据库396271 次安装11 周前更新
代码仓库

关于 alicloud-ai-search-milvus

通过 PyMilvus 连接 AliCloud Milvus 并执行向量搜索的技能,涵盖连接配置、限定范围的查询及结果记录。

主要功能

  1. 01配置 PyMilvus 连接
  2. 02执行向量搜索
  3. 03通过环境变量配置凭据
  4. 04设置集合与向量维度
  5. 05使用过滤条件和结果上限

适用场景

  1. 01检查 AliCloud Milvus 连接
  2. 02搜索集合中的向量
  3. 03按租户或数据集限定搜索范围
  4. 04保存查询输出和证据

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/cinience/alicloud-skills --skill alicloud-ai-search-milvus

安装后在 Claude Code 中输入/alicloud-ai-search-milvus确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
references/
sources.md
scripts/
quickstart.py

详细介绍

类别:提供商

通过 PyMilvus 使用 AliCloud Milvus(Serverless)

此技能使用标准 PyMilvus API 连接到 AliCloud Milvus 并执行向量搜索。

先决条件

  • 安装 SDK(建议在 venv 中安装,以避免 PEP 668 的限制):
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)

快速入门(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)

脚本快速入门

python skills/ai/search/alicloud-ai-search-milvus/scripts/quickstart.py

环境变量:

  • MILVUS_URI
  • MILVUS_TOKEN
  • MILVUS_DB(可选)
  • MILVUS_COLLECTION(可选)
  • MILVUS_DIMENSION(可选)

可选参数:--collection、--dimension、--limit、--filter。

Claude Code/Codex 使用说明

  • 插入操作是异步的;搜索新插入的数据前,请等待几秒。
  • 确保向量 dimension 与嵌入模型的维度一致。
  • 使用筛选条件来强制限定租户范围或数据集分区。

错误处理

  • 身份验证错误:检查 MILVUS_TOKEN 和实例权限。
  • 维度不匹配:确保所有向量的维度都与集合维度一致。
  • 网络错误:检查实例上的 VPC/公有访问设置。

验证

mkdir -p output/alicloud-ai-search-milvus
for f in skills/ai/search/alicloud-ai-search-milvus/scripts/*.py; do
  python3 -m py_compile "$f"
done
echo "py_compile_ok" > output/alicloud-ai-search-milvus/validate.txt

通过标准:命令以 0 退出,并生成 output/alicloud-ai-search-milvus/validate.txt。

输出与证据

  • 将构件、命令输出和 API 响应摘要保存在 output/alicloud-ai-search-milvus/ 下。
  • 在证据文件中包含关键参数(区域/资源 ID/时间范围),以便复现。

工作流

  1. 确认用户意图、区域、标识符,以及操作是只读还是会修改数据。
  2. 首先运行一个最小只读查询,以验证连接和权限。
  3. 使用明确参数和有限范围执行目标操作。
  4. 验证结果并保存输出/证据文件。

参考资料

  • PyMilvus MilvusClient 的 AliCloud Milvus 示例

  • 来源列表:references/sources.md

评论

支持 Markdown