system:
  app:
    name: MK RT Interview
    admin_token: null
  stt:
    mode: python_whisper
  ai:
    enabled: true
    provider: ollama
    ollama_base_url: "http://129.212.185.90:11434"
    model: "qwen2.5:0.5b"
    timeout_ms: 9000
ai_pools:
  micro:
    -
      id: ollama_micro
      type: ollama
      base_url: "http://129.212.185.90:11434"
      model: "qwen2.5:0.5b"
      timeout_ms: 800
      max_tokens: 200
  economic:
    -
      id: ollama_econ
      type: ollama
      base_url: "http://129.212.185.90:11434"
      model: "qwen2.5:0.5b"
      timeout_ms: 1500
      max_tokens: 400
  powerful:
    -
      id: ollama_big
      type: ollama
      base_url: "http://129.212.185.90:11434"
      model: "qwen2.5:0.5b"
      timeout_ms: 3000
      max_tokens: 1600
prompts:
  agents:
    realtime_suggester:
      tier: micro
      system: Eres un motor RT para sugerir acciones mínimas en entrevista. Responde JSON estricto.
      user_template: "Contexto:
{{context}}
Ultima transcripcion:
{{transcript}}
Devuelve:
{ \"suggest\": \"...\", \"action\": \"none|ask_confirm|fill_answer\", \"target_question_id\": number|null, \"confidence\": 0..1 }"
    numeric_normalizer:
      tier: micro
      system: Normaliza números y montos MXN. Responde JSON estricto.
      user_template: "Texto: {{text}}
Devuelve:
{ \"money_mxn\": number|null, \"months\": number|null, \"percent\": number|null, \"confidence\": 0..1 }"
    case_macro_analyst:
      tier: powerful
      system: Analiza el caso completo de entrevista de crédito. Responde JSON estricto.
      user_template: "Sesion: {{session}}
Devuelve:
{
  \"summary\": \"...\",
  \"risks\": [\"...\"],
  \"strengths\": [\"...\"],
  \"dti_estimate\": number|null,
  \"recommendation\": \"apto|dudoso|no_apto\",
  \"confidence\": 0..1
}"
    ops_observer:
      tier: micro
      system: "Eres observador ops: latencias, errores, colas. Responde JSON estricto."
      user_template: "Snapshot: {{snapshot}}
Devuelve:
{ \"status\": \"green|yellow|orange|red\", \"top_issues\": [\"...\"] }"
