Cómo está armado el PoC
Stack, latencia, decisiones de diseño.
Stack
Agentes
2 agentes managed en ElevenAgents: María (cobranza) y Lucía (service).
Voz Flash v2.5, LLM Gemini 2.5 Flash Lite, ASR Scribe v2.2 Realtime.
Backend tools
Cloudflare Worker poc-novo-tools con Hono y datos dummy bundleados.
5 endpoints HTTP, auth con header X-PoC-Token.
RAG
2 docs en MD subidos a la KB nativa de ElevenLabs.
Embeddings multilingual-e5-large-instruct. Chunks 500 / overlap 50.
Demo site
Cloudflare Pages poc-novo-demo. Widget @elevenlabs/convai-widget-embed.
Dynamic variables pasadas en el HTML para diferenciar los 3 modos de María.
Optimizaciones de latencia
- TTS Flash v2.5 (~75 ms first byte) vs V3 Conversacional (más lento, oculta sliders).
- Optimize streaming latency = 2. 3 produce balbuceos; 2 es el sweet spot.
- LLM Gemini Flash Lite: el más rápido del catálogo, suficiente para flujos guionados.
- Workers en Cloudflare edge: latencia <30 ms desde ARG.
- PCM 16 kHz en input y output (menos overhead que Opus).
- Tools llamadas solo cuando agregan info: el prompt instruye no llamarlas si el dato ya está en contexto.
- max_tokens 400: headroom para listas + cierre, sin sobrecargar tiempo de respuesta.
Endpoints del Worker
| POST /tools/planahorro/lookup_cliente | Cliente por DNI · perfil + recomendación de modo |
| POST /tools/planahorro/licitacion_info | Info de próxima licitación del grupo |
| POST /tools/service/price | Precio + contenido del service por modelo y km |
| POST /tools/service/availability | Turnos disponibles por concesionario / fecha |
| POST /tools/service/book | Confirmación de turno · devuelve ID NOVO-XXXXXX |
| GET /health | Healthcheck público |
| GET /warmup | Golpea todos los tools para calentar caches |
Datos dummy
6 clientes ficticios (cubriendo los 3 escenarios de cobranza), 5 concesionarios, 14 días de turnos generados, precios de service para 7 intervalos × 3 modelos.
Reset manual: editar JSONs en 5. Backend/src/data/ y redesplegar el Worker.