L’AI generativa ha trasformato il modo in cui interagiamo con i computer, ma andare oltre la semplice chat per sviluppare sistemi di AI in grado di ragionare, agire ed eseguire codice MATLAB® in modo autonomo richiede un nuovo approccio. Oggi, quando si chiede a un LLM di risolvere un problema ingegneristico, spesso ci si ritrova a trasferire codice manualmente, correggere errori uno a uno e a confidare che l’AI abbia davvero compreso il contesto applicativo. Agentic AI cambia questo approccio.
Questa guida mostra come costruire sistemi di intelligenza artificiale che non si limitano a suggerire soluzioni, ma le eseguono. Collegando i LLM a MATLAB tramite il Model Context Protocol (MCP), è possibile creare agenti di intelligenza artificiale che scrivono codice, eseguono simulazioni, analizzano i risultati e iterano fino al completamento del lavoro.
Se hai usato ChatGPT o Claude per aiutarti con codice MATLAB, conosci bene il copione: fai una domanda, ottieni del codice, lo incolli in MATLAB, compare un errore, torni nella chat, spieghi l’errore, ricevi nuovo codice, e si ripete il ciclo. Funziona, ma è lento e frustrante.
Agentic AI chiude questo loop. Invece di essere un generatore di testo che si orchestra manualmente, un agente AI può:
- Scrivere il codice ed eseguirlo direttamente
- Vedere gli errori e correggerli automaticamente
- Accedere allo spazio di lavoro e dati personali
- Iterare fino al completamento dell’operazione
- Fornire risultati verificati e utili
Ora fai il confronto con l’IA generativa, che:
- Genera frammenti di codice su richiesta
- Richiede di copiare, incollare ed eseguire il codice manualmente
- Si affida a te per interpretare gli errori e fare domande di follow-up
- Non ha accesso ai tuoi file o dati
- Non è in grado di verificare se il codice funziona davvero
Quattro capacità che trasformano un chatbot in un collega
L'intelligenza artificiale generativa è come avere un consulente che redige rapporti. L'Agentic AI è come avere un collega che svolge il lavoro. L'intelligenza artificiale non si limita a indicarti come risolvere un problema: lo risolve, ti mostra i risultati e ti chiede se desideri apportare modifiche.
| Funzionalità | Cosa significa | Esempio di MATLAB |
|---|---|---|
| Ragionamento | Scompone problemi complessi in passaggi | “Per ottimizzare questo controllore, prima analizzo il sistema (plant), poi progetto un PID e infine lo regolerò.” |
| Pianificazione | Sequenze di azioni verso un obiettivo | “Passaggio 1: Caricamento dei dati. Passaggio 2: Addestramento del modello. Passaggio 3: Validazione. Passaggio 4: Esportazione.” |
| Uso degli strumenti | Chiama funzioni esterne e API | Invoca trainnet, sim, o funzioni MATLAB personalizzate |
| Adattamento | Impara dai feedback e dagli errori | "Si è verificato un errore: consentimi di controllare le dimensioni e di riprovare." |
Perché combinare MATLAB con Agentic AI?
MATLAB è particolarmente utile per Agentic AI in ambito ingegneristico e scientifico perché mette a disposizione:
- Calcolo affidabile: i modelli linguistici possono commettere errori nei calcoli matematici, mentre MATLAB li esegue in modo corretto e affidabile.
- Competenza nel dominio: sono disponibili più di 100 toolbox per l'elaborazione dei segnali, i controlli, il Deep Learning e altro ancora.
- Capacità di simulazione: collegamento a Simulink® per il test e la verifica a livello di sistema.
- Strumenti professionali: Le capacità di analisi del codice, visualizzazione e distribuzione sono integrate.
Per permettere a un LLM di usare MATLAB, serve un modo per individuare gli strumenti disponibili, invocarli con i parametri corretti e ricevere i risultati. Questo è esattamente ciò che Model Context Protocol offre: un framework comune che consente l'interazione tra l'intelligenza artificiale e gli strumenti. Pensa a MCP come a una porta USB-C per l’IA: così come USB-C permette a qualsiasi dispositivo di collegarsi a periferiche diverse, MCP consente a qualsiasi modello di IA di collegarsi a strumenti esterni, incluso MATLAB.
Il server MCP traduce tra le richieste di intelligenza artificiale e l'esecuzione di MATLAB. L’ agente AI decide cosa fare; MATLAB esegue il calcolo.
| Approccio | Caso d'uso | Ti serve |
|---|---|---|
| MATLAB come strumento (MCP Core Server) | Consenti alle applicazioni AI esterne (Claude Desktop, GitHub Copilot, VS Code) di eseguire codice MATLAB | MATLAB + Server Base MCP + client AI di propria scelta |
| MATLAB come host (MCP Client) | Crea i tuoi agenti AI in MATLAB che utilizzano strumenti esterni e API | MATLAB + componente aggiuntivo MCP Client + LLM con MATLAB |
Il server base MATLAB MCP rende MATLAB disponibile per qualsiasi applicazione AI compatibile con MCP. Una volta installato, assistenti IA come Claude Desktop, GitHub Copilot o Gemini CLI possono scrivere ed eseguire codice MATLAB per tuo conto, mantenendo comunque il controllo da parte tua.
Dietro le quinte, il MCP Core Server offre cinque funzionalità di base che permettono agli agenti IA di operare con MATLAB in maniera autonoma. Non è necessario chiamarli direttamente; l'agente AI li utilizza automaticamente in base a ciò che gli chiedi di fare:
| Quando si chiede all'IA di ... | Il server gestisce ... |
|---|---|
| “Scrivere una funzione che filtra questo segnale” | generazione di codice — Crea e salva file .m nel tuo spazio di lavoro |
| “Eseguire questo script e mostrare i risultati” | esecuzione codicecode — Esegue il codice MATLAB e registra l'output, i grafici e gli errori |
| “Controllare il codice per eventuali problemi" | analisi del codice — Utilizza il linter integrato di MATLAB per valutare lo stile e la correttezza |
| “Correggere quell'errore e riprovare” | miglioramento progressivo — AI vede l’errore, modifica il codice e lo riesegue |
| (Automatico) | gestione sessione — Avvia e mantiene la connessione MATLAB in modo trasparente |
Il workflow agentico in azione
Un'interazione tipica si presenta così: Si chiede, “Crea un filtro Butterworth per questo segnale rumoroso." L’IA scrive il codice, lo esegue in MATLAB, verifica se ci sono errori o risultati inattesi, affina l’approccio e fornisce codice funzionante con anche un grafico, senza che tu debba copiare e incollare nulla.
Installazione
Scarica il server base MCP MATLAB da GitHub:
# Clona il repository git clone https://github.com/mathworks/matlab-mcp-core-server # Segui le istruzioni di configurazione per il tuo client AI # (Claude Desktop, VS Code con Copilot, Gemini CLI, ecc.)
Esempio di configurazione (Claude Desktop)
Aggiungi al tuo file claude_desktop_config.json:
{
"mcpServers": {
"matlab": {
"command": "/path/to/matlab-mcp-server",
"args": []
}
}
}
Informazioni su ciò che abilita
Gli strumenti di intelligenza artificiale agentica possono scrivere ed eseguire codice sul tuo computer con accesso ai tuoi file. Questa capacità è potente ma richiede fiducia. Esamina attentamente quanto proposto dall'IA prima di approvare azioni significative, specialmente negli ambienti di produzione.
E se volessi costruire un tuo agente IA che funzioni all’interno di MATLAB e che possa richiamare strumenti e API esterne? Il client MCP di MATLAB lo rende possibile, trasformando MATLAB in una piattaforma per lo sviluppo di intelligenza artificiale agentica.
Principali capacità di MATLAB come host per agenti di intelligenza artificiale
- Scopri gli strumenti: Interroga qualsiasi server MCP per elencare gli strumenti disponibili e i loro schemi di input.
- Strumenti di chiamata: Richiama strumenti esterni con la stessa facilità con cui si chiamano le funzioni MATLAB locali utilizzando
callTool. - Integrazione LLM: Converti gli schemi degli strumenti in oggetti
openAIFunctionper una chiamata di funzione senza interruzioni.
Successivamente, diamo un'occhiata a un esempio di creazione di un workflow agentico all'interno di MATLAB:
% Connettersi a un server MCP
client = mcpClient("path/to/mcp-server");
% Elenca gli strumenti disponibili dal server
strumenti = listTools(client);
disp(tools);
% Converti gli strumenti nel formato funzione OpenAI per LLM
funzioni = openAIFunction(tools);
% Crea una chat con la funzione di chiamata abilitata
chat = openAIChat(“Sei un assistente disponibile.", ...
Strumenti=funzioni);
% Invia una richiesta utente - LLM decide se è necessario uno strumento
risposta = genera(chat, "Qual è il decimo numero primo?");
% Se un LLM richiede una chiamata a uno strumento, eseguila
if isfield(response, 'tool_calls')
toolRequest = response.tool_calls;
risultato = callTool(client, toolRequest);
% Restituisci il risultato al modello LLM per la risposta finale
finalResponse = genera(chat, result);
end
Cosa puoi collegare?
Qualsiasi server MCP funziona con il client MCP di MATLAB. Questo include server per database, API web, sistemi di file, altri servizi di intelligenza artificiale e strumenti personalizzati che hai creato. L'ecosistema sta crescendo rapidamente.
Il Tool Calling è il meccanismo al centro dell'intelligenza artificiale agentica. Il LLM non esegue direttamente le funzioni, ma crea una richiesta strutturata che descrive quale funzione chiamare e con quali argomenti. Il tuo codice quindi esegue la funzione e restituisce i risultati al modello LLM.
Il modello LLM ragiona su cosa calcolare. MATLAB gestisce correttamente come calcolarlo. Quando un utente invia una query, il LLM interpreta l'intento e decide quale strumento chiamare e con quali parametri. MATLAB quindi esegue la funzione e restituisce il risultato. Il modello LLM formatta una risposta in linguaggio naturale. Gli utenti non devono mai scrivere o eseguire codice da soli.
Definizione di uno strumento in MATLAB
% Definisci una funzione che il modello LLM può chiamare
risultato della funzione = addTwoNumbers(x1, x2)
risultato = x1 + x2;
end
% Crea la definizione dello strumento per il modello LLM
addTool = openAIFunction("addTwoNumbers", ...
"Somma due numeri insieme");
addTool = addParameter(addTool, "x1", "number", ...
"Primo numero da aggiungere", Obbligatorio=true);
addTool = addParameter(addTool, "x2", "number", ...
"Secondo numero da aggiungere", Obbligatorio=true);
Creazione di un agente AI semplice
funzione aiAgent(userQuery)
% Inizializza la chat con gli strumenti
chat = ollamaChat("mistral-nemo", Tools=addTool);
% Ottieni la risposta del LLM
risposta = genera(chat, userQuery);
% Verifica se il modello LLM vuole utilizzare uno strumento
if isfield(response, 'tool_calls')
% Estrai i dettagli della chiamata della funzione
funcName = response.tool_calls.function.name;
args = response.tool_calls.function.arguments;
fprintf(“richiesta AI: %s(%f, %f)\n", ...
funcName, args.x1, args.x2);
% Esegui la funzione
risultato = addTwoNumbers(args.x1, args.x2);
fprintf(“risultato: %f\n", risultato);
else
% Nessuna chiamata a strumenti - mostra risposta diretta
disp(response.content);
end
end
Il Tool Calling funziona con più fornitori tramite i LLM con il componente aggiuntivo MATLAB, inclusi:
- OpenAI: Ultimo modello GPT (via API)
- Azure OpenAI: Implementazioni aziendali
- Ollama: Modelli locali come Mistral, GPT-OSS, DeepSeek, and Qwen
Il passaggio dalle dimostrazioni alla produzione richiede modelli che rendano gli agenti affidabili, osservabili e sicuri. Questi approcci sono stati collaudati in sistemi agentici reali.
Pattern 1: ReAct (Ragionamento + Azione)
Il modello di agente più comune alterna tra il pensare e l'agire. Il modello LLM ragiona su cosa fare successivamente, compie un'azione, osserva il risultato e ripete il processo.
% Pattern di loop ReAct
while ~taskComplete
% Thought: Il modello LLM ragiona sul passo successivo
thought = generate(chat, [contesto, "Cosa dovrei fare adesso?"]);
% Azione: Esegui lo strumento se necessario
if needsTool(thought)
risultato = executeTool(thought.tool_call);
contesto = [context; result];
end
% Osservazione: Aggiorna lo stato in base ai risultati
taskComplete = checkCompletion(context);
end
Pattern 2: Tool Chaining
Le attività complesse richiedono più strumenti chiamati in sequenza. L'output di uno diventa l'input del successivo. Ad esempio:
| Step | Azione | Scopo |
|---|---|---|
| 1 | Genera codice | L'intelligenza artificiale scrive codice MATLAB in base alla tua richiesta. |
| 2 | Analizza il codice | Controlla la presenza di errori, problemi di stile e potenziali bug. |
| 3 | Esegui il codice | Esegui in MATLAB e acquisisci l'output. |
| 4 | Valuta i risultati | AI esamina il risultato; corregge gli errori o conferma la riuscita. |
Pattern 3: Intervento umano nel processo (human-in-the-loop)
Per applicazioni critiche per la sicurezza, aggiungi passaggi di approvazione prima che l'agente intraprenda un'azione:
% Pattern Intervento umano nel processo (human-in-the-loop)
proposedAction = generate(chat, query);
% Visualizza l'azione proposta per l'approvazione
fprintf("Proposto: %s\n", proposedAction.description);
approvazione = input("Approve? (y/n): ", "s");
if strcmp(approval, "y")
risultato = executeAction(proposedAction);
else
disp("Azione annullata.");
end
Linee guida pratiche
Diverse linee guida sono fondamentali per garantire agenti affidabili:
- Inizia in modo semplice: fai funzionare un singolo strumento prima di creare catene complesse.
- Aggiungi l’osservabilità: registra ogni chiamata all’LLM e ogni esecuzione degli strumenti, perché ti serviranno per il debug.
- Gestisci gli errori in modo robusto: i modelli LLM possono sbagliare; implementa logiche di retry con backoff esponenziale.
- Stabilisci i limiti: Limita le iterazioni, i budget di token e gli strumenti a cui un agente può accedere.
- Metti alla prova in modo critico: testa volutamente casi limite per vedere dove l’agente si rompe, prima che arrivi agli utenti.
Passaggi successivi consigliati
Blog sull'IA di MATLAB
Rimani aggiornato sulle ultime novità in materia di intelligenza artificiale agentica, Deep Learning e integrazioni LLM con MATLAB.
MATLAB MCP Core Server
Integra MATLAB nei workflow di IA agentica.
Seleziona un sito web
Seleziona un sito web per visualizzare contenuto tradotto dove disponibile e vedere eventi e offerte locali. In base alla tua area geografica, ti consigliamo di selezionare: .
Puoi anche selezionare un sito web dal seguente elenco:
Come ottenere le migliori prestazioni del sito
Per ottenere le migliori prestazioni del sito, seleziona il sito cinese (in cinese o in inglese). I siti MathWorks per gli altri paesi non sono ottimizzati per essere visitati dalla tua area geografica.
Americhe
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)