Curso de Ingeniería de Prompts (#2) Cómo funcionan los modelos de lenguaje 🇪🇸 ထ 🇺🇸 Prompt Engineering Course (#2) How Language Models Work
Authored by
@@richard-mvm


|
En el primer artículo vimos qué es la ingeniería de prompts y por qué vale la pena tomársela en serio. Pero para escribir buenos prompts hay que entender qué hay detrás del modelo, y este artículo lo aborda.
No voy a cubrir cada detalle, porque para eso están los papers. El objetivo es que termines este artículo sabiendo qué pasa entre que escribes tu prompt y aparece la respuesta. |
In the first article we covered what prompt engineering is and why it's worth taking seriously. But to write good prompts, you need to understand what's happening behind the model, and that's what this article covers.
I won't cover every detail, since that's what papers are for. The goal is for you to finish this article knowing what happens between the moment you write your prompt and the moment a response appears. |

El texto se convierte en númerosPor ejemplo, cuando le pides a un modelo que cuente cuántas letras "r" tiene la palabra "strawberry", muchas veces falla. No porque no sepa contar, sino porque nunca vio la palabra letra por letra. La vio como el token número 41236, un identificador único que es tan opaco para el modelo como el número de tu cédula lo sería para alguien que solo conoce ese número y no tu nombre. El modelo normalmente no procesa la palabra letra por letra, sino mediante uno o varios tokens. |
Text becomes numbersFor example, when you ask a model to count how many "r" letters are in the word "strawberry," it often gets it wrong. Not because it can't count, but because it never saw the word letter by letter. It saw it as token number 41236, a unique identifier that's as opaque to the model as your ID number would be to someone who only knows that number and not your name. The model typically doesn't process a word letter by letter, but through one or several tokens. |

|
Un token equivale a unos 4 caracteres en inglés, lo que es aproximadamente tres cuartos de una palabra. En español la proporción es distinta y menos eficiente, algo que veremos en el próximo artículo, dedicado a tokens y contexto.
Una vez tokenizado, cada token se convierte en un vector: una lista larga de números que representa su significado en un espacio matemático. Dos palabras con significados relacionados terminan con vectores numéricamente cercanos (representación inicial de los tokens). Por ejemplo, si tomas el vector de "Paris", le restas el vector de "Francia" y le sumas el vector de "Alemania", el resultado queda cerca del vector de "Berlín". Funciona así porque el modelo, durante el entrenamiento, aprendió que la relación capital-país se repite de forma consistente en el texto que procesó. |
A token is roughly 4 characters in English, which is about three-quarters of a word. In Spanish the ratio is different and less efficient, something we'll cover in the next article, dedicated to tokens and context.
Once tokenized, each token becomes a vector: a long list of numbers representing its meaning in a mathematical space. Two words with related meanings end up with numerically close vectors (the tokens' initial representation). For example, if you take the vector for "Paris," subtract the vector for "France," and add the vector for "Germany," the result lands close to the vector for "Berlin." This works because during training, the model learned that the capital-country relationship repeats consistently across the text it processed. |

Atención: mecanismo que resuelve ambigüedadMira esto: "El mecánico revisó el carro porque estaba roto." ¿Qué estaba roto, el mecánico o el carro? Cualquier persona resuelve esto de inmediato por sentido común, porque los carros se rompen, los mecánicos no (al menos no en ese sentido). Un modelo no tiene sentido común como regla explícita, pero durante el entrenamiento vio suficientes oraciones donde "roto" aparece junto a objetos y no junto a personas que reparan objetos, y ajustó sus parámetros. |
Attention: the mechanism that resolves ambiguityLook at this: "The mechanic checked the car because it was broken." What was broken, the mechanic or the car? Any person resolves this instantly through common sense, because cars break down, mechanics don't (at least not in that sense). A model doesn't have common sense as an explicit rule, but during training it saw enough sentences where "broken" appears next to objects and not next to the people who fix them, and it adjusted its parameters accordingly. |

|
El mecanismo de atención es lo que le permite al modelo procesar la palabra "estaba", mirar hacia atrás en la oración y asignarle más peso a "carro" que a "mecánico" para decidir a qué se refiere. Y no ocurre en una dirección ni de manera aislada, porque cada palabra de la oración "presta atención" a las demás, y calcula cuánto le importa cada una para entender su propio significado en ese contexto. La palabra "carro" en esa oración no tiene mismo vector de significado que "carro" en "el carro del supermercado se atascó", porque el significado se ajusta según lo que la rodea.
Quien lo introdujo fue Google en 2017, y reemplazó a modelos que procesaban el texto palabra por palabra en un orden estricto. La autoatención procesa toda la secuencia en paralelo, lo cual también la hace más rápida de entrenar en hardware moderno. |
The attention mechanism is what lets the model process the word "was," look back through the sentence, and assign more weight to "car" than to "mechanic" to decide what it refers to. And it doesn't happen in a single direction or in isolation, because every word in the sentence "pays attention" to the others, calculating how much each one matters for understanding its own meaning in that context. The word "car" in that sentence doesn't have the same meaning vector as "car" in "the shopping cart got stuck," because meaning gets adjusted based on what surrounds it.
It was introduced by Google in 2017, and it replaced models that processed text word by word in strict order. Self-attention processes the whole sequence in parallel, which also makes it faster to train on modern hardware. |

Generar texto: predecir, un token a la vezEl modelo hace lo siguiente: dado todo el texto que tiene hasta ese momento (tu prompt más lo que ya generó), el modelo calcula una probabilidad para cada uno de los tokens posibles en su vocabulario — que puede tener miles de entradas. Y no elige uno solo con certeza absoluta, sino que produce una distribución completa. Por ejemplo, "El clima hoy está" puede continuar con "soleado" (probabilidad alta), "nublado" (probabilidad media) o "aeropuerto" (probabilidad casi nula, pero no es de cero). |
Generating text: predicting one token at a timeHere's what the model does: given all the text it has so far (your prompt plus whatever it has already generated), the model calculates a probability for every possible token in its vocabulary — which can have thousands of entries. It doesn't pick just one with absolute certainty; instead it produces a full distribution. For example, "The weather today is" could continue with "sunny" (high probability), "cloudy" (medium probability), or "airport" (near-zero probability, but not zero). |

|
Después selecciona un token de esa distribución — a veces el más probable, a veces uno un poco menos probable, según un parámetro llamado temperatura que veremos más adelante en el curso — y ese token se agrega al texto. Todo eso se repite desde cero, token por token, hasta que el modelo genera un token especial que indica "aquí termino" o hasta que se alcanza un límite de longitud.
Esto se llama técnicamente predicción autorregresiva, donde cada palabra nueva depende de todas las anteriores, incluidas las que el propio modelo acaba de inventar en los pasos previos. O sea, que no tiene un plan de respuesta de antemano, pues solo hay una cadena de decisiones, una detrás de otra, cada una condicionada por las que ya se tomaron. |
Then it selects a token from that distribution — sometimes the most probable one, sometimes a slightly less probable one, depending on a parameter called temperature that we'll cover later in the course — and that token gets added to the text. All of this repeats from scratch, token by token, until the model generates a special token that signals "I'm done here" or until a length limit is reached.
This is technically called autoregressive prediction, where each new word depends on all the previous ones, including the ones the model itself just invented in prior steps. In other words, it doesn't have a response plan laid out in advance — there's just a chain of decisions, one after another, each one conditioned by the ones already made. |

Entrenamiento en tres fasesPreentrenamiento. El modelo se entrena sobre billones de tokens con una tarea: predecir la siguiente palabra dado el texto anterior. No hay etiquetas puestas por humanos, porque la "respuesta correcta" ya está en el propio texto. Por eso se le llama autosupervisado, ya que se repite miles de millones de veces sobre textos de internet, libros y otras fuentes, y este proceso simple es lo que termina codificando regularidades del lenguaje, conocimientos estadísticos sobre el mundo y patrones de razonamiento. De todas formas, esta fase requiere miles de GPUs funcionando durante semanas o meses. Al final de esta etapa el modelo ya puede completar texto de forma coherente, pero no sabe seguir instrucciones ni comportarse como un asistente. Ajuste fino supervisado (SFT). Aquí se usa un conjunto de datos más pequeño, compuesto por pares de instrucción y respuesta deseada, que suelen ser escritos por personas o por otro modelo de alta calidad. Si le pides "escribe un poema sobre una kiwi", el modelo ve ejemplos de ese tipo de petición respondida de la forma que se espera de un asistente, y ajusta sus parámetros para producir ese estilo de respuesta con más frecuencia. El modelo pasa de completar cualquier texto a responder como un asistente. RLHF (aprendizaje por refuerzo con retroalimentación humana). Es la última fase, y en vez de ajustar el modelo token por token, evalúa respuestas completas y le indica qué tipo de respuesta es preferible frente a otra — y también qué tipo de respuesta debería evitar. Las personas comparan pares de respuestas del modelo a una misma pregunta y eligen cuál prefieren; esas preferencias entrenan un sistema de recompensa que después ajusta al modelo. Si sabes algo de psicología del aprendizaje, eso te va a sonar familiar, porque es similar al condicionamiento por refuerzo, lo que aplicado a un sistema que genera lenguaje en vez de a un organismo que ejecuta conductas. El modelo no entiende por qué una respuesta es mejor que otra; simplemente ajusta sus probabilidades internas porque ese patrón de respuesta se recompensó más veces. Luego de la combinación de esas tres fases, el modelo conoce patrones del lenguaje humano a gran escala (preentrenamiento), sabe seguir instrucciones (SFT) y tiende a producir respuestas que a los humanos les resultan útiles y no tan problemáticas (RLHF). |
Training in three phasesPretraining. The model trains on trillions of tokens with one task: predict the next word given the preceding text. There are no human-assigned labels, because the "correct answer" is already in the text itself. That's why it's called self-supervised — it repeats billions of times over text from the internet, books, and other sources, and this simple process is what ends up encoding regularities of language, statistical knowledge about the world, and reasoning patterns. Even so, this phase requires thousands of GPUs running for weeks or months. By the end of this stage the model can already complete text coherently, but it doesn't know how to follow instructions or behave like an assistant. Supervised fine-tuning (SFT). Here a smaller dataset is used, made up of instruction-response pairs, usually written by people or by another high-quality model. If you ask "write a poem about a kiwi," the model sees examples of that kind of request answered the way an assistant is expected to answer, and it adjusts its parameters to produce that style of response more often. The model goes from completing any text to responding like an assistant. RLHF (reinforcement learning from human feedback). This is the final phase, and instead of adjusting the model token by token, it evaluates complete responses and indicates which type of response is preferable over another — and also which type of response should be avoided. People compare pairs of the model's responses to the same question and choose which one they prefer; those preferences train a reward system that then adjusts the model. If you know something about learning psychology, this will sound familiar, because it's similar to reinforcement conditioning, applied to a system that generates language instead of an organism that executes behaviors. The model doesn't understand why one response is better than another; it simply adjusts its internal probabilities because that response pattern got rewarded more often. After combining these three phases, the model knows large-scale patterns of human language (pretraining), knows how to follow instructions (SFT), and tends to produce responses that humans find useful and not overly problematic (RLHF). |


Por qué le importa a quien escribe promptsSi el modelo aprendió patrones a partir de ejemplos durante SFT, entonces darle ejemplos de lo que esperas dentro del prompt (que veremos en el artículo sobre few-shot prompting) activa ese mismo mecanismo de reconocimiento de patrones que ya trae. |
Why this matters if you write promptsIf the model learned patterns from examples during SFT, then giving it examples of what you expect within the prompt (which we'll cover in the article on few-shot prompting) activates that same pattern-recognition mechanism it already has. |
|
Y si el modelo no tiene acceso letra por letra a las palabras sino a tokens, hay tareas como contar caracteres, invertir palabras, algunos tipos de aritmética exacta, etc., donde vas a encontrar limitaciones que ningún prompt puede resolver del todo. De eso hablaremos en el artículo 4, dedicado a las limitaciones y los errores de los LLM.
La próxima lección profundizará en cómo se construyen los tokens, qué es una ventana de contexto y por qué esos dos conceptos determinan buena parte de lo que un prompt puede o no puede lograr. Nos vemos. |
And since the model doesn't have letter-by-letter access to words but rather to tokens, there are tasks like counting characters, reversing words, some types of exact arithmetic, etc., where you'll run into limitations that no prompt can fully solve. We'll talk about that in article 4, dedicated to the limitations and errors of LLMs.
The next lesson will dig deeper into how tokens are built, what a context window is, and why those two concepts determine much of what a prompt can and can't achieve. See you there. |

- Vaswani et al., "Attention Is All You Need" (2017) — arxiv.org/abs/1706.03762
- NVIDIA, "What are Large Language Models?" — nvidia.com/en-us/glossary/large-language-models
- Elastic, "Understanding large language models" — elastic.co/what-is/large-language-models
- Sebastian Raschka, "LLM Training: RLHF and Its Alternatives" — magazine.sebastianraschka.com
- Simon Willison, "Understanding GPT tokenizers" — simonwillison.net/2023/Jun/8/gpt-tokenizers
- "Large language models, explained with a minimum of math and jargon" — understandingai.org

|
Todas las imágenes son de mi propiedad / generadas por IA, a menos que se indique lo contrario. Texto original en español, traducido al inglés con asistencia de Claude. |
All images are my own / AI-generated, unless otherwise noted. Original text in Spanish, translated to English with Claude's assistance. |

artificial-intelligence
llm
inteligencia-artificial
machine-learning
educacion
stem
prompt-engineering
transformers
tecnologia
0
0
0.000
0 comments