Ir al contenido
Todos los proyectos

Ago. 2026 – actualidad · Diseño, arquitectura y desarrollo

Asistente de IA de FACSIS

Un asistente por texto y voz que redacta facturas, consulta ventas y responde desde la normativa

Este trabajo se realizó bajo acuerdos de confidencialidad. Describo mi rol, las decisiones y la arquitectura a nivel general, sin datos internos, cifras ni capturas de clientes.

Panel del asistente de FACSIS recién abierto con sugerencias
Respuesta del asistente con tarjetas de enlace tras una nota de voz
Gráfico de margen por producto generado por el asistente (datos de prueba)
Explicación de la documentación con enlace a la sección de timbrados

Contexto

Muchos usuarios de FACSIS no son técnicos y facturan desde el teléfono. Queríamos que pudieran emitir, consultar y aprender a usar el sistema conversando, sin que la IA pudiera equivocarse en algo fiscal.

Mi rol

Diseñé la arquitectura, escribí el servicio (orquestación, herramientas, RAG, cascada de modelos, cuotas) y la interfaz del chat, y definí las reglas de seguridad del asistente.

Desafíos

  • Evitar alucinaciones en un dominio fiscal: el asistente no puede inventar clientes, precios ni emitir por su cuenta.
  • Mantener el servicio disponible y barato con proveedores gratuitos o de bajo costo que fallan o limitan el uso.
  • Dar respuestas útiles sobre la normativa sin que el modelo se la invente.
  • Controlar el gasto por cliente sin arruinar la experiencia.

Decisiones

  • Herramientas con permisos mínimos: búsqueda de clientes y productos, borradores, consultas de ventas y series, reportes, documentación, enlaces y tours. La emisión final es una acción explícita del usuario.
  • Cadena de modelos configurable desde el panel, con estado de salud por modelo en Redis (ban progresivo, cuarentena por cuota, llamada única de prueba) para que un proveedor caído no deje mudo al asistente.
  • RAG por fragmentos con reranking y citas; las imágenes y enlaces salen de un catálogo, nunca de URLs escritas por el modelo.
  • System prompt partido en bloque estable (cacheado) y bloque variable, con recordatorio final por recencia; nunca entra un dato del usuario al bloque cacheado.
  • Cuotas por plan, tope mensual global y registro de costo real por mensaje; el usuario ve su consumo del día y del ciclo.

Resultado

El asistente está en producción en FACSIS web, iOS y Android. Este mismo portafolio reutiliza la idea: el asistente que ves abajo a la derecha corre sobre una cascada de modelos con fallback.

Puntos clave

  • Emisión asistida con seguridad: el modelo solo usa herramientas de lectura y crea borradores; el usuario confirma la emisión, que es idempotente. Precios e IVA los calcula el servidor.
  • Entrada por voz: la nota se transcribe con Whisper y el audio se descarta.
  • Consultas de ventas con gráficos (barras, torta, series) y reportes en Excel generados a pedido; estado de cuenta de clientes.
  • RAG sobre la documentación del producto y las notas técnicas de SIFEN con embeddings en pgvector; respuestas con enlaces e imágenes de la guía.
  • Cascada de proveedores (Claude, Gemini, Qwen, OpenRouter, Groq) con salud por modelo, cuarentena y fallback automático; prompt caching para abaratar el contexto.
  • Cuotas de tokens por plan y ciclo, tope de gasto mensual global, trazabilidad por mensaje y panel de administración con costos, feedback, proveedores y cadena de modelos.
  • Tours guiados dentro de la app y avatar animado con sincronización labial; batería de pruebas que comparó modelos antes de elegir la cadena.

Puedo ampliar los detalles en una conversación, respetando las mismas restricciones.