Modelos encoder frente a decoder: ¿qué arquitectura encaja?
Traducción automática
Este artículo se tradujo automáticamente a partir de la versión original en inglés.
Usa un encoder entrenado para la tarea cuando necesites representaciones o predicciones sobre una entrada. Usa un modelo encoder-decoder cuando un sistema entrenado transforme una secuencia en otra. Usa un modelo de lenguaje de solo decoder para la generación autorregresiva y las tareas basadas en prompts. El entrenamiento y la interfaz de salida del checkpoint importan tanto como el nombre de la arquitectura.
Estas opciones son un punto de partida útil para los ingenieros que eligen modelos, no límites a lo que una arquitectura adaptada puede llegar a hacer.
Compara qué devuelve cada modelo
| Familia | Patrón de atención | Salida típica y ejemplo |
|---|---|---|
| Solo encoder | Los tokens ven toda la entrada | Representaciones de tokens, etiquetas o fragmentos de texto; BERT |
| Encoder-decoder | Encoder sobre toda la entrada; decoder de salida causal con atención cruzada | Secuencia de salida generada; T5 |
| Solo decoder | Atención causal sobre la secuencia de tokens | Distribuciones del siguiente token y continuaciones generadas; Llama |
BERT aprende representaciones bidireccionales mediante preentrenamiento con lenguaje enmascarado. Una cabeza de salida adecuada y el entrenamiento para la tarea convierten esas representaciones en clasificaciones, fragmentos de texto u otras predicciones. BERT estándar no está configurado como un generador de texto convencional de izquierda a derecha. Además, la salida agregada de un encoder cualquiera no es automáticamente un buen embedding para recuperación: ese uso requiere entrenamiento y evaluación adecuados.
T5 usa un encoder para representar una entrada y un decoder para generar una salida aplicando atención a esas representaciones. Puede expresar tareas de clasificación como generación de texto, además de transformar secuencias. Encoder-decoder no significa solo traducción.
Un modelo de solo decoder usa la misma secuencia causal para las instrucciones, los ejemplos y la continuación generada. Cada posición puede atender a sí misma y a las posiciones anteriores. Sus estados KV anteriores siguen siendo válidos cuando la generación añade tokens, lo que permite la decodificación incremental. El artículo del Transformer explica la diferencia entre el enmascaramiento y la atención cruzada.
Elige el checkpoint para la tarea
Para clasificación con etiquetas fijas o extracción, compara un modelo más pequeño entrenado para la tarea con un generador guiado por un prompt. Para recuperación, compara checkpoints entrenados para embeddings o reranking, en vez de basarte en las etiquetas de arquitectura. Para respuestas flexibles, código o argumentos de herramientas, evalúa un modelo generativo según el formato de salida y los errores que tu aplicación puede tolerar.
Comprueba los límites de entrada, los idiomas admitidos, la cabeza de salida necesaria, la calidad, la latencia y el runtime de despliegue. La etiqueta de una familia permite anticipar el patrón de cálculo; no garantiza calidad en la tarea ni hace que un modelo más grande sea la mejor opción.
Guía de ingeniería: familias de modelos explica conjuntamente las propiedades de generación y almacenamiento en caché.