Loading...
Loading...
Build vector retrieval with DashVector using the Python SDK. Use when creating collections, upserting docs, and running similarity search with filters in Claude Code/Codex.
npx skill4agent add cinience/alicloud-skills alicloud-ai-search-dashvectorpython3 -m venv .venv
. .venv/bin/activate
python -m pip install dashvectorDASHVECTOR_API_KEYDASHVECTOR_ENDPOINTnamedimensionmetriccosinedotproducteuclideanfields_schemadocs{id, vector, fields}sparse_vectorvectoridtopkfilteroutput_fieldsinclude_vectorimport os
import dashvector
from dashvector import Doc
client = dashvector.Client(
api_key=os.getenv("DASHVECTOR_API_KEY"),
endpoint=os.getenv("DASHVECTOR_ENDPOINT"),
)
# 1) Create a collection
ret = client.create(
name="docs",
dimension=768,
metric="cosine",
fields_schema={"title": str, "source": str, "chunk": int},
)
assert ret
# 2) Upsert docs
collection = client.get(name="docs")
ret = collection.upsert(
[
Doc(id="1", vector=[0.01] * 768, fields={"title": "Intro", "source": "kb", "chunk": 0}),
Doc(id="2", vector=[0.02] * 768, fields={"title": "FAQ", "source": "kb", "chunk": 1}),
]
)
assert ret
# 3) Query
ret = collection.query(
vector=[0.01] * 768,
topk=5,
filter="source = 'kb' AND chunk >= 0",
output_fields=["title", "source", "chunk"],
include_vector=False,
)
for doc in ret:
print(doc.id, doc.fields)python skills/ai/search/alicloud-ai-search-dashvector/scripts/quickstart.pyDASHVECTOR_API_KEYDASHVECTOR_ENDPOINTDASHVECTOR_COLLECTIONDASHVECTOR_DIMENSION--collection--dimension--topk--filterupsertdimensionsparse_vector={token_id: weight, ...}DASHVECTOR_API_KEYClient.createCollection.upsertCollection.queryreferences/sources.md