{"id":"3e57e0e3-3fdd-4dce-a940-6d6fc4ccd94d","shortId":"GBn8M4","kind":"skill","title":"zvec","tagline":"Zvec vector database development assistant. Use this skill when users need to develop vector search applications based on zvec,\nbuild RAG systems, implement semantic search, or handle vector data storage and querying.\nSuitable for Python and Node.js development environments, prov","description":"## Usage Instructions\n\n### Before starting, understand the following:\n\n1. **Development Language**: Python or Node.js?\n   - Python: use `pip install zvec`\n   - Node.js: use `npm install @zvec/zvec`\n\n2. **Use Cases**:\n   - RAG document retrieval system\n   - Semantic search\n   - Multimodal search (image + text)\n   - Hybrid search (keywords + semantic)\n\n3. **Data Scale**:\n   - < 100k: use FLAT index (exact search)\n   - 100k-10M: use HNSW index (recommended default)\n   - > 10M: use IVF index (memory optimized)\n\n### Decision Workflow\n\n- User needs vector search functionality\n  - Choose development language (Python/Node.js)\n  - Determine use case\n    - RAG system → use single-vector search + document chunk management\n    - E-commerce search → use hybrid search (vector + filter)\n    - Multimodal → use multi-vector search + weighted ranking\n  - Design Schema (vector fields + scalar fields)\n  - Select index type (HNSW/FLAT/IVF)\n  - Implement data synchronization strategy\n\n### Default Recommendations\n\n- Use `create_and_open()` / `ZVecCreateAndOpen()` to create Collection\n- Use cosine similarity (COSINE) as default distance metric\n- Use FP32 type for dense vectors\n- Create `InvertIndexParam` index for filter fields\n\n### Validation Checklist\n\n- Vector dimensions match Schema definition\n- Scalar field types are correct\n- Filter condition syntax is correct\n- Call `optimize()` after large batch writes\n\n## Quick Start\n\n**Python:**\n\n```python\nimport zvec\n\n# Create Collection\nschema = zvec.CollectionSchema(\n    name=\"my_collection\",\n    fields=[\n        zvec.FieldSchema(name=\"title\", data_type=zvec.DataType.STRING),\n    ],\n    vectors=[\n        zvec.VectorSchema(\n            name=\"embedding\",\n            data_type=zvec.DataType.VECTOR_FP32,\n            dimension=768,\n            index_param=zvec.HnswIndexParam(\n                metric_type=zvec.MetricType.COSINE\n            ),\n        ),\n    ],\n)\n\ncollection = zvec.create_and_open(\"./my_data\", schema)\n\n# Insert document\ncollection.upsert(zvec.Doc(\n    id=\"doc_1\",\n    vectors={\"embedding\": [0.1] * 768},\n    fields={\"title\": \"Hello World\"},\n))\n\n# Search\nresults = collection.query(\n    vectors=zvec.VectorQuery(\n        field_name=\"embedding\",\n        vector=[0.1] * 768,\n    ),\n    topk=10,\n)\n```\n\n**Node.js:**\n\n```typescript\nimport { ZVecCreateAndOpen, ZVecCollectionSchema, ZVecFieldSchema, ZVecVectorSchema, ZVecDataType, ZVecHnswIndexParams, ZVecMetricType } from \"@zvec/zvec\";\n\nconst schema = new ZVecCollectionSchema({\n  name: \"my_collection\",\n  fields: [new ZVecFieldSchema({ name: \"title\", dataType: ZVecDataType.STRING })],\n  vectors: [new ZVecVectorSchema({\n    name: \"embedding\",\n    dataType: ZVecDataType.VECTOR_FP32,\n    dimension: 768,\n    indexParams: new ZVecHnswIndexParams({ metricType: ZVecMetricType.COSINE }),\n  })],\n});\n\nconst collection = ZVecCreateAndOpen(\"./my_data\", schema);\n```\n\n## Core Concepts\n\n### Data Model\n\n**Collection**\n- Similar to a table in relational databases, a container for storing, organizing, and querying data\n- Each Collection has a Schema defining its structure\n- Each Collection is independently persisted in a dedicated directory on disk\n\n**Document**\n- Basic unit of data storage, similar to a row in a relational table\n- Contains three core components:\n  - `id`: unique string identifier\n  - `vectors`: named vector collection (supports dense and sparse vectors)\n  - `fields`: named scalar field collection\n\n**Schema**\n- Dynamic Schema: scalar fields and vectors can be added or removed at any time\n- Strong type system: each field must declare a DataType\n\n### Vector Types\n\n**Dense Vector**\n- Fixed-length real-valued embeddings\n- Types: `VECTOR_FP16`, `VECTOR_FP32`, `VECTOR_INT8`\n- Suitable for: semantic understanding, context capture\n\n**Sparse Vector**\n- High-dimensional representation with only a few non-zero dimensions\n- Types: `SPARSE_VECTOR_FP32`, `SPARSE_VECTOR_FP16`\n- Suitable for: keyword matching, BM25 scoring\n\n### Index Types\n\n| Index Type | Characteristics | Use Case |\n|---------|------|---------|\n| **FLAT** | Brute force search, exact results | Small scale data (<100k) |\n| **HNSW** | Approximate nearest neighbor, graph structure | Large scale data (recommended default) |\n| **IVF** | Inverted file index | Very large scale data |\n\n## Available Topics\n\n### Python\n\n- [Quick Start](./quick-start/python.md) - Quick start with Zvec Python API\n- [Collection Management](./collection-management/python.md) - Create, open, and manage Collections\n- [Data Operations](./data-operations/python.md) - Insert, update, and delete documents\n- [Vector Search](./vector-search/python.md) - Single-vector, multi-vector, and hybrid search\n- [RAG System](./rag-system/python.md) - Build document retrieval system\n- [Hybrid Search](./hybrid-search/python.md) - Vector similarity + scalar filtering\n- [Multimodal Search](./multimodal-search/python.md) - Image + text joint search\n\n### Node.js\n\n- [Quick Start](./quick-start/typescript.md) - Quick start with Zvec Node.js API\n- [Collection Management](./collection-management/typescript.md) - Create, open, and manage Collections\n- [Data Operations](./data-operations/typescript.md) - Insert, update, and delete documents\n- [Vector Search](./vector-search/typescript.md) - Single-vector, multi-vector, and hybrid search\n- [RAG System](./rag-system/typescript.md) - Build document retrieval system\n- [Hybrid Search](./hybrid-search/typescript.md) - Vector similarity + scalar filtering\n- [Multimodal Search](./multimodal-search/typescript.md) - Image + text joint search\n\n### General\n\n- [Configuration](./configuration.md) - Global configuration and initialization\n- [Data Model](./data-model.md) - Zvec data model overview\n- [Embedding](./embedding.md) - Text embedding functions (Python only)\n- [Reranker](./reranker.md) - Result reranking functions (Python only)\n- [API Cheatsheet](./api-cheatsheet.md) - Python & Node.js API quick reference\n- [Troubleshooting](./troubleshooting.md) - Common issues and solutions\n\n## Available Topics\n\n### Python\n\n- [Collection Management](./collection-management/python.md)\n- [Data Operations](./data-operations/python.md)\n- [Hybrid Search](./hybrid-search/python.md)\n- [Multimodal Search](./multimodal-search/python.md)\n- [Quick Start](./quick-start/python.md)\n- [Rag System](./rag-system/python.md)\n- [Vector Search](./vector-search/python.md)\n\n### Node.js\n\n- [Collection Management](./collection-management/typescript.md)\n- [Data Operations](./data-operations/typescript.md)\n- [Hybrid Search](./hybrid-search/typescript.md)\n- [Multimodal Search](./multimodal-search/typescript.md)\n- [Quick Start](./quick-start/typescript.md)\n- [Rag System](./rag-system/typescript.md)\n- [Vector Search](./vector-search/typescript.md)\n\n### General\n\n- [Configuration](./configuration.md)\n- [Data Model](./data-model.md)\n- [Embedding](./embedding.md)\n- [Reranker](./reranker.md)\n- [Api Cheatsheet](./api-cheatsheet.md)\n- [Troubleshooting](./troubleshooting.md)","tags":["zvec","agent","skills","zvec-ai","agent-skills","coding-skills"],"capabilities":["skill","source-zvec-ai","skill-zvec","topic-agent-skills","topic-coding-skills","topic-zvec"],"categories":["zvec-agent-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/zvec-ai/zvec-agent-skills/zvec","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add zvec-ai/zvec-agent-skills","source_repo":"https://github.com/zvec-ai/zvec-agent-skills","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 6 github stars · SKILL.md body (6,955 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:14:24.160Z","embedding":null,"createdAt":"2026-05-18T13:22:01.736Z","updatedAt":"2026-05-18T19:14:24.160Z","lastSeenAt":"2026-05-18T19:14:24.160Z","tsv":"'/api-cheatsheet.md':665,735 '/collection-management/python.md':529,682 '/collection-management/typescript.md':588,704 '/configuration.md':637,725 '/data-model.md':644,728 '/data-operations/python.md':537,685 '/data-operations/typescript.md':596,707 '/embedding.md':650,730 '/hybrid-search/python.md':564,688 '/hybrid-search/typescript.md':623,710 '/multimodal-search/python.md':571,691 '/multimodal-search/typescript.md':630,713 '/my_data':253,327 '/quick-start/python.md':520,694 '/quick-start/typescript.md':579,716 '/rag-system/python.md':557,697 '/rag-system/typescript.md':616,719 '/reranker.md':657,732 '/troubleshooting.md':672,737 '/vector-search/python.md':545,700 '/vector-search/typescript.md':604,722 '0.1':264,279 '1':49,261 '10':282 '100k':85,92,495 '100k-10m':91 '10m':93,99 '2':65 '3':82 '768':242,265,280,318 'ad':413 'api':526,585,663,668,733 'applic':17 'approxim':497 'assist':6 'avail':515,677 'base':18 'basic':369 'batch':211 'bm25':477 'brute':487 'build':21,558,617 'call':207 'captur':451 'case':67,118,485 'characterist':483 'cheatsheet':664,734 'checklist':191 'choos':112 'chunk':127 'collect':169,220,225,249,301,325,333,350,358,393,403,527,534,586,593,680,702 'collection.query':272 'collection.upsert':257 'commerc':131 'common':673 'compon':385 'concept':330 'condit':203 'configur':636,639,724 'const':295,324 'contain':342,382 'context':450 'core':329,384 'correct':201,206 'cosin':171,173 'creat':163,168,184,219,530,589 'data':30,83,157,230,237,331,348,372,494,504,514,535,594,642,646,683,705,726 'databas':4,340 'datatyp':307,314,427 'decis':105 'declar':425 'dedic':364 'default':98,160,175,506 'defin':354 'definit':196 'delet':541,600 'dens':182,395,430 'design':146 'determin':116 'develop':5,14,39,50,113 'dimens':193,241,317,465 'dimension':456 'directori':365 'disk':367 'distanc':176 'doc':260 'document':69,126,256,368,542,559,601,618 'dynam':405 'e':130 'e-commerc':129 'embed':236,263,277,313,438,649,652,729 'environ':40 'exact':89,490 'field':149,151,189,198,226,266,275,302,399,402,408,423 'file':509 'filter':137,188,202,568,627 'fix':433 'fixed-length':432 'flat':87,486 'follow':48 'forc':488 'fp16':441,472 'fp32':179,240,316,443,469 'function':111,653,660 'general':635,723 'global':638 'graph':500 'handl':28 'hello':268 'high':455 'high-dimension':454 'hnsw':95,496 'hnsw/flat/ivf':155 'hybrid':78,134,553,562,612,621,686,708 'id':259,386 'identifi':389 'imag':76,572,631 'implement':24,156 'import':217,285 'independ':360 'index':88,96,102,153,186,243,479,481,510 'indexparam':319 'initi':641 'insert':255,538,597 'instal':58,63 'instruct':43 'int8':445 'invert':508 'invertindexparam':185 'issu':674 'ivf':101,507 'joint':574,633 'keyword':80,475 'languag':51,114 'larg':210,502,512 'length':434 'manag':128,528,533,587,592,681,703 'match':194,476 'memori':103 'metric':177,246 'metrictyp':322 'model':332,643,647,727 'multi':141,550,609 'multi-vector':140,549,608 'multimod':74,138,569,628,689,711 'must':424 'name':223,228,235,276,299,305,312,391,400 'nearest':498 'need':12,108 'neighbor':499 'new':297,303,310,320 'node.js':38,54,60,283,576,584,667,701 'non':463 'non-zero':462 'npm':62 'open':165,252,531,590 'oper':536,595,684,706 'optim':104,208 'organ':345 'overview':648 'param':244 'persist':361 'pip':57 'prov':41 'python':36,52,55,215,216,517,525,654,661,666,679 'python/node.js':115 'queri':33,347 'quick':213,518,521,577,580,669,692,714 'rag':22,68,119,555,614,695,717 'rank':145 'real':436 'real-valu':435 'recommend':97,161,505 'refer':670 'relat':339,380 'remov':415 'represent':457 'rerank':656,659,731 'result':271,491,658 'retriev':70,560,619 'row':377 'scalar':150,197,401,407,567,626 'scale':84,493,503,513 'schema':147,195,221,254,296,328,353,404,406 'score':478 'search':16,26,73,75,79,90,110,125,132,135,143,270,489,544,554,563,570,575,603,613,622,629,634,687,690,699,709,712,721 'select':152 'semant':25,72,81,448 'similar':172,334,374,566,625 'singl':123,547,606 'single-vector':122,546,605 'skill':9 'skill-zvec' 'small':492 'solut':676 'source-zvec-ai' 'spars':397,452,467,470 'start':45,214,519,522,578,581,693,715 'storag':31,373 'store':344 'strategi':159 'string':388 'strong':419 'structur':356,501 'suitabl':34,446,473 'support':394 'synchron':158 'syntax':204 'system':23,71,120,421,556,561,615,620,696,718 'tabl':337,381 'text':77,573,632,651 'three':383 'time':418 'titl':229,267,306 'topic':516,678 'topic-agent-skills' 'topic-coding-skills' 'topic-zvec' 'topk':281 'troubleshoot':671,736 'type':154,180,199,231,238,247,420,429,439,466,480,482 'typescript':284 'understand':46,449 'uniqu':387 'unit':370 'updat':539,598 'usag':42 'use':7,56,61,66,86,94,100,117,121,133,139,162,170,178,484 'user':11,107 'valid':190 'valu':437 'vector':3,15,29,109,124,136,142,148,183,192,233,262,273,278,309,390,392,398,410,428,431,440,442,444,453,468,471,543,548,551,565,602,607,610,624,698,720 'weight':144 'workflow':106 'world':269 'write':212 'zero':464 'zvec':1,2,20,59,218,524,583,645 'zvec.collectionschema':222 'zvec.create':250 'zvec.datatype.string':232 'zvec.datatype.vector':239 'zvec.doc':258 'zvec.fieldschema':227 'zvec.hnswindexparam':245 'zvec.metrictype.cosine':248 'zvec.vectorquery':274 'zvec.vectorschema':234 'zvec/zvec':64,294 'zveccollectionschema':287,298 'zveccreateandopen':166,286,326 'zvecdatatyp':290 'zvecdatatype.string':308 'zvecdatatype.vector':315 'zvecfieldschema':288,304 'zvechnswindexparam':291,321 'zvecmetrictyp':292 'zvecmetrictype.cosine':323 'zvecvectorschema':289,311","prices":[{"id":"99a5b133-bd51-48e0-b798-db03f871b368","listingId":"3e57e0e3-3fdd-4dce-a940-6d6fc4ccd94d","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"zvec-ai","category":"zvec-agent-skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:22:01.736Z"}],"sources":[{"listingId":"3e57e0e3-3fdd-4dce-a940-6d6fc4ccd94d","source":"github","sourceId":"zvec-ai/zvec-agent-skills/zvec","sourceUrl":"https://github.com/zvec-ai/zvec-agent-skills/tree/main/skills/zvec","isPrimary":false,"firstSeenAt":"2026-05-18T13:22:01.736Z","lastSeenAt":"2026-05-18T19:14:24.160Z"}],"details":{"listingId":"3e57e0e3-3fdd-4dce-a940-6d6fc4ccd94d","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"zvec-ai","slug":"zvec","github":{"repo":"zvec-ai/zvec-agent-skills","stars":6,"topics":["agent-skills","ai","coding-skills","zvec"],"license":"apache-2.0","html_url":"https://github.com/zvec-ai/zvec-agent-skills","pushed_at":"2026-04-09T07:50:05Z","description":"Official AI Agent skills for building with Zvec vector database","skill_md_sha":"4abe1924aecdd6f19c2f4468c5dac4b6b6eb9d6c","skill_md_path":"skills/zvec/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/zvec-ai/zvec-agent-skills/tree/main/skills/zvec"},"layout":"multi","source":"github","category":"zvec-agent-skills","frontmatter":{"name":"zvec","description":"Zvec vector database development assistant. Use this skill when users need to develop vector search applications based on zvec,\nbuild RAG systems, implement semantic search, or handle vector data storage and querying.\nSuitable for Python and Node.js development environments, providing complete technical guidance from basic concepts to advanced usage.\nProactively use this skill when users mention vector databases, similarity search, embedding storage, HNSW/IVF indexes,\nhybrid search, multi-vector queries, or zvec API usage."},"skills_sh_url":"https://skills.sh/zvec-ai/zvec-agent-skills/zvec"},"updatedAt":"2026-05-18T19:14:24.160Z"}}