Saltar al artículo
IngenieríaMar 20269 min lectura

Cómo construí 32 IAs orquestadas para una sola plataforma de negocios

La mayoría de los sistemas "multi-agente" son solo un LLM con diferentes system prompts. EmpoweringBiz son 32 motores reales con contratos de señales tipados, reglas de propagación de errores, y exactamente uno que tiene permiso de escribir la estrategia final.

El término "IA multi-agente" se ha diluido hasta perder significado. En la mayoría de las implementaciones, significa: levantar múltiples instancias del mismo modelo, darle a cada una una persona diferente, y dejarlas turnarse para generar texto. Esto es juego de roles, no orquestación.

El modelo de cadena de señales

Cada motor en EmpoweringBiz tiene una definición formal:

{
  "engine_id": "E2",
  "name": "market_analyzer",
  "input_schema": { ... },
  "output_schema": { ... },
  "validation_rules": [ ... ],
  "downstream": ["E4"],
  "can_write_strategy": false
}

La decisión de diseño crítica: los motores se comunican a través de señales JSON tipadas, no lenguaje natural. Cuando E2 termina, emite un objeto JSON estructurado que se ajusta a un esquema predefinido. E4 valida ese esquema al recibirlo. Si la validación falla, E4 no se ejecuta. Levanta una falla de señal.

Esta es la diferencia entre orquestación y conversación. En una conversación, todo es un string. En una orquestación, todo es un contrato tipado.

La cadena dominó: E2 → E4 → E6 → E7 → G1

E2 (Analizador de Mercado) ingiere datos de mercado crudos y produce vectores de oportunidad calificados. Si E2 identifica mal un segmento, cada motor downstream hereda ese error.

E4 (Posicionador Competitivo) mapea el negocio contra los competidores. Un competidor fantasma de E2 significa estrategia contra una entidad que no existe.

E6 (Modelador de Ingresos) proyecta tres modelos financieros — conservador, base, agresivo — con supuestos trazados a E4.

E7 (Evaluador de Riesgo) señala supuestos que exceden umbrales de riesgo. Último checkpoint antes de la estrategia.

G1 (Sintetizador de Estrategia) es el único motor con can_write_strategy: true. Ningún otro motor puede establecer estrategia_validada=true. Esto se impone en código, no por convención.

Por qué la propagación de errores es el verdadero problema

Un error en E2 se propaga a través de E4, E6, E7, y llega hasta G1. Para cuando llega al usuario, el error original ha sido lavado a través de cuatro capas de análisis que lo hacen lucir legítimo. El error gana credibilidad conforme avanza por la cadena.

EmpoweringBiz aborda esto con tres mecanismos:

Validación de esquema en cada frontera. Cada motor valida la entrada contra JSON Schema antes de procesar.

Verificaciones de consistencia entre motores. El orquestador compara salidas entre motores para consistencia lógica. Si las proyecciones de E6 implican un mercado más grande que el que E2 identificó, se levanta una falla.

Validación de síntesis de G1. Antes de establecer estrategia_validada=true, G1 ejecuta su propia pasada de validación. G1 no es solo un resumidor — es un auditor final.

322 tests, no porque sea paranoico

La suite de tests define lo que el sistema es. Cada test codifica una forma específica en que el sistema podría producir una estrategia plausible pero incorrecta. Si no puedes articular tus modos de fallo como tests ejecutables, no entiendes tu sistema lo suficiente para desplegarlo.

La verdadera pregunta de arquitectura

Cuando alguien me dice que construyó un "sistema de IA multi-agente," hago una pregunta: ¿qué pasa cuando el Agente 3 recibe entrada inválida del Agente 2?

Si la respuesta es "hace lo mejor que puede con lo que recibe," eso no es una arquitectura. Eso es esperanza. Y la esperanza no es una estrategia.

¿Diseñando un sistema multi-agente que necesita ser confiable? Arquitecturémoslo juntos →