Pinguy Learning
Temario · lección 16 de 74
0Empieza aquí
1Por qué fallan los agentes
2Qué es un harness
3Patrones de agentes
4Herramientas
5Ingeniería de contexto
6El repositorio como memoria
7Tareas largas
8Alcance y “hecho” de verdad
9Observabilidad y estado limpio
10Loops y grafos
11Harness reales
12Proyecto final
Patrones de agentes· 7 min de lectura

Paralelizar y orquestar

En 30 segundos

Paralelizar reparte subtareas conocidas o repite la misma varias veces. Orquestador-trabajadores deja que un modelo central decida las subtareas sobre la marcha.

Revisar un examen entre varios

Un profesor tiene 100 exámenes. Puede pedir a cuatro compañeros que corrijan 25 cada uno (reparto), o puede dar el mismo examen dudoso a tres correctores para ver si coinciden (votación). Y si lo que corrige es una obra de teatro, quizá primero necesite un jefe que decida: «tú el vestuario, tú el guion, tú la música», según lo que vea. Eso último ya no se puede planificar de antemano.

Paralelización

A veces varios modelos pueden trabajar a la vez y sus resultados se juntan con código. Tiene dos variantes:

  • Sectioning (reparto): se parte la tarea en subtareas independientes que corren en paralelo.
  • Voting (votación): se ejecuta la misma tarea varias veces para obtener resultados diversos.

Cuándo usarla: cuando las partes se pueden hacer en paralelo para ganar velocidad, o cuando necesitas varias perspectivas o intentos para tener más confianza. La fuente añade que, en tareas con varias consideraciones, el modelo suele rendir mejor si cada consideración se trata en una llamada separada.

Ejemplos:

  • Reparto: una instancia contesta al usuario y otra revisa si la petición es inapropiada (suele funcionar mejor que hacerlo todo en una sola llamada); o evaluar un modelo donde cada llamada puntúa un aspecto distinto.
  • Votación: varios prompts revisan un código buscando vulnerabilidades y se marca si alguno encuentra un problema; o varios prompts valoran si un contenido es inapropiado, con distintos umbrales para equilibrar falsos positivos y negativos.

Orquestador-trabajadores

Un LLM central descompone la tarea dinámicamente, la delega en LLMs trabajadores y sintetiza sus resultados.

Cuándo usarlo: en tareas complejas donde no puedes predecir las subtareas. En programación, por ejemplo, cuántos archivos hay que tocar y qué cambio va en cada uno depende de la petición.

Se parece a la paralelización por fuera, pero la diferencia clave es la flexibilidad: las subtareas no están predefinidas, las decide el orquestador según la entrada.

Ejemplos: productos de código que hacen cambios complejos en varios archivos; búsquedas que reúnen y analizan información de varias fuentes.

Orquestador -> trabajador A (archivo 1)
            -> trabajador B (archivo 4)
            -> trabajador C (tests)
            <- síntesis del resultado

Los trabajadores devuelven resultados, pero ¿quién juzga su calidad? Eso es el evaluador-optimizador.

Comprueba lo aprendido

¿Qué distingue al orquestador-trabajadores de la paralelización?

Por fuera se parecen, pero en la paralelización las subtareas están fijadas de antemano; en el orquestador se determinan dinámicamente.

Fuentes: Anthropic, Building effective agents

¡Hecho! Pinguy crece.Siguiente: Evaluador-optimizador →