Project Report · April 2026 · Agent v1.0 operativo

Miguel

Pitch Intelligence Agent — Arquitectura y estado del sistema
Agent Status
Operativo
LLMs activos
Llama + Qwen
Corpus RAG
5.162 chunks
Docs comprensión
7 documentos
Pendiente
Debug + PDF
MIGUEL no es un chatbot con RAG. Es un agente de pitch cinematográfico con sistema hermenéutico, arquitectura dual de LLMs, memoria persistente entre sesiones, y routing de intención que determina qué modelo ejecuta cada tarea. La base está operativa. Quedan debug y la capa de generación de documentos PDF.
01Qué es y qué hace

MIGUEL es un agente de inteligencia cinematográfica construido sobre un guión específico. Su objetivo no es responder preguntas sobre la película — es asistir activamente en la construcción del pitch, detectar el interlocutor, seleccionar el modelo estructural correcto, y generar textos que no parezcan prosa de LLM.

El problema central que resuelve: los LLMs sin arquitectura específica contaminan la historia real del proyecto con patrones genéricos de entrenamiento. Llaman "sicario" a un torturador del estado. Dicen que el protagonista "busca redención". Revelan el final en el logline. Usan gerundio de posterioridad. El agente tiene siete documentos de comprensión, un sistema hermenéutico y un chain-of-thought forzado en Qwen para evitar exactamente esos errores.

2
LLMs activos
Llama 3.3 70B para chat · Qwen 2.5 72B para generación profunda
5
Intenciones
CONSULTA · GENERACION · ANALISIS · ESTRATEGIA · NAVEGACION
7
Docs comprensión
Núcleo · Middot · Miguel real · Mecanismo · Destinatarios · Modelos · Templates
3
Modelos estructurales
Snyder · Vogler · Hauge — routing por destinatario

"El agente no responde preguntas. Lee la intención, identifica el destinatario, selecciona el modelo estructural, razona internamente con las middot de Hillel, y genera texto que respeta la verdad dramática del proyecto."

Arquitectura del agente — abril 2026
02Arquitectura del agente

El agente tiene dos archivos: agent.py contiene toda la inteligencia — router, LLMs, RAG, documentos, memoria. app.py contiene solo la UI y los gráficos de análisis. Esa separación es intencional: cuando el agente evolucione, solo toca agent.py.

── FLUJO POR TURNO ────────────────────────────────────────────
  Usuario escribe
     GestorSesiones.grabar_turno() · detectar_temas()
     clasificar_intencion() — Llama · temperatura 0.05 · max_tokens 80
      devuelve: intencion · destinatario · modelo_estructural · urgencia · tipo_documento
     buscar_rag() — 6 chunks semánticos
     seleccionar_documentos() — según intención y destinatario

  ¿Intención GENERACION o ANALISIS?
    SÍ → Qwen 2.5 72B
      construir_prompt_qwen() — briefing + docs + PASO 1 razonamiento + PASO 2 output
      parser robusto — extrae OUTPUT, descarta razonamiento interno
      retry automático ante 504 · 2 intentos · 3s espera
    NO → Llama 3.3 70B
      construir_messages_llama() — system + docs + RAG + memoria + historial
      streaming directo al usuario

     proponer_siguiente_paso() — si hay contexto suficiente
     GestorSesiones.grabar_turno("assistant") · persistir cada 6 turnos

── ROUTING POR DESTINATARIO ──────────────────────────────────
  festival_europeo / coproductor_europeo / fondo_hubert_bals / plataforma_mubi → VOGLER
  coproductor_latinoamericano / fondo_ibermedia / fondo_sundance → HAUGE
  plataforma_netflix / empresa_privada_guatemalteca / inversor_privado → SNYDER

── SISTEMA HERMENÉUTICO (middot de Hillel) ──────────────────
  Idea original: Angel E. Pariente · Guión proyecto 0: Juan Diego Rodríguez
  7 middot como lentes de razonamiento — no como listas de verificación
  Middah 7 (contexto) → detecta "sicario" vs "torturador del estado"
  Middah 3 (principio unificador) → la escena 89 es siempre el eje
  Middah 2 (analogía) → Beta/Mentor vs Maximón/Threshold Guardian
03Capas de conocimiento
LLMs
2
  • Llama 3.3 70B — router + chat
  • Qwen 2.5 72B — generación
  • Chain-of-thought forzado
  • Razonamiento interno Qwen
  • Streaming Llama
Activo
Corpus RAG
5.162
  • GUION_MIGUEL — 118 chunks
  • 20 libros cine+persuasión
  • Stephen Follows — 399
  • Comparables OMDB — 34
  • Benchmarks mercado — 5
  • Embeddings 768d multilingual
Activo
Docs comprensión
7
  • nucleo_dramatico.txt
  • middot_sistema_agente.txt
  • miguel_real_doc1.txt
  • mecanismo_narrativo_doc2.txt
  • destinatarios_doc3.txt
  • modelos_estructurales_miguel.txt
  • templates_sistema_miguel.txt
Activo
Memoria persistente
  • Bucket HF sesiones/
  • Estado del dossier activo
  • Destinatario y modelo activos
  • Textos en revisión
  • Propuesta siguiente paso
  • Historial entre sesiones
Activo
04El sistema hermenéutico

Los documentos de comprensión son la diferencia entre este agente y cualquier chatbot con RAG. No son prompts más largos — son conocimiento operativo que Qwen carga antes de razonar. Cada documento resuelve un tipo específico de error.

── DOCUMENTOS Y SU FUNCIÓN ──────────────────────────────────

nucleo_dramatico.txt
  El motor moral del proyecto. Base para cualquier tarea.
  Evita: mezclar temporalidades, revelar el final antes de tiempo.

middot_sistema_agente.txt · Idea: Angel E. Pariente
  7 middot de Hillel como sistema de razonamiento — con JSON knowledge base.
  Evita: razonamiento por patrones estadísticos en lugar de comprensión contextual.

miguel_real_doc1.txt
  La verdad dramática de Miguel. La escena 89. Por qué "arrepentido" es incorrecto.
  Evita: "sicario", "busca redención", suavizar el punto de partida.

mecanismo_narrativo_doc2.txt
  Qué revelar y cuándo. Los dos únicos momentos de ironía dramática (esc. 62 y 94).
  Evita: revelar los Miculax en sinopsis para audiencia, spoilers en loglines.

destinatarios_doc3.txt
  Qué pregunta se hace cada interlocutor. Argumentos por fase del proyecto.
  Evita: mismo pitch para todos, ignorar la conexión israelí de Gurvich.

modelos_estructurales_miguel.txt
  Snyder / Vogler / Hauge mapeados a MIGUEL. Routing por destinatario.
  Evita: aplicar Snyder a un coproductor europeo que habla Vogler.

templates_sistema_miguel.txt
  14 formatos de pitch, venta y desarrollo. Save The Cat con escena 89 identificada.
  Evita: formatos incorrectos para cada destinatario, secciones fuera de orden.
05Estado del sistema
OK
Pipeline de datos
Parser .fdx, análisis emocional, Story Bible, Beat Sheet, presupuesto $978K, comparables con ROI.
Completado
OK
Corpus RAG 5.162 chunks
20 libros + guión + mercado real + Stephen Follows 399 artículos + OMDB 34 comparables.
Completado
OK
7 documentos comprensión
Núcleo · Middot · Miguel real · Mecanismo · Destinatarios · Modelos · Templates. En el bucket.
Completado
OK
Sistema dual LLMs
Llama 3.3 70B para streaming + routing. Qwen 2.5 72B para generación con razonamiento interno.
Operativo
OK
Router de intención
5 intenciones · 13 destinatarios · 3 modelos estructurales · urgencia exploracion/produccion.
Operativo
OK
Memoria persistente
Estado del dossier · historial entre sesiones · propuesta siguiente paso · textos en revisión.
Operativo
!!
Alucinaciones Qwen
Qwen aún genera contenido que no respeta la verdad dramática. El razonamiento interno no siempre bloquea los errores de entrenamiento.
Debug pendiente
!!
Parser OUTPUT
Qwen no siempre separa el razonamiento del output con el formato esperado. El parser robusto mejora esto pero no lo resuelve del todo.
Debug pendiente
!!
Timeouts Qwen 504
El router HF devuelve 504 en picos de carga. Hay retry automático x2 pero Qwen es lento con prompts largos.
Debug pendiente
..
Generación PDF
Dossier de pitch exportable. Gráficas Plotly embebidas. Diseño editorial con identidad visual MIGUEL.
Próxima fase
..
Presentaciones PPTX
Deck de pitch generado por el agente. 14 slides según destinatario. Datos reales de mercado embebidos.
Próxima fase
..
Vercel + dominio
Subdominio limpio sobre HF Space. Presentación profesional al productor sin mostrar la interfaz HF.
Futura
06Debug pendiente

El agente está operativo pero genera alucinaciones en tareas de generación profunda. Hay tres problemas identificados con causa conocida:

── PROBLEMA 1 — ALUCINACIONES DE CONTENIDO ─────────────────
  Síntoma: Qwen genera términos incorrectos ("sicario", "busca redención") a pesar del briefing.
  Causa: El razonamiento interno del Paso 1 no siempre bloquea los patrones de entrenamiento.
  Fix propuesto: Añadir ejemplos negativos explícitos al briefing (few-shot negativo).
    Mostrar a Qwen el error concreto + la corrección correcta antes de pedir el output.

── PROBLEMA 2 — PARSER DE OUTPUT ───────────────────────────
  Síntoma: El razonamiento interno aparece visible en la respuesta al usuario.
  Causa: Qwen varía el formato del separador entre Paso 1 y Paso 2.
  Fix propuesto: Separar la llamada en dos requests independientes.
    Request 1: Qwen razona, devuelve JSON estructurado con su análisis.
    Request 2: Qwen genera basándose en el JSON del Request 1.

── PROBLEMA 3 — TIMEOUTS 504 EN QWEN ───────────────────────
  Síntoma: Error 504 en picos de carga del router HF.
  Causa: El prompt a Qwen es muy largo — docs + RAG + briefing + chain-of-thought.
  Fix propuesto: Reducir el contexto enviado a Qwen.
    En lugar de enviar todos los docs, enviar solo los 2-3 más relevantes según la tarea.
    El router ya sabe cuáles son — pasar esa selección a ejecutar_con_qwen().
07Próxima fase — generación de documentos

El agente genera texto. La siguiente fase es que ese texto se convierta en documentos profesionales listos para enviar a productores, fondos y plataformas. Dos formatos prioritarios:

Dossier PDF
El documento que va a la reunión
15-25 páginas con diseño editorial. Gráficas Plotly embebidas. Comparables con tabla visual. Arco emocional. Presupuesto con barras. Misma identidad visual del Space.
WeasyPrint o ReportLab · Plotly → PNG · HTML → PDF
PRÓXIMA SESIÓN
Deck PPTX
La presentación de pitch
14 slides según destinatario. El agente decide el contenido de cada slide basándose en el modelo estructural activo. Logline adaptado, comparables, datos financieros, equipo.
python-pptx · templates personalizados · descarga directa desde el Space
PRÓXIMA SESIÓN

"El dossier PDF no es un export del chat. Es un documento con criterio editorial propio, gráficas reales y datos verificados — el tipo de objeto que un productor puede leer en un vuelo."

Objetivo de la capa de documentos
08Roadmap
Fase 1
Completada
Pipeline de datos e infraestructura
  • Parser .fdx · análisis emocional · 119 escenas
  • RAG 5.162 chunks · 20 libros · mercado real · OMDB
  • Presupuesto $978K · 50 comparables con ROI
  • HF Space + Bucket · TMDb tiempo real
  • Memoria persistente en bucket
Fase 2
Completada
Sistema hermenéutico y documentos de comprensión
  • 7 middot de Hillel adaptadas a MIGUEL (Angel E. Pariente)
  • Miguel real · Mecanismo narrativo · Destinatarios
  • Snyder / Vogler / Hauge mapeados a MIGUEL con routing
  • 14 templates de pitch, venta y desarrollo
  • Save The Cat con escena 89 identificada
Fase 3
Operativo
Debug pendiente
Agent.py — sistema dual LLMs + router
  • Router de intención con Llama (5 intenciones · 13 destinatarios)
  • Qwen 2.5 72B con chain-of-thought forzado
  • Selección de documentos por intención
  • Memoria activa con propuesta de siguiente paso
  • Panel lateral estado del dossier en la UI
  • Alucinaciones de contenido en Qwen — fix: few-shot negativo
  • Parser OUTPUT inconsistente — fix: dos requests separados
  • Timeouts 504 — fix: reducir contexto enviado a Qwen
Fase 4
Próxima
Fase 5
Futura
Producto y distribución