Come le abilità antropiche cambiano gli strumenti dell'agente e come costruire un'abilità personalizzata per Milvus per avviare rapidamente il RAG
L'uso degli strumenti è una parte importante del funzionamento di un agente. L'agente deve scegliere lo strumento giusto, decidere quando chiamarlo e formattare correttamente gli input. Sulla carta sembra semplice, ma quando si inizia a costruire sistemi reali, si scoprono molti casi limite e modalità di fallimento.
Molti team utilizzano definizioni di strumenti in stile MCP per organizzare il tutto, ma l'MCP presenta alcune asperità. Il modello deve ragionare su tutti gli strumenti contemporaneamente e non c'è molta struttura per guidare le sue decisioni. Inoltre, ogni definizione di strumento deve vivere nella finestra di contesto. Alcuni di questi sono di grandi dimensioni (l'MCP di GitHub è di circa 26k token), il che consuma il contesto prima ancora che l'agente inizi a lavorare davvero.
Anthropic ha introdotto le competenze per migliorare questa situazione. Le abilità sono più piccole, più mirate e più facili da caricare su richiesta. Invece di scaricare tutto nel contesto, si impacchettano la logica del dominio, i flussi di lavoro o gli script in unità compatte che l'agente può utilizzare solo quando necessario.
In questo post spiegherò come funzionano le Anthropic Skills e poi spiegherò come costruire una semplice Skill in Claude Code che trasforma il linguaggio naturale in una base di conoscenza supportata da Milvus: una configurazione rapida per RAG senza cablaggi aggiuntivi.
Cosa sono le abilità antropiche?
LeAbilità antropiche (o Abilità dell'agente) non sono altro che cartelle che raggruppano le istruzioni, gli script e i file di riferimento di cui un agente ha bisogno per gestire un compito specifico. Sono come piccoli pacchetti di capacità autosufficienti. Un'abilità può definire come generare un report, eseguire un'analisi o seguire un particolare flusso di lavoro o un insieme di regole.
L'idea chiave è che le Skill sono modulari e possono essere caricate su richiesta. Invece di inserire enormi definizioni di strumenti nella finestra del contesto, l'agente inserisce solo le Skill di cui ha bisogno. In questo modo, l'uso del contesto è ridotto e il modello riceve una guida chiara su quali strumenti esistono, quando chiamarli e come eseguire ogni fase.
Il formato è volutamente semplice e, per questo motivo, è già supportato o facilmente adattabile da una serie di strumenti per sviluppatori: Claude Code, Cursor, estensioni di VS Code, integrazioni con GitHub, configurazioni in stile Codex e così via.
Una Skill segue una struttura di cartelle coerente:
skill-name/
├── SKILL.md # Required: Skill instructions and metadata
├── scripts/ # Optional: helper scripts
├── templates/ # Optional: document templates
└── resources/ # Optional: reference materials
1. SKILL.md (Core File)
È la guida all'esecuzione per l'agente, il documento che indica esattamente all'agente come deve essere eseguita l'attività. Definisce i metadati dell'Abilità (come il nome, la descrizione e le parole chiave di attivazione), il flusso di esecuzione e le impostazioni predefinite. In questo file è necessario descrivere chiaramente
Quando l'abilità deve essere eseguita: Ad esempio, attivare l'abilità quando l'input dell'utente include una frase come "elaborare file CSV con Python".
Come deve essere eseguita l'attività: Disporre le fasi di esecuzione in ordine, come ad esempio: interpretare la richiesta dell'utente → richiamare gli script di preelaborazione dalla directory
scripts/→ generare il codice richiesto → formattare l'output utilizzando i modelli ditemplates/.Regole e vincoli: Specificano dettagli come le convenzioni di codifica, i formati di output e il modo in cui devono essere gestiti gli errori.
2. scripts/ (script di esecuzione)
Questa directory contiene script pre-scritti in linguaggi come Python, Shell o Node.js. L'agente può richiamare direttamente questi script, invece di generare ripetutamente lo stesso codice in fase di esecuzione. Esempi tipici sono create_collection.py e check_env.py.
3. templates/ (Modelli di documento)
File modello riutilizzabili che l'agente può usare per generare contenuti personalizzati. Esempi comuni sono i modelli di rapporto o i modelli di configurazione.
4. resources/ (Materiali di riferimento)
Documenti di riferimento che l'agente può consultare durante l'esecuzione, come la documentazione API, le specifiche tecniche o le guide alle best practice.
Nel complesso, questa struttura rispecchia il modo in cui il lavoro viene consegnato a un nuovo compagno di squadra: SKILL.md spiega il lavoro, scripts/ fornisce strumenti pronti all'uso, templates/ definisce formati standard e resources/ fornisce informazioni di base. Con tutto questo, l'agente può eseguire il compito in modo affidabile e con il minimo di incertezze.
Esercitazione pratica: Creazione di un'abilità personalizzata per un sistema RAG alimentato da Milvus
In questa sezione, vedremo come costruire un'abilità personalizzata in grado di impostare una raccolta Milvus e di assemblare una pipeline RAG completa a partire da semplici istruzioni in linguaggio naturale. L'obiettivo è quello di saltare tutto il lavoro di configurazione abituale: nessuna progettazione manuale dello schema, nessuna configurazione degli indici, nessun codice boilerplate. Si dice all'agente ciò che si vuole, e l'abilità gestisce i pezzi di Milvus per l'utente.
Panoramica della progettazione
Prerequisiti
| Componente | Requisiti |
|---|---|
| CLI | claude-code |
| Modelli | GLM 4.7, OpenAI |
| Contenitore | Docker |
| Milvus | 2.6.8 |
| Piattaforma di configurazione del modello | CC-Switch |
| Gestore dei pacchetti | npm |
| Linguaggio di sviluppo | Python |
Passo 1: Configurazione dell'ambiente
Installare claude-code
npm install -g @anthropic-ai/claude-code
Installare CC-Switch
Nota: CC-Switch è uno strumento di commutazione dei modelli che semplifica il passaggio da un'API all'altra quando si eseguono modelli di intelligenza artificiale in locale.
Repository del progetto: https://github.com/farion1231/cc-switch
Selezionare Claude e aggiungere una chiave API
Controllare lo stato attuale
Distribuire e avviare Milvus-Standalone
# Download docker-compose.yml
wget https://github.com/milvus-io/milvus/releases/download/v2.6.8/milvus-standalone-docker-compose.yml -O docker-compose.yml
# Start Milvus (check port mapping: 19530:19530)
docker-compose up -d
# Verify that the services are running
docker ps | grep milvus
# You should see three containers: milvus-standalone, milvus-etcd, milvus-minio
Configurare la chiave API OpenAI
# Add this to ~/.bashrc or ~/.zshrc
OPENAI_API_KEY=your_openai_api_key_here
Passo 2: Creare l'abilità personalizzata per Milvus
Creare la struttura della directory
cd ~/.claude/skills/
mkdir -p milvus-skills/example milvus-skills/scripts
Inizializzare SKILL.md
Nota: SKILL.md serve come guida all'esecuzione dell'agente. Definisce cosa fa l'abilità e come deve essere attivata.
name: milvus-collection-builder
description: Create Milvus collections using natural language, supporting both RAG and text search scenarios
Scrivere gli script principali
| Tipo di script | Nome del file | Scopo |
|---|---|---|
| Controllo ambiente | check_env.py | Controlla la versione di Python, le dipendenze necessarie e la connessione a Milvus. |
| Analisi degli intenti | intent_parser.py | Converte richieste come "costruisci un database RAG" in un intento strutturato come scene=rag |
| Creazione di collezioni | milvus_builder.py | Il costruttore di base che genera lo schema della collezione e la configurazione degli indici. |
| Ingestione dei dati | insert_milvus_data.py | Carica i documenti, li raggruppa, genera le incorporazioni e scrive i dati in Milvus. |
| Esempio 1 | basic_text_search.py | Dimostra come creare un sistema di ricerca di documenti |
| Esempio 2 | rag_knowledge_base.py | Dimostra come costruire una base di conoscenza completa di RAG |
Questi script mostrano come trasformare una Skill incentrata su Milvus in qualcosa di pratico: un sistema di ricerca di documenti funzionante e una configurazione di Q&A intelligente (RAG).
Fase 3: Abilitare l'abilità ed eseguire un test
Descrivere la richiesta in linguaggio naturale
"I want to build an RAG system."
Creazione del sistema RAG
Inserire dati di esempio
Eseguire una query
Conclusione
In questa esercitazione, abbiamo costruito un sistema RAG alimentato da Milvus utilizzando una Skill personalizzata. L'obiettivo non era solo quello di mostrare un altro modo di chiamare Milvus, ma anche quello di mostrare come le Skill possono trasformare ciò che normalmente è una configurazione in più fasi e pesante in qualcosa che si può riutilizzare e iterare. Invece di definire manualmente gli schemi, di mettere a punto gli indici o di mettere insieme il codice del flusso di lavoro, la Skill gestisce la maggior parte della documentazione di base e permette di concentrarsi sulle parti di RAG che contano davvero.
Questo è solo l'inizio. Una pipeline RAG completa ha molti pezzi in movimento: preelaborazione, chunking, impostazioni di ricerca ibrida, reranking, valutazione e altro ancora. Tutti questi elementi possono essere confezionati come Skills separate e composti a seconda del caso d'uso. Se il team dispone di standard interni per le dimensioni dei vettori, i parametri degli indici, i modelli di richiesta o la logica di recupero, le competenze sono un modo pulito per codificare queste conoscenze e renderle ripetibili.
Per i nuovi sviluppatori, questo riduce la barriera d'ingresso: non è necessario imparare ogni dettaglio di Milvus prima di far funzionare qualcosa. Per i team più esperti, riduce la necessità di ripetere le impostazioni e aiuta a mantenere la coerenza dei progetti in tutti gli ambienti. Le competenze non sostituiscono una progettazione accurata del sistema, ma eliminano molti attriti inutili.
L'implementazione completa è disponibile nel repository open-source ed è possibile esplorare altri esempi creati dalla comunità nel mercato delle competenze.
Restate sintonizzati!
Stiamo anche lavorando per introdurre le competenze ufficiali di Milvus e Zilliz Cloud che coprono i modelli RAG comuni e le migliori pratiche di produzione. Se avete idee o flussi di lavoro specifici che volete siano supportati, unitevi al nostro canale Slack e chiacchierate con i nostri ingegneri. E se volete una guida per la vostra configurazione, potete sempre prenotare una sessione di Milvus Office Hours.
Try Managed Milvus for Free
Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.
Get StartedLike the article? Spread the word



