Els prompts no són màgia: vectors latents, gravetat estadística i la frustració de no poder obrir el cervell d’un LLM
La sensació estranya
Últimament estic entrant bastant dins el forat dels LLMs.
No només usar-los. No només "fes-me un CRUD".
Sinó intentar entendre què collons passa realment aquí dins.
I com més mires, més apareix una sensació rara:
sembla que els prompts no siguin instruccions, sinó una mena de forces estadístiques.
No sembla programació clàssica. No sembla semàntica formal. No sembla un AST.
Sembla més aviat intentar empènyer una massa gegantina dins un espai latent enorme esperant que aterri a una regió útil.
El problema mental dels enginyers
Quan vens del món clàssic del software, el cervell espera coses com:
input -> parsing -> semàntica -> execució
Però amb LLMs la sensació és:
text -> embeddings -> trajectòria latent -> distribució probabilística
I això és bastant desconcertant.
Perquè no tens garanties fortes.
No hi ha:
PromptQuality(prompt) = 0.87
No pots demostrar formalment que un prompt és millor.
La majoria del temps:
- proves coses
- compares outputs
- ajustes wording
- repeteixes
- fas una mena d'alquímia guiada per estadística.
La pregunta absurda però important
En un moment donat em vaig preguntar:
quina és la coordenada vectorial entrenada de "hola món"?
I encara que la pregunta sembli absurda… en realitat apunta bastant al cor del problema.
Perquè dins un Transformer, els tokens sí que es converteixen en vectors.
Alguna cosa conceptualment similar a:
hola -> [0.021, -0.44, 1.88, ...]
món -> [-0.77, 0.12, 0.003, ...]
amb milers de dimensions.
Però el més bèstia és que:
"hola món" no té una coordenada fixa.
Depèn del:
- context
- posició
- sistema prompt
- historial
- tokens previs
És més una trajectòria latent que no pas una coordenada única.
El mur dels models tancats
Aquí arriba una frustració important.
Amb models tancats:
- GPT
- Claude
- Gemini
no pots veure pràcticament res.
Només tens:
prompt -> output
No pots:
- inspeccionar neurones
- veure activacions
- tocar embeddings
- mirar circuits
- fer probes internes
És una caixa negra gegant.
Però amb models open-source sí que pots obrir-los
I aquí la cosa es torna molt més interessant.
Amb models open-source:
- Llama
- Qwen
- Mistral
- GPT-2
pots literalment inspeccionar el cervell.
Per exemple:
embedding = model.model.embed_tokens.weight
I tens la taula sencera d'embeddings.
També pots mirar activacions internes:
hidden_states = outputs.hidden_states
I començar a investigar:
- quines capes reaccionen
- quines neurones s'activen
- com canvia un prompt respecte un altre
- quina trajectòria latent genera una frase.
La meva GPU és una patata
Aquí hi ha una altra realitat divertida.
Tinc:
- una GTX 1650
- 16GB de RAM
O sigui:
homelab de pobre
Però curiosament per interpretabilitat això no és tan greu.
De fet, models petits són probablement millors per començar.
Per exemple GPT-2 small.
Amb eines com TransformerLens pots fer experiments molt interessants:
from transformer_lens import HookedTransformer
model = HookedTransformer.from_pretrained("gpt2-small")
prompt = "hola món"
tokens = model.to_tokens(prompt)
logits, cache = model.run_with_cache(tokens)
print(tokens)
print(cache["hook_embed"].shape)
print(cache["blocks.0.hook_resid_pre"].shape)
Això ja et deixa mirar:
- embeddings
- residual stream
- activacions per capa
- diferències entre prompts.
La part que em va explotar el cap
Hi ha una intuïció que em sembla cada cop més plausible:
els prompts són una interfície humana per moure vectors latents.
Per exemple:
Actua com un arquitecte software
probablement NO activa:
mode_architecte = true
Sinó que empeny el model cap a una regió latent associada estadísticament a:
- blogs tècnics
- clean architecture
- DDD
- documentació
- discussions de disseny
- review tècnic.
És molt diferent.
El tema Donald Knuth
A partir d'aquí va sortir una pregunta encara més estranya.
Les frases de Donald Knuth tenen més "pes latent" que les meves?
I crec que la resposta és:
sí, però no per autoritat màgica
El model no guarda:
Knuth = veritat
Francesc = random
Però sí que aprèn correlacions estadístiques.
Donald Knuth apareix associat a:
- algoritmes
- rigor
- computer science clàssica
- estil acadèmic
- explicacions consistents.
Això crea una mena de "gravetat estadística".
Per tant prompts com:
respon amb el rigor de Donald Knuth
potser empenyen el model cap a:
- justificacions més curoses
- menys vibe coding
- estil més formal
- més precisió terminològica.
Però això NO vol dir que sigui veritat absoluta.
Només que durant entrenament aquests patrons van quedar molt ben definits.
El perill del roleplay
També hi ha una trampa enorme.
Els LLMs són increïbles generant:
- aparença de profunditat
- aparença de rigor
- aparença d'autoritat.
Per això:
actua com un arquitecte senior
pot donar:
- DDD legítim
- o pornografia enterprise plena de buzzwords.
El model pot sonar intel·ligent sense ser-ho.
I crec que aquí hi ha un dels grans problemes actuals de la IA generativa.
El que probablement funciona millor
Cada cop sospito més que:
els criteris explícits són més fiables que el roleplay
Per exemple això:
Criteris:
- minimitza acoblament
- explica trade-offs
- detecta overengineering
- proposa tests que trenquin el disseny
- dona una opció simple abans d'una sofisticada
probablement és més estable que:
actua com un arquitecte software
Perquè els criteris són observables.
El roleplay és més difús.
El camp que em sembla més interessant de tots
Hi ha tota una disciplina que intenta fer reverse engineering dels Transformers:
- mechanistic interpretability
- representation engineering
- activation steering
- sparse autoencoders
- circuit analysis.
La idea és intentar entendre:
- quins circuits existeixen
- quines neurones representen patrons
- com es mou el model dins l'espai latent
- si podem trobar "direccions" associades a conceptes.
Això em sembla infinitament més interessant que la majoria del hype de prompt engineering.
La conclusió rara
Crec que una de les sensacions més estranyes dels LLMs és aquesta:
semblen software, però no funcionen com software.
No els programes exactament.
Els influences.
Els empenys.
Els mous dins un espai probabilístic gegant.
I encara avui:
no entenem completament què està passant dins.
Potser per això la sensació és tan rara.
I potser també per això enganxa tant.