L

Panel Lía

e-Misión

Credenciales
2
Autenticación

Ingresa el código de 6 dígitos de tu app autenticadora

conversaciones · actualiza cada 30 s

En producción ✦ Claude Sonnet 4.6 🔍 RAG · Qdrant

Lía · Asistente Virtual IA

Atiende clientes de e-Misión por WhatsApp, 24 horas al día, 7 días a la semana.

Responde preguntas, identifica clientes, detecta errores técnicos y conecta con el equipo humano cuando es necesario.

Números en tiempo real

Conversaciones

clientes atendidos

Políticas aceptadas

registros legales

Mensajes procesados

intercambios totales

852

Fragmentos de conocimiento

46 documentos indexados

¿Cómo funciona Lía?

WhatsApp

Cliente escribe

L

Lía IA

Recibe y entiende

Base de conocimiento

Busca la respuesta

Responde

Precisa y rápida

Transfiere

Si lo necesita

Lía conoce todos los productos y servicios de e-Misión

Facturación Electrónica

planes, precios, habilitación DIAN

Nómina Electrónica

Nómina-Me, Nómina Express

POS Electrónico

puntos de venta, documentos equivalentes

Eventos Mercantiles / RADIAN

recepción de facturas, ENDOSO

SG-SST

seguridad y salud en el trabajo

VAULT

firma digital y documentos

Planes Integrales

combos multiservicio

Soporte Técnico

FAQs, resolución de incidentes

¿Por qué dejamos Oracle OCI y pasamos a Claude (Anthropic)?

Contexto técnico y mejoras obtenidas con el cambio

El problema con Oracle OCI GenAI

Errores 404 constantes

El endpoint del agente OCI retornaba "404 Not Found" de forma recurrente. Cada conversación podía fallar en cualquier momento sin aviso.

Sesiones que se perdían sin razón

OCI Agent maneja sesiones propias (oci_session_id). Si la sesión expiraba o era inválida, la conversación quedaba interrumpida y el cliente recibía un error.

Sin control real del comportamiento

OCI es una "caja negra": no se podía ajustar el system prompt, el historial de conversación ni las reglas de comportamiento directamente. Dependíamos de lo que Oracle exponía.

Latencia alta e inconsistente

Las respuestas tardaban entre 5 y 15 segundos en algunos casos, lo que generaba mala experiencia en WhatsApp donde el usuario espera respuesta inmediata.

Costo fijo elevado aunque no se use

El Agent Endpoint de OCI cobra por el tiempo que está activo (24/7), no por el uso real. Significa pagar $150–$300/mes incluso en días sin una sola conversación.

Base de conocimiento limitada a herramientas OCI

Para actualizar el conocimiento de Lía había que usar la consola de OCI y esperar re-indexación. Sin panel propio, sin control de versiones, sin subida de archivos personalizada.

Lo que ganamos con Claude API (Anthropic) + RAG propio

Cero errores 404 desde la migración

Claude API es una llamada HTTP estándar (sin sesiones externas). Si responde 200 OK, la conversación continúa. La estabilidad es total.

Control total del comportamiento de Lía

El system prompt tiene 14+ reglas que controlan tono, transferencias, horarios, contexto numérico, coherencia de producto. Cualquier ajuste se aplica sin tocar Oracle.

Respuesta en 1–3 segundos

Claude Haiku es el modelo más rápido de Anthropic. En WhatsApp, la respuesta llega en 1 a 3 segundos, comparable a un chat humano ágil.

RAG propio — base de conocimiento 100% nuestra

852 fragmentos en Qdrant. El equipo sube archivos desde el panel, entrena a Lía con un clic, sin depender de ninguna consola externa ni de Oracle.

Pago solo por lo que se usa

Claude API cobra por token. 0 conversaciones = $0 de IA. El costo escala con el uso real, no con el tiempo que el servidor está encendido.

Historial de conversación completo para la IA

Cada llamada a Claude recibe TODO el historial de la sesión. La IA nunca "olvida" lo que se dijo antes. En OCI la gestión del historial era opaca y limitada.

Antes · OCI

6

problemas críticos

Hoy · Claude

0

errores de plataforma

Ahorro anual

~$1.700

USD estimados

Comparativo de costos: Oracle OCI vs Claude (Anthropic)

Basado en el consumo real de Lía — modelo claude-sonnet-4-6 (Claude 4 · Sonnet, el más actual)

Criterio Oracle OCI GenAI ❌ Claude API ✅
Modelo de cobro Costo fijo mensual por instancia activa + tokens Solo pagas lo que Lía usa (por token)
Disponibilidad Error 404 frecuentes — agente caído 99.9% uptime garantizado por Anthropic
Calidad de respuesta Inventaba planes y precios, ignoraba KB Sigue instrucciones con alta fidelidad, no alucina
Tiempo de respuesta 4 – 8 segundos por mensaje 1 – 3 segundos por mensaje
Costo estimado mensual ~USD $150–300

infraestructura OCI + tokens (sin importar uso)

~USD $5–25

solo por conversaciones reales (~500/mes)

Ahorro anual estimado ~USD $1.700–3.300/año

* Estimado con claude-sonnet-4-6 a $3/M tokens entrada + $15/M tokens salida. 500 conversaciones × 10 mensajes × 3.500 tokens entrada + 300 tokens salida ≈ $30–50/mes. OCI incluía costo de Agent endpoint activo 24/7 más tokens (~$150–300/mes).

Lo que Lía hace por e-Misión

Atención 24/7 sin intervención humana

Responde inmediatamente a cualquier hora

Identifica al cliente (NIT + Razón Social)

Valida y registra la identidad antes de atender

Registro legal de política de datos

Cada aceptación queda en historial inmutable

Transfiere inteligentemente al equipo humano

Detecta cuándo un asesor es necesario

Conocimiento actualizable sin código

El equipo sube documentos y entrena desde el panel

Exportación de datos a CSV

Conversaciones y políticas descargables en Excel

Cierre automático por inactividad (bifásico)

Recordatorio a T+8 min · cierre definitivo a T+16 min

System prompt editable desde el panel

Sin tocar código ni reiniciar el servidor

Detección de conversaciones problemáticas

Flags ⚠️ cuando Lía no tiene información o el cliente se frustra

Alertas WhatsApp al administrador

Notificación automática si Lía falla 3 veces seguidas

Healthcheck Docker con auto-recuperación

El contenedor se reinicia solo si Lía se congela (no solo si crashea)

Explorar el panel

Conversaciones

Chats, NIT, RS, historial y exportar

Base de Conocimiento

Subir documentos y entrenar a Lía

Analíticas

Estadísticas y gráficos de actividad

Política de Datos

Historial legal, búsqueda por NIT, CSV

¿Qué pasa por dentro cuando un cliente escribe?

Pipeline interno completo — desde el mensaje hasta la respuesta

Paso 1 WhatsApp

El cliente escribe un mensaje

El mensaje llega al número de WhatsApp de e-Misión a través de LiveConnect, la plataforma de mensajería empresarial.

Paso 2 API Lía

LiveConnect envía el mensaje al servidor de Lía

Mediante un webhook (llamada HTTP automática) el mensaje llega al servidor en Oracle Cloud donde corre Lía.

Paso 3 Verificación legal

¿El cliente ya aceptó la Política de Datos?

→ continúa. No → Lía envía el texto de la política y espera aceptación. Cada aceptación queda registrada en el historial legal inmutable.

Paso 4 Identificación

¿Ya proporcionó NIT y Razón Social?

→ continúa con la consulta. No → Lía solicita el NIT y la razón social. Ambos datos quedan guardados en la base de datos y visibles en el panel.

Paso 5 Búsqueda semántica · RAG

Busca los fragmentos más relevantes en la base de conocimiento

El mensaje del cliente se convierte en un vector matemático y se compara contra los 914 fragmentos indexados en Qdrant. Se recuperan los 5 más parecidos al tema de la pregunta.

Paso 6 Inteligencia Artificial · Claude

Claude (Anthropic) genera la respuesta

📋 System prompt
Reglas de comportamiento de Lía
📚 Contexto KB
5 fragmentos más relevantes
💬 Historial
Toda la conversación activa
✉️ Mensaje
Lo que el cliente acaba de enviar
Paso 7 Enrutamiento inteligente

¿La respuesta tiene una instrucción de acción?

Sin etiqueta → respuesta normal [FINALIZAR] → cierra conversación [TRANSFERIR_COMERCIAL] → equipo ventas [TRANSFERIR_SOPORTE] → equipo técnico
Paso 8 Respuesta entregada

La respuesta llega al cliente por WhatsApp

El mensaje se envía de vuelta vía LiveConnect, la conversación se guarda en la base de datos con timestamp, y el panel de administración se actualiza en tiempo real. Todo el proceso tarda 1–3 segundos.

Estado de preparación para producción

Flujo de conversación completo

Política, NIT/RS, respuesta IA, transferencia, cierre

Base de conocimiento RAG (914 fragmentos)

46 documentos · 9 productos · actualizable sin código

Registro legal de datos (Habeas Data)

Historial inmutable, versiones de política, CSV descargable

Panel de administración completo

Conversaciones, KB, analíticas, política, seguridad 2FA

QA completado — 10 casos resueltos

NIT/RS, horarios, correos, transferencias, contexto

Migración OCI → Claude Sonnet 4.6

Sin errores 404, respuesta 1–3 s, modelo más actual

Captura y almacenamiento de NIT + Razón Social

Visible en panel y exportable a CSV

Servidor en producción (Oracle Cloud)

Docker · lia.emision.dev · HTTPS · 24/7

Healthcheck Docker — auto-recuperación

Reinicio automático si Lía se congela (no solo si crashea)

Inactividad bifásica (T+8 min / T+16 min)

Recordatorio suave y cierre automático con estado visible en panel

System prompt editable desde el panel

Tab Conocimiento → instrucciones personalizadas sin tocar código

Alertas de calidad y notificaciones al admin

Flags ⚠️ en conversaciones problemáticas + WA al número admin

Prueba de carga con conversaciones simultáneas — Pendiente

Simular 10–20 clientes al mismo tiempo para validar rendimiento. Único ítem pendiente antes de escalar masivamente.

Mejoras recientes — Nivel Empresarial

Funcionalidades añadidas para operación autónoma y sin dependencia humana

Inactividad bifásica

Recordatorio suave a los 8 minutos sin respuesta. Cierre automático a los 16 minutos con estado "Cerrado por inactividad" visible en el panel.

🐳

Healthcheck Docker

El contenedor verifica el endpoint /health cada 30 s. Si Lía se congela (no solo si crashea), Docker la reinicia automáticamente.

📋

System Prompt editable

Las instrucciones de comportamiento de Lía se editan desde el panel (tab Conocimiento → System Prompt) sin tocar código ni reiniciar el servidor.

⚠️

Flags de calidad

Cada respuesta de Lía es analizada. Se marcan automáticamente: sin_info, cliente_frustrado y preguntas_excesivas. Las conversaciones problemáticas aparecen con badge ⚠️ en el panel.

📲

Alertas al administrador por WA

Si Lía falla 3 veces seguidas al llamar la IA, el administrador recibe un mensaje de WhatsApp automático en tiempo real.

Modelo Claude Sonnet 4.6

Actualización al modelo más reciente de Anthropic. Mayor precisión en respuestas complejas, mejor seguimiento de instrucciones y contexto extendido.

Tecnologías utilizadas

Pasa el cursor sobre cada tecnología para ver su rol en el sistema

🐍Python 3.11

Lenguaje principal

Todo el backend de Lía está escrito en Python: el webhook, la lógica de conversación, el sistema RAG, las migraciones de base de datos y el panel de administración.

FastAPI

Servidor web de Lía

Recibe los mensajes de WhatsApp vía webhook, expone todos los endpoints del panel (/api/chats, /api/stats, /api/kb…) y maneja la autenticación con JWT.

🤖Claude Sonnet 4.6 (Anthropic)

El cerebro de Lía (IA generativa)

El modelo más actual de Anthropic (Claude 4 · Sonnet 4.6). Genera respuestas precisas combinando el system prompt editable, contexto RAG y el historial. Mayor calidad que Haiku con tiempos de respuesta similares.

🔍Qdrant (búsqueda vectorial)

Base de conocimiento vectorial

Almacena los 852 fragmentos de los documentos de e-Misión como vectores matemáticos. Cuando un cliente pregunta algo, Qdrant encuentra los 5 fragmentos más relevantes en milisegundos.

🧠RAG (Retrieval-Augmented Generation)

Técnica que hace a Lía precisa

En lugar de que la IA "invente" respuestas, primero busca información real en los documentos de e-Misión y luego responde basándose en esos datos. Evita alucinaciones y mantiene la información actualizada.

🐬MySQL

Base de datos en producción

Guarda todas las conversaciones, el historial de políticas de datos aceptadas, la configuración del sistema y los registros de la base de conocimiento. En local usa SQLite como alternativa.

🐳Docker

Empaquetado y despliegue

Lía corre dentro de un contenedor Docker en el servidor. Eso garantiza que funcione igual sin importar el entorno y permite actualizar la aplicación con un simple reinicio del contenedor.

☁️Oracle Cloud Infrastructure

Servidor en la nube

El servidor físico donde vive Lía está alojado en Oracle Cloud. Tiene acceso 24/7, HTTPS con dominio lia.emision.dev y respaldo en infraestructura empresarial.

💬WhatsApp / LiveConnect

Canal de comunicación con el cliente

LiveConnect es la plataforma empresarial de mensajería de e-Misión. Recibe los mensajes de WhatsApp de los clientes y los reenvía a Lía mediante webhook automático, y entrega las respuestas de vuelta al cliente.

🎨Alpine.js + Tailwind CSS

Panel de administración

Alpine.js maneja toda la interactividad del panel (tabs, tablas, modales, búsquedas) sin framework pesado. Tailwind CSS define el diseño visual con clases utilitarias aplicadas directamente en el HTML.

📦 159 commits de desarrollo 📄 46 documentos KB 🧩 852 fragmentos indexados 🐛 10 casos QA resueltos 🚀 En producción desde junio 2026
Lía · Asistente IA de e-Misión · Tecnología Claude Haiku (Anthropic) + RAG Qdrant · En producción desde 2026

Total

Filtrado

Activos

Resueltos

Transferidos

Número NIT Razón Social Último Mensaje Fecha / Hora Estado Política Acción
Sin conversaciones para este filtro.

Cargando analíticas...

Total

conversaciones

Transferidos

Resueltos IA

Mensajes

procesados por Lía

Conversaciones · Últimos 7 días

Política aceptada

Distribución

Activos
Resueltos
Transferidos

Costos API · Claude Sonnet 4.6

🚨

Presupuesto mensual alcanzado

El gasto este mes superó el límite configurado de . Se envió alerta por WhatsApp al administrador.

Hoy

Este mes

Proyección

al cierre del mes

Presupuesto

límite mensual

Uso del presupuesto este mes

$0

Precios: $3/M tokens entrada · $15/M tokens salida (Claude Sonnet 4.6)

a

Total en el rango mostrado

Límite de alerta mensual

$ USD

Cuando el gasto mensual supere este valor, Lía enviará un WhatsApp de alerta al administrador.

Tokens hoy

Entrada
Salida
Total mes

Cotizaciones · Motor de precios

Hoy

cotizaciones

Este mes

cotizaciones

Total

histórico

Productos más cotizados

Últimas cotizaciones

Archivos KB

Catálogo de precios

Motor de cotización determinístico — fuente única de precios para Lía.

📋

System Prompt activo

Las reglas de comportamiento que Lía sigue en cada conversación. Edítalo desde el panel derecho.

● Versión personalizada activa ● Versión por defecto

Subir archivo

Solo TXT y DOCX

Crear nuevo archivo

Política de Protección de Datos

Gestión de versiones y evidencia legal de aceptación

cliente(s) deben re-aceptar la política vigente

La próxima vez que escriban a WhatsApp se les mostrará la nueva versión para aceptar.

Versión Activa

Aceptaron Vigente

clientes con versión actual

Pendientes

deben re-aceptar

Borrar todas las aceptaciones de política

Útil para limpiar datos de prueba. Los clientes deberán aceptar nuevamente. El historial legal no se borra.

Versión en Vigor

Identificador

URL Publicada

Nota

Publicada

Publicar Nueva Versión

Al publicar, todos los clientes con versión anterior deberán re-aceptar la próxima vez que escriban. El historial de aceptaciones previas queda intacto como evidencia legal.

* campos requeridos

Versiones Publicadas

Historial de versiones de la política

Versión URL Nota Fecha / Hora Estado

Sin versiones registradas

Historial Legal de Aceptaciones

Inmutable

Evidencia legal — este registro nunca se elimina, ni con "Borrar todo"

Número WhatsApp NIT Razón Social Versión Aceptó con Fecha Hora

Página de  ·  registros totales

Autenticación de Dos Factores (2FA)

¿Qué es el 2FA?

La autenticación de dos factores añade una capa extra de seguridad al inicio de sesión. Además de la contraseña, se requiere un código temporal de 6 dígitos generado por tu app autenticadora.

1

Instala Google Authenticator o Authy en tu celular

2

Genera y escanea el código QR desde este panel

3

Confirma con el primer código de 6 dígitos para activar

Apps compatibles

Google Authenticator

iOS · Android

Authy

iOS · Android · Desktop

Microsoft Authenticator

iOS · Android

Configurar Google Authenticator

Genera el QR, escanéalo con tu app y confirma el código para activar la protección.

QR 2FA

Escanea este QR con tu app

Abre tu app autenticadora, toca "Agregar cuenta" y escanea el código.

O ingresa este código manualmente:

2FA está activo y protegiendo el panel

Cada inicio de sesión requiere tu código de Google Authenticator. Tu cuenta está protegida.

Compartir con otros administradores

Muestra el QR para que otros lo agreguen a su app

Escanea este código con Google Authenticator, Authy o Microsoft Authenticator

QR 2FA para compartir

Código manual (si no puedes escanear el QR)

No compartas este QR por canales inseguros (WhatsApp, email). Muéstralo directamente en pantalla. Oculta el QR cuando todos hayan escaneado.

Zona de peligro

Esta acción reduce la seguridad del panel

Al desactivar, el panel solo requerirá usuario y contraseña. Hazlo únicamente si vas a migrar a un nuevo dispositivo autenticador.