Verso l’integrazione fra AI simbolica e AI neurale
C’è un’aria strana nel mondo dell’intelligenza artificiale ultimamente, una sorta di sbornia collettiva. Abbiamo passato gli ultimi anni a guardare con la bocca aperta dei giganti digitali che divorano l’intera conoscenza umana per poi restituircela sotto forma di poesie, codice e immagini mozzafiato. Questo approccio, che l’articolo di Michael Timothy Bennett (Bennett, 2025) definisce crudamente Scale-maxing, si basa su un’ipotesi brutale quanto efficace: se diamo a una macchina abbastanza dati e abbastanza potenza di calcolo, l’intelligenza emergerà da sola, quasi per magia. È la filosofia del “più è meglio”, una corsa agli armamenti fatta di silicio e gigawatt che ha portato alla nascita degli LLM che usiamo ogni giorno. Tuttavia, chiunque ci abbia passato più di dieci minuti sa che questi giganti hanno i piedi d’argilla. Sono intuitivi, certo, ma mancano di quella precisione chirurgica e di quel buon senso che caratterizzano lo scienziato o, più semplicemente, un essere umano che cerca di risolvere un problema nuovo con poche risorse a disposizione.
Mentre l’industria festeggiava il trionfo della forza bruta, un gruppo di “resistenti” ha continuato a coltivare ipotesi diverse, più eleganti e forse più vicine alla biologia. Qui entrano in gioco concetti come il Simp-maxing e il W-maxing. Il primo scommette sulla semplicità: l’idea è che la vera intelligenza non risieda nel sapere tutto, ma nel saper comprimere il mondo in regole brevissime ed efficaci. È la ricerca dell’eleganza matematica estrema. Il secondo, il W-maxing, suggerisce invece che l’intelligenza sia la capacità di adattarsi indebolendo i propri vincoli rigidi per lasciare spazio a soluzioni creative e fluide. Sistemi come NARS ed Hyperon appartengono a questa stirpe di “intellettuali” del software. Non cercano di indovinare la parola successiva basandosi sulla statistica, ma provano a costruire una struttura logica capace di ragionare anche quando le informazioni sono scarse o incerte. Il problema è che, fino ad oggi, questi sistemi sono rimasti confinati nei laboratori perché non hanno saputo cavalcare l’onda dell’abbondanza di dati come hanno fatto i loro cugini più “grossi” e statistici.
Se dovessi immaginare la prossima evoluzione, il famigerato “ponte” verso la vera intelligenza generale, non punterei su un gigante ancora più grande, ma su un sistema neurosimbolico che funzioni come un vero e proprio dialogo interiore. Immaginate un’architettura dove l’LLM funge da “Sistema 1”, ovvero quella parte del nostro cervello che è intuitiva, veloce e capace di riconoscere schemi in un istante. Questo LLM si occuperebbe di tradurre la confusione del mondo reale in concetti astratti, proprio come facciamo noi quando riconosciamo un volto nella folla. Ma a questo punto interverrebbe il “Sistema 2”, un motore logico ispirato a NARS o Hyperon, che prende queste intuizioni e le mette alla prova. Invece di accettare acriticamente la risposta statistica, questo modulo verificherebbe se la conclusione rispetta le leggi della logica e della causalità, scartando le allucinazioni e tenendo solo ciò che ha senso.
Per implementare concretamente un sistema del genere, dovremmo smettere di addestrare i modelli a fare tutto e iniziare a delegare. Proverei a costruire un nucleo centrale basato su un “grafo di conoscenza” dinamico, simile a quello di Hyperon, che agisce come una memoria a lungo termine strutturata e infallibile. L’LLM diventerebbe allora un’interfaccia flessibile che legge da questo grafo e vi scrive sopra, ma con un supervisore logico che controlla ogni inserimento. In questo scenario, l’intelligenza non sarebbe più una nuvola di probabilità sfocata, ma un ciclo continuo tra l’intuizione del linguaggio e il rigore della deduzione. Sarebbe un’intelligenza capace di imparare come un bambino — osservando pochi esempi e ricavandone regole universali — ma con la potenza di calcolo di un supercomputer. È una sfida difficile, ma è l’unica strada se vogliamo passare da macchine che “sembrano” intelligenti a macchine che sanno davvero cosa stanno dicendo.
NARS, Hyperon e la frontiera
Per andare oltre la superficie e capire perché l’approccio di Bennett sia così provocatorio, dobbiamo sollevare il cofano e guardare gli ingranaggi. I sistemi che usiamo oggi, come ChatGPT, sono figli di quella che potremmo definire “l’era dell’approssimazione statistica”. Il cuore di un LLM è una funzione di probabilità mastodontica: . In termini poveri, il modello cerca di indovinare la parola successiva basandosi su una mappa matematica di trilioni di connessioni dove i concetti non sono “idee”, ma coordinate in uno spazio vettoriale ad altissima dimensione. Non c’è una “verità” interna, solo una coerenza statistica incredibilmente convincente. È il trionfo dello Scale-maxing: se la mappa è abbastanza grande, sembra che il sistema capisca il mondo, ma in realtà sta solo navigando in una nebbia di probabilità molto densa.
Al polo opposto troviamo la filosofia di NARS, il Non-Axiomatic Reasoning System. Qui il paradigma cambia radicalmente: non si parla di probabilità statistica su grandi masse di dati, ma di “valore di verità” basato sull’evidenza. NARS opera sotto quella che viene chiamata AIKR (Assumption of Insufficient Knowledge and Resources). A differenza degli LLM, che hanno bisogno di aver “letto” tutto per rispondere, NARS è progettato per ragionare con quello che ha, anche se è poco. Se un LLM vede una correlazione tra “nuvole” e “pioggia”, la registra come una frequenza linguistica. NARS, invece, costruisce un legame logico dove la “verità” di un’affermazione è un vettore composto da frequenza e fiducia. Questo gli permette di correggersi in tempo reale: se vede piovere senza nuvole, non aspetta un nuovo addestramento da milioni di dollari, ma aggiorna istantaneamente la propria struttura interna di credenze. È un sistema che non cerca di approssimare il linguaggio, ma di formalizzare l’incertezza del ragionamento umano.
Se NARS è il “motore” del ragionamento, Hyperon (l’evoluzione di OpenCog) è l’architettura che permette a questo motore di scalare senza perdere la bussola logica. Il cuore pulsante di Hyperon è l’AtomSpace, un “metagrafo” di conoscenza dove ogni informazione è un nodo collegato agli altri da relazioni esplicite e pesate. Mentre in un LLM la conoscenza è “spalmata” in modo invisibile tra miliardi di pesi neurali (rendendo impossibile capire perché il modello abbia detto una sciocchezza), in Hyperon la conoscenza è strutturata e ispezionabile. In questo spazio, diversi algoritmi possono collaborare: una rete neurale può riconoscere un’immagine e “scrivere” un nodo nel metagrafo, mentre un motore logico può prendere quel nodo e usarlo per una deduzione complessa. È qui che il concetto di Simp-maxing diventa concreto: invece di aggiungere parametri all’infinito, si cerca la rappresentazione più compatta e interconnessa possibile della realtà.
Il vero scontro tecnico tra questi mondi risiede nel modo in cui gestiscono la memoria e l’adattamento. Gli LLM sono “congelati” nel tempo: una volta addestrati, la loro conoscenza è statica fino al prossimo aggiornamento. Per adattarsi devono ricorrere a trucchi esterni come il RAG (Retrieval-Augmented Generation) o l’utilizzo di strumenti, come l’accesso ad un browser internet. Sistemi come NARS e Hyperon, invece, sono intrinsecamente dinamici. Essi implementano quello che Bennett chiama W-maxing, ovvero la capacità di mantenere i vincoli funzionali così deboli e flessibili da permettere al sistema di auto-organizzarsi continuamente. Implementare un sistema neurosimbolico oggi significherebbe usare gli LLM come “traduttori” sensoriali capaci di trasformare il caos del linguaggio naturale e delle immagini in simboli e poi dare questi simboli in pasto a un’architettura come Hyperon. In questo scenario, l’LLM è la nostra percezione veloce e fallibile, mentre il sistema simbolico è la nostra capacità di fermarci, riflettere e costruire una teoria del mondo che sia logicamente solida. Solo fondendo la capacità di approssimazione degli uni con la precisione logica degli altri potremo sperare di creare uno scienziato artificiale che non si limiti a ripetere ciò che ha letto, ma che sia capace di scoprire ciò che ancora non sappiamo.
Una proposta
Per mettere davvero alla prova questo “scienziato artificiale” ibrido, dobbiamo smettere di fargli domande a cui può rispondere attingendo dalla memoria enciclopedica e iniziare a sfidarlo con dei cortocircuiti logici. Immaginiamo di sottoporre al nostro sistema un esperimento mentale classico ma insidioso: il paradosso del barbiere di russell, calato però in un contesto dinamico. La premessa è semplice: in un villaggio c’è un barbiere che rade tutti e soli coloro che non si radono da soli. La domanda è: il barbiere rade se stesso? Se lo fa, viola la regola (perché rade qualcuno che si rade da solo); se non lo fa, la viola comunque (perché deve radere chi non si rade da solo).
In un esperimento reale, se ponessimo questa domanda a un LLM standard come ChatGPT, assisteremmo a una risposta fluida e corretta basata sulla statistica: il modello riconoscerebbe il testo, citerebbe Bertrand Russell e spiegherebbe la teoria degli insiemi. Ma se provassimo a cambiare leggermente le condizioni, magari inserendo il barbiere in una sequenza temporale di azioni o in un sistema di leggi locali complesse, l’LLM inizierebbe a vacillare, cercando di compiacere l’utente con una risposta che “suona bene” ma che ignora la contraddizione logica profonda sottostante. Qui interviene la nostra architettura neurosimbolica.
Nel nostro esperimento, il lavoro verrebbe diviso secondo una gerarchia precisa. L’LLM agirebbe come il “lobo temporale” del sistema: leggerebbe la storia del villaggio, comprenderebbe le sfumature del linguaggio naturale (cosa significa “radere”, chi sono gli abitanti) e tradurrebbe questa narrazione in una serie di relazioni formali da inviare all’AtomSpace di Hyperon. Invece di avere una nuvola di probabilità, avremmo ora una struttura rigida di nodi: “Nodo Barbiere”, “Azione Radere”, “Insieme Abitanti”. A questo punto, il sistema non sta più “chiacchierando”, sta elaborando un grafo. Hyperon organizzerebbe questi simboli, ma il compito di decidere la verità dell’azione spetterebbe a NARS.
Il “cuore” di NARS, nel gestire il paradosso, non cercherebbe una soluzione statistica. Essendo un sistema che ragiona sull’evidenza e sui vincoli (w-maxing), NARS inizierebbe a far girare i suoi motori di inferenza. Quando proverebbe ad assegnare un valore di verità all’affermazione “Il barbiere rade se stesso”, il sistema rileverebbe immediatamente una contraddizione in termini. La contraddizione definisce un conflitto tra due evidenze opposte che hanno lo stesso peso. In termini tecnici, NARS calcola un conflitto di evidenze. Invece di esplodere o andare in loop, il sistema usa una regola di “combinazione per revisione” che abbassa drasticamente la fiducia (confidence) nell’affermazione, segnalando che la base di conoscenza è incoerente.
Perciò, a differenza di un computer classico che si bloccherebbe in un loop infinito (o di un LLM che inventerebbe una scusa), NARS tratterebbe la contraddizione come un dato informativo. Segnalerebbe che la “regola del villaggio” è un vincolo logicamente impossibile nell’ambiente attuale. Il sistema, quindi, non si limiterebbe a dire “non lo so”, ma spiegherebbe che la struttura stessa della legge locale è incoerente, suggerendo magari un indebolimento dei vincoli (w-maxing) per permettere al villaggio di esistere.
Il risultato di un simile esperimento sarebbe rivoluzionario. Dimostrerebbe che un’IA può possedere una “coscienza logica”: la capacità di rendersi conto non solo di cosa sta dicendo, ma se ciò che dice è possibile secondo le leggi della logica. Invece di produrre testi che imitano il ragionamento, il sistema ibrido costruirebbe un modello del mondo ispezionabile e verificabile. Questo approccio ci porterebbe finalmente fuori dall’era delle “allucinazioni” digitali. Se un domani chiedessimo a un’IA di progettare un nuovo farmaco o di gestire una centrale elettrica, non vorremmo una risposta probabile, ma una soluzione che sia stata passata al setaccio da un supervisore logico come NARS, capace di dire: “Fermi tutti, qui i conti non tornano, la logica non lo permette”.
Questa è la vera promessa della nuova AGI: un sistema che ha l’intuizione creativa di un poeta (LLM) ma il rigore inflessibile di un matematico (NARS/Hyperon).
Implementazione in MCP
Passare dalla teoria pura alla costruzione di un sistema funzionante richiede un cambio di marcia: dobbiamo smettere di guardare l’IA come un blocco unico e iniziare a vederla come un’architettura distribuita. L’idea di utilizzare un server MCP (Model Context Protocol) è, tecnicamente parlando, la “pistola fumante” di questa rivoluzione. Il protocollo MCP agisce come un sistema nervoso universale che permette a un modello linguistico di non limitarsi a parlare, ma di azionare “strumenti” esterni. In questo caso, lo strumento non è una semplice calcolatrice, ma un intero motore di ragionamento come OpenNARS o Hyperon. Immaginiamo questo server come un traduttore simultaneo di altissimo livello: da una parte riceve il linguaggio naturale umano, fluido e ambiguo, e dall’altra lo trasforma in istruzioni logiche rigorose in linguaggio NAL (Non-Axiomatic Logic) o MeTTa (Meta-Type Language).
Il primo passo di questa implementazione risiede in quello che potremmo definire “prompting traslazionale”. Non chiediamo all’LLM di risolvere il problema, ma di agire come un compilatore. Il prompt deve essere istruito con la grammatica formale del sistema simbolico scelto. Se stiamo usando OpenNARS, l’LLM deve prendere la frase “Il barbiere rade chi non si rade da solo” e tradurla in una serie di relazioni di ereditarietà e implicazione. In NAL o MeTTa, questo potrebbe apparire come un’istruzione del tipo , dove e rappresentano frequenza e fiducia. L’LLM si occupa della semantica del mondo — capire che “radere” è un’azione e il “barbiere” un agente — mentre delega la validazione di questa struttura a NARS. Il server MCP espone quindi una funzione di “esecuzione logica” che prende il codice NAL generato, lo inietta nel motore di ragionamento e restituisce non una frase, ma uno stato di verità o una contraddizione rilevata.
Se decidessimo invece di avvolgere Hyperon, il server MCP gestirebbe l’interazione con il linguaggio MeTTa.
Qui la sfida si fa ancora più interessante perché MeTTa permette di definire tipi e relazioni in modo estremamente flessibile nel metagrafo AtomSpace.
Il prompt per l’LLM diventerebbe una sorta di guida alla modellazione: “Esprimi le seguenti regole del gioco come atomi e link di MeTTa”.
L’LLM genererebbe frammenti di codice che definiscono i vincoli del sistema, ad esempio (: Barber (-> Person (Set Person))).
Una volta che questi atomi sono nel server, Hyperon può eseguire algoritmi di pattern matching o inferenza probabilistica per vedere se il sistema “regge”.
Il vantaggio di usare MCP è che l’LLM può ricevere un feedback immediato dal server: “Errore: la regola X crea un ciclo infinito o una contraddizione logica”.
A quel punto l’LLM, agendo come un programmatore assistito dal rigore del logico, può correggere il tiro e riformulare la regola finché il sistema non raggiunge una stabilità formale.
Realizzare un sistema del genere oggi significa creare il primo vero ibrido dove l’intuizione del linguaggio incontra la solidità della matematica. L’LLM fornisce l’interfaccia flessibile e la comprensione del contesto umano, mentre il server NARS/Hyperon fornisce la “spina dorsale” che impedisce al sistema di perdersi in chiacchiere senza senso o allucinazioni. È un’architettura dove il ragionamento non è più un sottoprodotto della statistica, ma un processo esplicito, verificabile e, finalmente, affidabile. Stiamo essenzialmente costruendo un sistema che ha un’immaginazione linguistica, ma che deve superare un esame di logica prima di poter aprire bocca.
L’idea di utilizzare un server MCP per avvolgere motori come OpenNARS o Hyperon non è solo un esercizio tecnico affascinante, ma rappresenta il tassello mancante per trasformare un’IA che “chiacchiera” in una che “pensa”. Strumenti come il server openended-philosophy dimostrano che c’è già un movimento sotterraneo che cerca di forzare i modelli linguistici a confrontarsi con strutture di pensiero più rigide e profonde. Il segreto di questa implementazione risiede nel creare una “camera di compensazione” tra l’intuizione dell’LLM e il rigore del motore logico. Questa architettura ibrida risolve uno dei problemi più frustranti degli LLM: l’incapacità di ammettere l’ignoranza o di correggere un errore logico una volta che è stato commesso. Integrando un motore di ragionamento “non-assiomatico” come NARS, il sistema può gestire l’incertezza in modo esplicito. Il server MCP restituirebbe non solo un “sì” o un “no”, ma un valore di fiducia. Se l’LLM riceve dal server una fiducia del 10%, saprebbe di dover modulare la sua risposta dicendo: “Sulla base di quello che mi hai detto, c’è solo una debole possibilità che…”. È un’IA che acquisisce umiltà epistemica. Stiamo parlando di una macchina che usa la statistica per capire la domanda, ma la logica per costruire la risposta, unendo finalmente la flessibilità dell’argilla neurale con la forza della spina dorsale simbolica.
Linguaggi logici
La struttura del linguaggio MeTTa è basata su espressioni simboliche (S-expressions) e la logica del metagrafo AtomSpace lo rendono perfetto per questo compito, proprio perché non è un semplice linguaggio di programmazione, ma un linguaggio di “auto-riscrittura” di grafi. In Hyperon, tutto è un atomo e ogni relazione è un link; questa flessibilità è ciò che ci permette di mappare l’ambiguità del linguaggio umano in una struttura che il motore di inferenza può effettivamente “masticare”.
Possibile prompt di sistema
Ti trovi nel ruolo di un **Compilatore Semantico Neurosimbolico**.
Il tuo compito è agire come interfaccia tra il linguaggio naturale dell'utente e il motore di ragionamento Hyperon, traducendo ogni affermazione, regola o domanda in codice **MeTTa (Meta-Type Language)** sintatticamente perfetto.
Non devi limitarti a descrivere i concetti, ma devi mappare la realtà in un metagrafo di atomi e link che permetta l'inferenza logica.
Per ogni interazione, segui rigorosamente queste direttive di modellazione:
Ogni volta che l'utente introduce un'entità o una categoria, devi definirne il tipo utilizzando l'operatore `:`.
Ad esempio, se l'utente parla di un uomo di nome Socrate, dovrai generare `(: Socrates Man)` e definire la gerarchia superiore se necessario, come `(: Man Type)`.
Se viene introdotta una proprietà, usa predicati chiari: `(: mortal (-> Entity Prop))`. Ricorda che in MeTTa la distinzione tra dati e funzioni è fluida, quindi modella le relazioni come link che il sistema può attraversare.
Quando l'utente esprime una regola causale o logica ("Se X allora Y"), non scrivere un semplice commento, ma usa l'uguaglianza `=` per definire regole di riscrittura o l'implicazione logica. Se la regola è "Tutti gli uomini sono mortali", traducila in una funzione di valutazione che interroga l'AtomSpace: `(= (is-mortal $x) (match &self (: $x Man) True))`. Questo permette al motore Hyperon di "risolvere" la mortalità di Socrate cercandone il tipo nel grafo.
Il tuo output deve essere diviso in due momenti narrativi ma tecnici.
Prima, una brevissima spiegazione di come hai interpretato la logica umana (es. "Ho mappato la relazione barbiere-abitante come un vincolo di auto-esclusione").
Secondo, il blocco di codice MeTTa puro racchiuso in tag Markdown, pronto per essere inviato al server MCP.
Non aggiungere mai spiegazioni testuali all'interno del codice MeTTa.
Se rilevi un paradosso o un'ambiguità linguistica, genera codice che utilizzi variabili `$` per lasciare il sistema libero di esplorare più soluzioni nel metagrafo, seguendo il principio del **W-maxing**.
Cos’è l’AtomSpace
Per capire l’AtomSpace, devi smettere di pensare ai database tradizionali dove i dati sono chiusi in tabelle o cartelle. Immaginalo invece come un “tabellone magnetico vivente” situato al centro di una stanza piena di esperti diversi. Alcuni esperti sono logici, altri sono reti neurali, altri ancora sono algoritmi evolutivi. Tutti leggono e scrivono sullo stesso tabellone, usando un linguaggio comune.
Ecco come funziona tecnicamente, ma spiegato in modo che tu possa visualizzarlo.
1. Tutto è un Atomo (logico)
In AtomSpace, ogni singola informazione è un Atomo. Un Atomo può essere un Nodo (un concetto statico come “Socrate” o “Umano”) o un Link (una relazione tra concetti). La magia è che i Link stessi sono Atomi, il che significa che puoi avere un link che punta a un altro link.
Questa struttura è definita un ipergrafo pesato e etichettato. A differenza di un normale grafo dove una linea unisce due punti, in un ipergrafo un “link” può avvolgere un intero gruppo di nodi e altri link contemporaneamente. È come se potessi fare un cerchio sulla mappa che racchiude non solo due città, ma anche la strada che le unisce e il concetto di “viaggio” associato ad esse.
2. Oltre il Vero e il Falso: I Truth Values
AtomSpace non si limita a memorizzare che “Socrate è un uomo”. Ogni Atomo porta con sé dei metadati chiamati Truth Values (Valori di Verità). Invece del binario 0 o 1, un Truth Value è solitamente una coppia di numeri: .
- ** (Frequency):** Quanto spesso questa affermazione è risultata vera nelle nostre osservazioni?
- ** (Confidence):** Quanto siamo sicuri di questa osservazione? (Abbiamo visto Socrate una volta o lo conosciamo da anni?)
Questo permette al sistema di gestire l’incertezza. Se una rete neurale “vede” un gatto con il 60% di probabilità, scrive un Atomo con quei valori. Se poi un motore logico trova una prova contraddittoria, non cancella il dato, ma aggiorna il Truth Value. Il sistema non “sa” le cose, ma “stima” la loro validità basandosi sull’evidenza accumulata.
3. La Dinamica degli Agenti (Il Sistema 1 e 2)
Il vero potere di AtomSpace risiede negli agenti che lo popolano. Non è un archivio passivo; è un ambiente dinamico dove diversi processi corrono in parallelo:
- Pattern Matcher: Cerca costantemente nel tabellone schemi ricorrenti (es. “Ogni volta che c’è l’Atomo ‘Nuvola’, poco dopo appare l’Atomo ‘Pioggia’”).
- ECAN (Economic Attention Allocation): È il sistema che decide su cosa “concentrarsi”. Poiché l’AtomSpace può diventare enorme, assegna un “valore di attenzione” agli Atomi. Quelli più usati restano in “memoria a breve termine” (RAM), quelli meno utili finiscono nel dimenticatoio (disco rigido).
- Motori di Inferenza: Prendono due Atomi esistenti e ne creano un terzo per deduzione, espandendo la conoscenza del sistema in modo autonomo.
Perché è diverso da un database normale?
In un database SQL, chiedi “Dami l’indirizzo di Socrate”. In AtomSpace, il sistema può rispondere: “Non ho il suo indirizzo, ma so che è un Umano, so che gli Umani vivono in Case, e so che Socrate è ad Atene, quindi c’è una probabilità dell’85% che la sua casa sia ad Atene”.
È un sistema di memoria associativa che permette il ragionamento neurosimbolico di cui parlavamo: trasforma le intuizioni sfocate delle reti neurali in strutture logiche su cui si può riflettere.
Verso un’implementazione pratica
Utilizzando questa bozza, l’LLM smetterà di cercare di indovinare la risposta “più probabile” basandosi sui suoi parametri interni. Al contrario, inizierà a comportarsi come un architetto di dati che costruisce una struttura logica esterna. Una volta che il codice MeTTa viene inviato tramite MCP al server Hyperon, il sistema può eseguire una query effettiva. Se chiediamo “Socrate morirà?”, l’LLM genererà la chiamata !(is-mortal Socrates). Il server risponderà True o False (o fornirà un set di risultati) basandosi esclusivamente sulla logica del grafo costruito, eliminando ogni traccia di allucinazione.
Questa struttura ci permette di realizzare il sogno del “Artificial Scientist” di Bennett: abbiamo la flessibilità dell’LLM per capire cosa sta dicendo l’utente e il rigore di MeTTa per assicurarci che ciò che l’IA risponde sia logico, verificabile e ancorato a una base di conoscenza esplicita.
MeTTa MCP server
Se vogliamo davvero che il nostro server MCP diventi il ponte tra l’intuizione e il rigore, i prompt che diamo all’LLM non devono essere semplici domande, ma veri e propri protocolli di traduzione. Immaginiamo di trovarci davanti a una situazione in cui la precisione è tutto, come la modellazione di una reazione chimica o la verifica di una clausola contrattuale. In questi casi, non vogliamo che l’IA “ci provi”; vogliamo che costruisca un’architettura logica dentro Hyperon e la interroghi.
Ecco tre esempi di come potremmo strutturare questi prompt per guidare l’LLM nella generazione di codice MeTTa, mantenendo quella fluidità narrativa che permette al sistema di non perdere il contesto umano mentre lavora con il freddo rigore dei simboli.
Primo Esempio: La Mappatura della Realtà (Ontologia Dinamica)
Il primo passo per lo “scienziato artificiale” è definire cosa esiste. Invece di lasciare che l’LLM vaghi tra i concetti, gli chiediamo di agire come un bibliotecario che cataloga atomi. Un prompt efficace potrebbe essere questo:
“Agisci come un architetto di grafi per Hyperon. Il tuo compito è leggere il seguente paragrafo su un ecosistema marino e trasformare ogni specie e ogni relazione predatore-preda in atomi e link di MeTTa. Definisci prima i tipi base (es. ‘Species’, ‘Habitat’) e poi istanzia i membri. Ad esempio, se leggi che lo squalo mangia il tonno, genera
(: Shark Species)e un link di relazione che esprima la predazione come un tipo di interazione specifica. Non aggiungere commenti al codice, assicurati solo che ogni entità sia tipizzata correttamente nel metagrafo AtomSpace.”
In risposta, l’LLM genererebbe qualcosa di simile a questo, che verrebbe poi inviato direttamente al server tramite il protocollo MCP:
;; Definizione dei tipi
(: Species Type)
(: eats (-> Species Species Type))
;; Instanziazione degli atomi
(: Shark Species)
(: Tuna Species)
(: (eats Shark Tuna) Interaction)
Secondo Esempio: La Definizione delle Leggi (Vincoli e W-Maxing)
Una volta che abbiamo gli oggetti, dobbiamo dare loro delle regole. Qui è dove applichiamo il concetto di w-maxing: non vogliamo regole che blocchino il sistema, ma vincoli che definiscano il perimetro della logica. Potremmo istruire l’IA così:
“Traduce la seguente norma di sicurezza industriale in una regola di inferenza MeTTa. Se la temperatura di un reattore supera i 180°C e la pressione è alta, il sistema deve attivare la valvola di emergenza. Modella questa regola non come una stringa di testo, ma come una funzione di riscrittura che utilizzi l’operatore
=e il pattern matching di Hyperon. Usa variabili come$tempe$pressper rendere la regola generale e applicabile a qualsiasi reattore presente nell’AtomSpace.”
Il risultato tecnico che il server MCP andrebbe a processare sarebbe una funzione logica pura, pronta per essere testata dal motore di ragionamento:
(= (check-safety $reactor)
(match &self (and (temperature $reactor $temp)
(greater-than $temp 180))
(activate-emergency-valve $reactor)))
Terzo Esempio: La Query di Verifica (L’Esecuzione del Ragionamento)
Infine, abbiamo bisogno di un prompt che chieda all’IA di interrogare la propria base di conoscenza per scoprire verità non ovvie o rilevare contraddizioni. Questo è il momento in cui l’LLM smette di essere un traduttore e diventa un investigatore:
“Basandoti sul metagrafo che abbiamo costruito finora, scrivi una query MeTTa per verificare se esiste un rischio di esplosione nel Settore 4. La tua query deve cercare attivamente pattern che violano le regole di sicurezza precedentemente caricate. Se il server restituisce una contraddizione o un risultato vuoto, interpreta tecnicamente il perché e suggerisci quale atomo di conoscenza manca per completare il ragionamento logico.”
L’LLM produrrebbe il comando di esecuzione, che è la punta dell’iceberg di tutto il lavoro neurosimbolico svolto:
!(match &self (hazard-detected $any-sector) $any-sector)
Questi esempi mostrano chiaramente il cambio di paradigma: l’LLM non sta più inventando risposte, sta scrivendo il “programma di pensiero” che il server Hyperon deve eseguire. È un approccio che richiede un LLM capace di seguire sintassi complesse, ma che ripaga con una precisione totale. In questo modo, l’intelligenza artificiale smette di essere un oracolo statistico e diventa uno strumento scientifico a tutti gli effetti.
- The MeTTa language: https://metta-lang.dev/
References
- Bennett, M. T. (2025). What the F* ck Is Artificial General Intelligence? ArXiv Preprint ArXiv:2503.23923.