Langfuse en mi homelab: ver qué piensa el agente, paso a paso

31 October, 2026 | homelab

Serie Homelab · Parte 12 · ← El caché que nunca acertaba · El Dashboard de mi homelab → · Ver la serie

TL;DR: Prometheus me dice cómo está la infraestructura. No me dice qué hizo mi asistente para responderme. Para eso uso Langfuse, que guarda cada ejecución como una traza: qué pensó, qué herramienta llamó, cuántos tokens gastó y cuánto tardó cada paso. Cada respuesta de mi chat trae un enlace «Trace».

El problema de los sistemas con IA

Cuando un servicio web falla, hay logs, métricas y un stack trace. Cuando un agente de IA responde algo raro, ¿qué miras? La salida es un texto. El «por qué» está en una cadena de pasos que nadie ve: lo que razonó el modelo, qué herramienta eligió, qué le devolvió, si reintentó y por qué.

Sin eso, depurar un agente es leer la borra del café. Con eso, es depurar un sistema distribuido normal.

Qué es y por qué self-hosted

Langfuse es una herramienta de observabilidad para aplicaciones con modelos de lenguaje. Guarda trazas: cada ejecución con sus pasos, tiempos, tokens y costos. Lo tengo instalado en mi propio homelab por las mismas razones de siempre: control, que los datos no salgan de mi casa y que es divertido.

Tarjeta de Langfuse en el Dashboard: 15 trazas, costo estimado y tokens
Tarjeta de Langfuse en el Dashboard: 15 trazas, costo estimado y tokens

Mi Dashboard muestra una tarjeta con las trazas registradas, su costo y los tokens de entrada y salida. Es el termómetro rápido; el detalle está en cada traza.

Cómo se usa

Cada respuesta de ARIA incluye un enlace «Trace», justo debajo del texto. Lo puedes ver en cualquiera de las capturas de esta serie. Un clic y estás en la traza de esa ejecución: qué herramientas usó, en qué orden, cuánto tardó cada una y cuántos tokens consumió.

La instrumentación son pocas líneas de código. No pienso inventarte métricas de ahorro que no medí: lo que sí te puedo contar es cómo cambia mi forma de trabajar.

Lo que me permite ver

  • Dónde se va el tiempo. ¿Tardó porque el modelo es lento o porque una herramienta tardó? Son problemas distintos con soluciones distintas.
  • Qué herramientas se usan de verdad. En la Parte 4 te decía que hay que medir qué MCP se usan. Esta es la forma: si nunca aparece en una traza, probablemente sobra.
  • Los tropiezos. Una herramienta que falla, como el id is invalid de la Parte 5, aparece como un paso más de la traza y no como un misterio.
  • Tokens y costo por ejecución. Para saber si «local primero» (Parte 6) sirve o es una creencia.

Langfuse y el stack de infraestructura: dos ojos distintos

No compiten, se complementan:

  • Prometheus, Loki y Grafana observan la infraestructura: CPU, memoria, disco, logs de contenedores.
  • Langfuse observa la inteligencia: razonamiento, herramientas, tokens.

Si el asistente responde lento, miro Langfuse para saber si fue el modelo o la herramienta, y Grafana para saber si la máquina estaba ahogada. Los dos juntos dan la historia completa.

Un bonus: Langfuse también tiene su MCP

Langfuse expone un MCP propio. Eso significa que desde mi editor, con Claude Code (Parte 14), puedo preguntarle por las trazas en lenguaje natural: «muéstrame las ejecuciones más lentas de hoy». Un sistema para observar a la IA que se puede consultar con IA. Muy meta.

Lo que aprendí

  1. Instrumenta desde el día uno. Agregarlo después, con el sistema ya enredado, cuesta el triple.
  2. Que cada respuesta lleve su enlace a la traza. La fricción mata el hábito; con un clic lo uso, con tres lo olvido.
  3. Mide antes de optimizar. Sin trazas, «es lento» es una opinión. Con trazas, es un número.
  4. No guardes lo que no vas a mirar. Misma regla que con los paneles: si no lo abres en una semana, sobra.