Da quando Golden Gate Claude, sono stato affascinato dal concetto di “steering”: l’idea che si possa guidare gli output degli LLM tramite la manipolazione diretta delle attivazioni del modello durante l’inferenza.
DeepSeek V4 Flash
Sono stato ispirato a scrivere questo post dal recente progetto di antirez, DwarfStar 4, che è una versione di llama.cpp che è stata ridotta a funzionare solo con DeepSeek-V4-Flash. Cosa è speciale di questo modello? Potrebbe essere ciò che molti ingegneri hanno aspettato: un modello locale abbastanza buono da competere con almeno la parte bassa della frontiera del modello agente di codifica.
Poiché la guida richiede un modello locale, è ora pratico per molti ingegneri di provare per la prima volta. E infatti, antirez ha incorporato la guida in DwarfStar 4 come cittadino di prima classe. Attualmente è molto rudimentale (basicamente solo l’esempio di “verbosità” giocoso che puoi replicare tramite il prompt), ma la prima release è stata di solo otto giorni fa. Ho l’intenzione di seguire questo progetto da vicino.
Come funziona la guida
L’idea di base dietro la guida è quella di estrarre un concetto (come “rispondere concisamente”) dallo stato cerebrale interno del modello, quindi raggiungere durante l’inferenza e aumentare le attivazioni numeriche che formano quel concetto.
Un modo per farlo è quello di alimentare il modello con lo stesso set di cento prompt due volte, una volta con i prompt normali e una volta con le parole “rispondere concisamente” aggiunte. Poi misura la differenza nelle attivazioni del modello per ogni coppia di prompt (sottraendo una matrice di attivazione dall’altra). Quello è il tuo “vettore di guida”. In teoria, puoi andare e aggiungere quel vettore alla stessa layer di attivazione per qualsiasi prompt e ottenere lo stesso effetto (del modello che risponde concisamente).
Un altro modo più sofisticato per farlo è quello di addestrare un secondo modello per estrarre “caratteristiche” dalle attivazioni del modello: pattern di comportamento che sembrano comparire insieme. Poi puoi provare a mappare quelle caratteristiche di nuovo a concetti individuali, e aumentarle nello stesso modo. Questo è più o meno ciò che Anthropic sta facendo con gli autoencoder sparsi. È lo stesso principio dell’approccio ingenuo, ma ti consente di catturare pattern più profondi (a costo di essere molto più costoso in termini di tempo, calcolo e expertise).
Perché la guida è interessante
La guida sembra essere un codice segreto. Invece di assemblare con cura un set di allenamento che cerca di spingere il modello verso la parte “intelligente” della distribuzione dei dati di allenamento, perché non semplicemente andare a scoprire il “dial intelligente” nel cervello del modello e ruotarlo tutto a destra?
Sembra anche essere un modo più elegante per regolare la maniera in cui i modelli parlano. Invece di farsi la mano con il prompt (aggiungendo o rimuovendo qualificatori come “devi”), non potremmo semplicemente avere un pannello di controllo di slider come “succintezza/verbosità” o “conscientiosità/velocità” e spostarli direttamente?
Infine, è solo cool. Guardare Golden Gate Claude che riluttantemente trascina ogni frase di nuovo al Golden Gate Bridge è altrettanto affascinante e sconcertante delle aneddoti neurologiche di Oliver Sacks. Che se il tuo stesso cervello fosse stato modificato in modo simile? Sarebbe ancora te?
Perché la guida non è stata usata
Perché non usiamo la guida di più, allora? Perché ChatGPT e Claude Code non hanno già un pannello di controllo di guida dove puoi regolare il cervello del modello in tempo reale? Una ragione è che la guida è un po’ un’idea di “classe media” nella ricerca AI.
È sotto la grande industria AI, che può manipolare i propri modelli direttamente senza dover fare la chirurgia cerebrale durante l’inferenza. Anthropic sta lavorando su questo, ma principalmente da un punto di vista di interpretabilità e sicurezza (per quanto ne so). Quando vogliono che un modello si comporti in un certo modo, non si fanno la mano con la guida, si addestrano il modello.
La guida è anche fuori portata per gli utenti AI regolari come te e me, che utilizzano LLM tramite un API e quindi non hanno accesso ai pesi del modello o alle attivazioni necessarie per guidare il modello. Solo OpenAI può identificare o esporre i vettori di guida per GPT-5.5, per esempio. Potremmo fare questo per i modelli con pesi aperti, ma fino a poco tempo fa (più su questo dopo), era un non-starter.
Commenti (0)
Accedi o Registrati per candidarti