Output Strutturato negli LLM: JSON Schema Spiegato

Chiedi a un modello di rispondere in JSON e nella maggior parte dei casi json.loads() funziona senza problemi. I casi che ti costano una sessione di debug sono altri: un commento su una riga dentro l’oggetto, un code fence markdown che lo avvolge, una chiave scritta userEmail quando il tuo codice si aspetta user_email. Un prompt più rigido (“rispondi SOLO con l’oggetto JSON, nessun altro testo”) rende questi casi più rari. Non li rende impossibili, perché il modello può comunque ignorare la richiesta. Con l’output strutturato la richiesta diventa superflua: passi all’API un JSON Schema, che vincola il campionamento dei token del modello così che la risposta debba rispettarlo. ...

6 novembre 2026 Â· 9 minuti Â· 1844 parole Â· SpaghettiCoder

Come Costruire un LLM Eval: Testare i Prompt Come Codice

Perché “sembra giusto” non è un test per un prompt Stringi il testo di un prompt che instrada i ticket, lo provi sui tre esempi che hai aperti nel tuo notebook e lo metti in produzione. Una settimana dopo, i reclami di fatturazione che prima finivano nella coda giusta cominciano a finire in “domanda”. Non i tre casi che hai controllato: gli altri quattrocento che non hai controllato. Niente va in crash. Non c’è nessuno stack trace. Il prompt, letto ad alta voce, suona ancora bene. ...

30 ottobre 2026 Â· 9 minuti Â· 1730 parole Â· SpaghettiCoder

Function Calling e Tool Use negli LLM, Spiegati

Cosa fa davvero il function calling negli LLM Chiedi a un modello “che tempo fa ad Austin in questo momento” senza nessuna connessione con il mondo esterno, e hai due opzioni: dire che non lo sa, o inventare qualcosa. Il function calling offre una terza opzione. Il modello descrive cosa gli serve, passa quella descrizione al tuo codice e aspetta una risposta vera prima di rispondere. Il nome è un po’ fuorviante. Il modello non chiama niente. Emette un blocco di dati strutturati che dice quale tool vuole e con quali argomenti, e la tua applicazione decide se eseguirlo e cosa fare con il risultato. “Tool use” è il termine più accurato, ed è quello usato nella documentazione di Anthropic; OpenAI e Google parlano quasi sempre di function calling. Il meccanismo è lo stesso sotto entrambi i nomi. Il modello produce solo una richiesta, mai l’effetto collaterale. ...

22 ottobre 2026 Â· 8 minuti Â· 1546 parole Â· SpaghettiCoder

Cosa Sono gli Embedding e la Ricerca Vettoriale

Cerca “cucciolo” in un sistema che confronta solo le parole chiave e un documento sull’addestramento dei cani non comparirà, anche se chiunque legga entrambi li definirebbe strettamente collegati. La ricerca per parole chiave confronta stringhe di testo. Non sa che “cucciolo” e “cane” significano quasi la stessa cosa. Gli embedding risolvono proprio questo. Trasformano un testo in una lista di numeri, un vettore, posizionato in modo che testi con significato simile finiscano vicini ad altri testi con significato simile, indipendentemente dalle parole usate. ...

15 ottobre 2026 Â· 8 minuti Â· 1514 parole Â· SpaghettiCoder

Come Funzionano gli Agenti CLI di Coding

Cosa distingue un agente CLI di coding da un altro Chiedi a un agente CLI di coding di sistemare un test che fallisce e non ti risponderà con un suggerimento. Legge l’output del test, apre il file, modifica una riga, rilancia il test e ti riporta il risultato una volta che passa. Quel ciclo è il prodotto, non la finestra di chat. Il modello dentro il ciclo si prende la maggior parte dell’attenzione, ed è anche la parte che cambia più in fretta: i vendor ne inseriscono di nuovi ogni pochi mesi, e diversi agenti ti lasciano scegliere quale usare. Quello che resta fermo è l’harness costruito attorno al modello — quali tool può raggiungere, come gestisce il contesto, cosa può eseguire senza chiedere, e dove girano quei comandi. Due agenti con lo stesso modello possono comportarsi in modo molto diverso per questo motivo. L’harness è ciò che stai davvero scegliendo. ...

23 settembre 2026 Â· 8 minuti Â· 1643 parole Â· SpaghettiCoder

Cos'è un Modello System One e Quando Usarlo

Perché tante chiamate LLM sono in realtà classificazioni Buona parte del traffico LLM in produzione restituisce una sola parola. Va inoltrato questo ticket oppure no. Spam o non spam. Quale dei sei handler gestisce questo evento. Per ottenere quella parola mandi l’intero prompt a un modello general-purpose, aspetti che decodifichi una risposta token dopo token, ed estrai un oggetto JSON dal risultato. Paghi il prezzo e la latenza della generazione di testo, e quello che torna indietro è una decisione che starebbe in un enum. ...

23 settembre 2026 Â· 7 minuti Â· 1325 parole Â· SpaghettiCoder

Come Eseguire un LLM in Locale con Ollama

Ogni chiamata a un’API LLM ospitata manda il tuo prompt sul server di qualcun altro e ti fattura per token. Se perdi la connessione di rete, smette di rispondere. Ollama toglie di mezzo entrambi i problemi: scarica un modello open-weight sulla tua macchina e lo serve tramite un’API REST su localhost:11434. Un solo binario fa da gestore dei modelli, client di chat e server. Cosa fa davvero Ollama Ollama avvolge llama.cpp e motori di inferenza simili, così non devi mai toccare un flag del compilatore o un percorso di libreria CUDA. ollama pull llama3.2 scarica un file di modello quantizzato (formato GGUF) dal registro di Ollama invece che da Hugging Face, anche se può importare file GGUF anche da lì. Quando esegui il modello, quei pesi passano a un server in background: li carica in RAM (o in VRAM, se trova una GPU compatibile), li tiene residenti per qualche minuto dopo l’ultima richiesta così la successiva è veloce, e li scarica non appena smetti di fare domande. ...

19 settembre 2026 Â· 7 minuti Â· 1439 parole Â· SpaghettiCoder

Cos'è il RAG: la Retrieval-Augmented Generation Spiegata

Chiedi a un LLM generico qual è la politica di reso della tua azienda o cosa dicono i ticket di supporto della settimana scorsa, e otterrai o un “non lo so” o una risposta inventata ma plausibile. La sua conoscenza si ferma a quello che c’era nei dati di addestramento. Non ha mai visto i tuoi documenti e non può andare a cercarli a metà conversazione. La retrieval-augmented generation (RAG) risolve proprio questo: prima che il modello risponda, un passaggio separato trova il testo rilevante nei tuoi dati e lo passa al modello come parte del prompt. ...

12 settembre 2026 Â· 8 minuti Â· 1554 parole Â· SpaghettiCoder