Analisi delle competenze di Zilliz: come gli agenti AI padroneggiano i database vettoriali
Originariamente di ShugeX, professionista indipendente di AI-ops e contributore attivo della community Milvus. Tradotto e ripubblicato con autorizzazione.
Immagina di usare Claude Code per creare un'app RAG con Milvus. Ogni passaggio — creare una collection, definire uno schema, inserire vettori, eseguire una ricerca ibrida — ti porta a sfogliare la documentazione di pymilvus per trovare l'API giusta, poi di nuovo nell'editor per integrarla. E se sei su Zilliz Cloud, passi anche al browser per accedere alla console per la gestione dei cluster, il monitoraggio e la configurazione dei backup. L'ambiente di sviluppo e l'ambiente operativo sono due mondi diversi.
Le due recenti Claude Code Skills di Zilliz mirano esattamente a quel punto di rottura. Milvus Skill insegna all'agente a operare sul database vettoriale tramite l'SDK Python. Zilliz Cloud Skill insegna all'agente a gestire tutto lato cloud tramite zilliz-cli. Ogni Skill gestisce un dominio; insieme trasformano sviluppo e operazioni in un'unica sessione continua di Claude Code.
Dopo aver letto da cima a fondo il codice sorgente di entrambe le Skills, ho trovato molti aspetti degni di approfondimento — design modulare, pattern di sicurezza e dove Skill si colloca accanto a MCP. Questo articolo li esamina uno per uno.
Cosa fanno rispettivamente Milvus Skill e Zilliz Cloud Skill
Le due Skills non sono due versioni della stessa cosa. Mirano a due diversi errori di correttezza.
Milvus Skill (zilliztech/milvus-skill) insegna all'agente pymilvus, l'SDK Python per connettersi, creare collection, inserire vettori ed eseguire ricerche. È un assistente di coding e funziona con qualsiasi deployment Milvus: Milvus Lite, Standalone/Cluster self-hosted o Zilliz Cloud. L'errore che corregge: codice pymilvus che compila ma non fa ciò che hai chiesto perché l'agente ha usato una forma di API obsoleta.
Zilliz Cloud Skill (zilliztech/zilliz-skill) insegna all'agente zilliz-cli, lo strumento da riga di comando che copre cluster, backup, monitoraggio e fatturazione. È un assistente DBA e funziona solo con Zilliz Cloud (Milvus self-hosted non ha un control plane). L'errore che corregge: comandi allucinati contro un sistema di produzione live, dove un zilliz cluster delete sbagliato costa più di un errore di compilazione.
In una riga:
- Milvus Skill → l'agente scrive codice che opera sui dati
- Zilliz Cloud Skill → l'agente esegue comandi che gestiscono servizi
| Dimensione | Milvus Skill | Zilliz Cloud Skill |
|---|---|---|
| Interfaccia | Python (pymilvus) | CLI (zilliz-cli) |
| Ruolo | Assistente di coding | Assistente DBA |
| Funziona con | Tutti i deployment Milvus + Zilliz Cloud | Solo Zilliz Cloud |
| File | 7 moduli di riferimento | 14 sub-skill |
| Obiettivo di correttezza | API SDK obsolete | Comandi ops poco documentati |
| Attività tipica | Creare collection, inserire, cercare | Provisioning del cluster, configurare backup, controllare fatturazione |
Milvus Skill: insegnare all'agente a scrivere pymilvus affidabile
La cartella references/ di Milvus Skill contiene sette file, ciascuno corrispondente a un'area di funzionalità indipendente di pymilvus. Quando l'agente gestisce un'attività specifica, carica solo il file pertinente invece di riversare ogni documento nel contesto:
| File | Copre |
|---|---|
collection.md | Tipi di dati, definizioni dei campi, operazioni sulle collection |
vector.md | CRUD vettoriale, ricerca ibrida, ricerca full-text, iteratori |
index.md | Tipi di indice, tipi di metrica, gestione degli indici |
partition.md | Gestione delle partition |
database.md | Gestione dei database |
user-role.md | RBAC |
patterns.md | Pattern comuni (RAG, ricerca ibrida, ecc.) |
Stai costruendo uno schema? L'agente carica collection.md. Stai eseguendo una ricerca? Carica vector.md. Il resto resta fuori. Le finestre di contesto sono finite; il caricamento on-demand batte lo scaricamento di tutto.
Tipi di dati supportati: più ricchi di quanto ti aspetteresti
Scorrendo collection.md, Milvus supporta più tipi di vettori di quanto la maggior parte degli sviluppatori realizzi:
- Scalari:
BOOL,INT8/16/32/64,FLOAT,DOUBLE,VARCHAR,JSON,ARRAY - Vettori:
FLOAT_VECTOR— float a 32 bit, il predefinitoFLOAT16_VECTOR— mezza precisione, risparmia memoriaBFLOAT16_VECTOR— BF16, comune nelle pipeline di deep learningBINARY_VECTOR— binarioSPARSE_FLOAT_VECTOR— sparso, per la ricerca full-textINT8_VECTOR— quantizzato, ulteriore compressione
Ricerca ibrida: la funzionalità più degna di nota coperta da queste Skill
patterns.md documenta quattro pattern comuni. La ricerca ibrida ha il maggior numero di componenti. La ricerca dense-vector (semantica) e la ricerca sparse-vector (per parole chiave) vengono eseguite in parallelo, poi RRF (Reciprocal Rank Fusion) o il ranking ponderato fondono le due liste.
Tre elementi costitutivi:
AnnSearchRequest— uno per ogni ramo di ricercaRRFRanker/WeightedRanker— strategia di fusioneSPARSE_FLOAT_VECTOR— il campo sparse-vector
RRF è semplice: per ogni risultato, punteggio = 1/rank, sommato tra i rami. Vincono gli elementi posizionati più in alto. WeightedRanker è una somma ponderata per ramo. La Skill lo spiega chiaramente, così l'agente genera codice di ricerca ibrida utilizzabile senza che lo sviluppatore legga il paper su RRF.
Ricerca full-text BM25 integrata di Milvus
Milvus Skill codifica anche: la ricerca full-text Sparse-BM25 integrata di Milvus 2.5. Combinata con Function e FunctionType.BM25, Milvus converte internamente il testo grezzo in vettori sparsi, evitando modelli di embedding esterni e pipeline TF-IDF manuali.
Prima della 2.5, la ricerca full-text significava dover gestire un tokenizer, calcolare TF-IDF a mano e generare da solo il vettore sparso. Ora dici all'agente cosa vuoi, e la Skill lo guida a generare la collection con la Function BM25 collegata correttamente.
Iteratori di ricerca: paginazione per collection da milioni di righe
vector.md copre anche search_iterator e query_iterator, paginazione in stile cursore per collection da milioni o miliardi di righe. Una semplice search restituisce un set di risultati di dimensione fissa. Gli iteratori scorrono le pagine senza perdite o duplicati, che è ciò di cui ha bisogno un'enumerazione completa.
Zilliz Cloud Skill: insegnare all'agente a essere il tuo DBA Cloud
Il compito di Zilliz Cloud Skill è diverso da quello di Milvus Skill. Invece di scrivere Python, l'agente compone invocazioni CLI contro un control plane live — e poiché un comando sbagliato può cancellare la produzione, la Skill avvolge quelle invocazioni in regole di sicurezza.
Modalità comando: come l'agente compone le invocazioni CLI
La Skill codifica una forma di comando coerente:
zilliz <resource> <action> --flag <value>
Esempi:
zilliz cluster list— elenca tutti i clusterzilliz collection create --name my_collection— crea una collectionzilliz backup create --name daily-backup— crea un backup
Tre formati di output: json (leggibile dalla macchina), table (facile da leggere per gli umani), text (semplice). L'agente sceglie quello più adatto.
14 sub-skill che coprono l'intero ciclo di vita Cloud
Il repo zilliz-plugin include 14 sub-skill, ciascuna sotto skills/<name>/SKILL.md:
| Modulo | Copre |
|---|---|
setup | Installazione, auth (OAuth / API Key / env var), configurazione del contesto |
cluster | Creare, elencare, modificare, sospendere, riprendere, eliminare |
collection | CRUD delle collection, load/release, alias |
vector | Operazioni sui vettori tramite CLI |
index | Gestione degli indici |
database | Gestione dei database (solo Dedicated) |
partition | Gestione delle partition |
user-role | RBAC (solo Dedicated) |
backup | Creazione, ripristino, esportazione, policy di backup |
import | Importazione bulk da cloud storage (Parquet / JSON / CSV) |
billing | Utilizzo, fatture, metodi di pagamento |
monitoring | Stato del cluster, statistiche, stati di caricamento |
project-region | Gestione di progetti e regioni |
job | Tracciamento delle attività asincrone |
Avviare un cluster, configurare la conservazione dei backup, controllare una fattura: 14 moduli coprono ogni operazione della console Zilliz Cloud.
La consapevolezza del tier è integrata. database e user-role sono contrassegnati come solo Dedicated. La Skill sa che i tier Free, Serverless e Dedicated hanno capacità diverse, quindi l'agente non tenterà operazioni che il tier di un cluster non può supportare.
Tre regole di sicurezza, una in ogni modulo
Il design di sicurezza di Zilliz Cloud Skill va diversi livelli più in profondità rispetto a quello di Milvus Skill. Tre regole fondamentali compaiono nei singoli file SKILL.md:
- Le operazioni distruttive richiedono una conferma esplicita dell'utente. La guida del modulo cluster recita: "Before deleting a cluster, always confirm with the user — this is irreversible." Ogni operazione distruttiva (collection, backup, database, utenti) porta la stessa istruzione.
- I comandi sensibili vengono eseguiti nel terminale dell'utente. Il modulo
setupè esplicito: "Login commands (zilliz login, zilliz configure) require an interactive terminal and CANNOT run inside Claude Code. Always instruct the user to run these in their own terminal." Le credenziali non passano attraverso l'agente. - Le credenziali non vengono mai esposte. L'autenticazione passa attraverso il flusso browser OAuth, una API key dalla console o una env var
ZILLIZ_API_KEY. La Skill non stampa mai segreti.
Sembrano cose basilari, ma un agente con credenziali Cloud e senza un livello di conferma potrebbe prendere "ripulisci i cluster di test" e radere al suolo la produzione. La Skill colma questa lacuna a livello di istruzioni, prima che qualsiasi comando distruttivo raggiunga l'API.
Il gate dei prerequisiti: tre controlli prima che venga eseguito qualsiasi comando
Ogni sub-skill esegue un controllo in tre passaggi, definito in skills/setup/SKILL.md:
zilliz-cliinstallato? In caso contrario, installarlo.- Utente con login effettuato? In caso contrario, indirizzare all'auth.
- Contesto del cluster impostato? In caso contrario, richiedere la selezione.
Il gate garantisce che l'ambiente sia pronto prima che qualsiasi comando venga eseguito, il che è più affidabile che procedere alla cieca e fare debug degli errori dopo.
Perché sono Zilliz Skills, non solo MCP?
Zilliz fornisce entrambi perché risolvono problemi diversi. Una Skill inietta conoscenza che l'agente consulta quando scrive codice. Un server MCP espone endpoint richiamabili che l'agente può invocare. mcp-server-milvus è il braccio MCP; Milvus Skill è il braccio della conoscenza. Si sovrappongono a strati invece di competere.
Skill è un prompt loader
La Skill minima è una cartella e un SKILL.md:
my-skill/
├── SKILL.md # instructions + metadata
├── references/ # reference docs (optional)
├── scripts/ # executable scripts (optional)
└── assets/ # templates, resources (optional)
SKILL.md è un manuale di istruzioni. Dice all'agente come gestire un determinato compito. Nessun codice eseguibile, nessun processo server. Solo conoscenza strutturata iniettata nel contesto del modello on demand.
Una Skill è un prompt loader. Conoscenza di dominio impacchettata come prompt strutturato, caricata dinamicamente.
MCP è un protocollo per strumenti
MCP (Model Context Protocol) assume una forma diversa. È un protocollo standardizzato che consente a un agent di chiamare strumenti esterni tramite un'interfaccia uniforme. mcp-server-milvus è un server MCP che espone endpoint di strumenti come milvus_text_search, milvus_create_collection e così via.
MCP è stato descritto come "la porta USB-C per gli agent AI." Risolve il problema della standardizzazione dell'interfaccia degli strumenti.
Zilliz Skill vs zilliz MCP
| Dimensione | Skill | MCP |
|---|---|---|
| Essenza | Iniezione di conoscenza (prompt) | Invocazione di strumenti (protocollo) |
| Cosa fa | Modifica il modo in cui si comporta l'agent | Offre all'agent una nuova capacità |
| Costo di distribuzione | Copia i file, fatto | Processo server richiesto |
| Adatto a | Insegnare all'agent a usare strumenti che ha già | Dare all'agent strumenti che non ha |
| Dipendenza | L'agent supporta il caricamento delle Skill | L'agent supporta MCP |
La distinzione fondamentale: Milvus Skill insegna all'agent a usare pymilvus. pymilvus esiste già. La Skill non aggiunge capacità. Corregge l'accuratezza per una capacità che l'agent ha già. MCP, al contrario, offre all'agent endpoint chiamabili che altrimenti non potrebbe raggiungere.
Una Skill è un manuale operativo per una macchina che possiedi già. MCP è un telecomando che fa muovere una nuova macchina. Zilliz lo ha detto direttamente in "MCP è morto? MCP vs CLI vs Agent Skills a confronto": entrambi i modelli persistono.
Detto questo, le Skills si stanno diffondendo rapidamente. I tracker della community indicano 700.000+ pacchetti nei registri, con ClawHub da solo che elenca 5.700+ skill. Un progetto di skill-package su GitHub ha ottenuto 6.600 stelle in cinque giorni ad aprile 2026.
Scenari reali: come gli sviluppatori li usano davvero
Scenario 1: Creare un'applicazione RAG
Stai creando un'app RAG. Con Milvus Skill installata, dici:
"Crea una collection per il recupero di documenti: vettori a 768 dimensioni, ricerca full-text BM25, campi per title, body ed embedding."
L'agent recupera collection.md e patterns.md e scrive:
from pymilvus import MilvusClient, DataType, Function, FunctionType
client = MilvusClient(uri="<URI>", token="<TOKEN>")
schema = client.create_schema(auto_id=True)
schema.add_field("id", DataType.INT64, is_primary=True)
schema.add_field("title", DataType.VARCHAR, max_length=512)
schema.add_field("body", DataType.VARCHAR, max_length=4096, enable_analyzer=True)
schema.add_field("embedding", DataType.FLOAT_VECTOR, dim=768)
schema.add_field("body_sparse", DataType.SPARSE_FLOAT_VECTOR)
# Wire BM25 full-text search
schema.add_function(Function(
name="body_bm25",
input_field_names=["body"],
output_field_names=["body_sparse"],
function_type=FunctionType.BM25,
))
index_params = client.prepare_index_params()
index_params.add_index(field_name="embedding", index_type="AUTOINDEX", metric_type="COSINE")
index_params.add_index(field_name="body_sparse", index_type="AUTOINDEX", metric_type="BM25")
client.create_collection("documents", schema=schema, index_params=index_params)
enable_analyzer=True, il collegamento della Function BM25, la combinazione AUTOINDEX con metrica BM25: nessuna di queste è una cosa che vuoi che l'agent indovini. La Skill le codifica.
Scenario 2: Gestire un cluster Zilliz Cloud
"Crea un cluster Serverless in us-east-1, poi crea una collection con vettori a 768 dimensioni."
L'agent esegue il controllo dei prerequisiti, poi invia i comandi CLI nell'ordine corretto. Oppure:
"Mostrami lo stato e l'utilizzo delle risorse di tutti i miei cluster."
L'agent esegue zilliz cluster list e i comandi zilliz monitoring corrispondenti, poi riassume. Le credenziali non lasciano mai il tuo terminale.
Scenario 3: Backup e migrazione dei dati
"Configura una policy di backup giornaliera per production, conserva 7 giorni."
backup.md documenta la sintassi completa della policy. L'agent configura direttamente la policy.
"Esporta la collection orders dal cluster di test a S3."
import.md copre l'importazione e l'esportazione in blocco da cloud storage, inclusi i formati supportati (Parquet, JSON, CSV).
Scenario 4: Passaggio alla ricerca ibrida
"Aggiorna la mia ricerca a ibrida dense + sparse con RRF."
L'agent recupera le note di vector.md su AnnSearchRequest e RRFRanker e scrive il codice di ricerca ibrida. Non è necessario studiare i parametri RRF.
Lo stack di agent di Zilliz: dove si inseriscono le due Skill
Queste due Skill si collocano all'interno di un impegno più ampio di Zilliz in ogni pattern di integrazione degli agent:
| Progetto | Tipo | Copre |
|---|---|---|
| mcp-server-milvus | Server MCP | Operazioni sul database Milvus |
| claude-context | Server MCP | Ricerca semantica nel codice |
| milvus-skill | Skill | SDK pymilvus |
| zilliz-skill | Skill | Gestione di Zilliz Cloud |
| DeepSearcher | Framework per agent | RAG agentico multi-step |
claude-context è il progetto di spicco. Indicizza una codebase in un DB vettoriale, recupera codice rilevante su richiesta con ricerca ibrida (BM25 + dense) e riporta una riduzione dei token di circa il 40% a parità di qualità di recupero.
Da MCP a Skill, dalla ricerca nel codice ai framework per agent, la strategia di Zilliz è coerente: qualunque sia il pattern di integrazione degli agent che prevarrà, un database vettoriale dovrebbe avere un punto di accesso di prima classe. Le due Skill sono l'ingresso di Zilliz in questa corsia.
Conclusione
Milvus Skill e Zilliz Cloud Skill si basano su quattro scelte di progettazione comuni:
- Le due Skill hanno ruoli chiari e non sovrapposti. Milvus Skill gestisce il livello di codifica dell'SDK; Zilliz Cloud Skill gestisce il livello operativo della CLI. Insieme, coprono l'intero ciclo di vita del database vettoriale senza pestarsi i piedi.
- Il caricamento modulare della conoscenza mantiene snello il contesto. Suddividere la conoscenza tra 7 e 14 file di riferimento consente all'agent di recuperare solo il file che corrisponde al task corrente, invece di inondare la finestra di contesto con ogni documento.
- Zilliz Cloud Skill integra la sicurezza nel livello delle istruzioni. La conferma delle operazioni distruttive, la protezione delle credenziali e i controlli dei prerequisiti mostrano che il team ha riflettuto attentamente su cosa può fare a un database live un agent con chiavi Cloud.
- Zilliz si sta coprendo su più paradigmi, senza scegliere un vincitore. Distribuendo sia implementazioni MCP sia Skill, Zilliz ha copertura qualunque sia la direzione in cui si muoverà l'ecosistema di integrazione degli agent.
Se stai creando agent basati su un DB vettoriale, installa entrambe le Skill la prossima volta che avvii un'app RAG o gestisci un cluster.
Inizia
Installa le due Skill nella tua prossima sessione di Claude Code:
- Milvus Skill — correttezza di pymilvus. Funziona con Milvus Lite, Standalone/Cluster self-hosted e Zilliz Cloud.
- Zilliz Cloud Skill — gestione di cluster live tramite
zilliz-cli. Installa anche la CLI.
Se non hai ancora un cluster, registrati a Zilliz Cloud (i nuovi account con email aziendale ricevono crediti gratuiti) oppure accedi, poi incolla la Skill in Claude Code e l'agent si occuperà del resto.
Ulteriori letture
- "MCP è morto?" — la prospettiva di Zilliz su dove CLI e Skill si collocano accanto a MCP.
- Milvus SDK Code Helper — controparte MCP di Milvus Skill, lo stesso problema di pymilvus obsoleto da un’angolazione diversa.
claude-context— ricerca semantica della codebase che segnala una riduzione dei token di circa il 40%.- documentazione di Milvus e Zilliz Cloud per l’intera superficie del prodotto.
Continua a leggere

Introducing Loon: A New Storage Engine for Vector Data That Never Stops Changing
Loon is a new storage engine for Milvus 3.0 and Zilliz Vector Lakebase, built to manage evolving vector datasets with ColumnGroups, row ID alignment, and Manifests.

How to Install and Run OpenClaw (Previously Clawdbot/Moltbot) on Mac
Turn your Mac into an AI gateway for WhatsApp, Telegram, Discord, iMessage, and more — in under 5 minutes.

How to Build an Enterprise-Ready RAG Pipeline on AWS with Bedrock, Zilliz Cloud, and LangChain
Build production-ready enterprise RAG with AWS Bedrock, Nova models, Zilliz Cloud, and LangChain. Complete tutorial with deployable code.


