Skip to main content

LLMTrace: Observabilidad y Trazabilidad para Aplicaciones con LLM

LLMTrace es una librería open-source en Python diseñada como un toolkit de observabilidad y evaluación para aplicaciones con modelos de lenguaje. Permite a los desarrolladores instrumentar sus apps de IA generativa para registrar automáticamente prompts y respuestas, medir métricas clave y visualizar trazas de las sesiones.

SLSA Level 1

Características Principales (v0)

  • Instrumentación Automática: Captura prompts, respuestas, tokens, costos y errores de LLMs populares (OpenAI, HuggingFace, LangChain).
  • Almacenamiento Local Persistente: Utiliza SQLite por defecto para guardar todos los datos de trazabilidad. Soporte experimental para PostgreSQL.
  • Dashboard Web Ligero: Una interfaz web básica para visualizar sesiones y métricas.
  • Interfaz de Línea de Comandos (CLI): Herramientas para listar, mostrar detalles, exportar y eliminar datos.
  • Migraciones de Base de Datos: Gestión de esquema con Alembic.

Instalación

LLMTrace requiere Python 3.9 o superior.

  1. Instalación básica: ```bash pip install llmtrace ```

  2. Instalación con extras (dashboard, evaluación, backends DB, instrumentadores): ```bash pip install "llmtrace[all]" # Instala todas las dependencias opcionales

    O selecciona solo las que necesites:

    pip install "llmtrace[openai,postgresql]"

    ```

Uso Rápido

import llmtrace
from llmtrace.instrumentation.openai import OpenAIInstrumentor
import openai
import asyncio

async def main():
    # Inicializa LLMTrace (crea llmtrace.db en ~/.llmtrace por defecto)
    # Puedes usar LLMTRACE_DB_URL="memory://" para una base de datos en memoria para tests.
    await llmtrace.init() 
    
    # Instrumenta OpenAI
    OpenAIInstrumentor().instrument()

    # Todas las llamadas a openai.ChatCompletion.create serán registradas
    res = await openai.ChatCompletion.create(
        model="gpt-3.5-turbo",
        messages=[{"role": "user", "content": "Escribe un haiku sobre la observabilidad."}]
    )
    print(res.choices[0].message.content)

    # Inicia una sesión para agrupar trazas
    async with llmtrace.session(name="MiPrimerHaiku", user_id="anon_user"):
        await openai.ChatCompletion.create(
            model="gpt-3.5-turbo",
            messages=[{"role": "user", "content": "Otro haiku, esta vez sobre el código."}]
        )

    # Consulta datos programáticamente
    sessions = await llmtrace.get_sessions()
    print(f"\nSesiones registradas: {len(sessions)}")

    # Inicia el dashboard web
    # llmtrace web
    # Abre tu navegador en http://localhost:5000 (por defecto)
    
    await llmtrace.close() # Cierra la conexión a la DB
    
if __name__ == "__main__":
    asyncio.run(main())

Release files for llmtrace 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for llmtrace 0.1.4
File Size Uploaded
llmtrace-0.1.4.tar.gz 72.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for llmtrace 0.1.4
File Interpreter ABI Platform
llmtrace-0.1.4-py3-none-any.whl Python 3 none any Details

Total release size: 123.4 kB

Release files / llmtrace-0.1.4.tar.gz

Download URL llmtrace-0.1.4.tar.gz
Size 72.7 kB
Tags Source
SHA-256 checksum
How to use checksums
4d61522a180b70c7a376cf4ae18119d73c433f209f773a1fc41238d957238191
BLAKE2b-256 checksum
How to use checksums
ffaa67a6434a64f4a0e419f7b0cf73ba9f2f82c8096d549d2b511378e4c6faa1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release files / llmtrace-0.1.4-py3-none-any.whl

Download URL llmtrace-0.1.4-py3-none-any.whl
Size 50.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
19e22d0b104b256e128ff0b3a8d7f1b6ffb2b41910c065db4f21814e6f5af840
BLAKE2b-256 checksum
How to use checksums
6eaa742e3030c0eb0db0b38d0b4c716df5fae883adf9041b72e6303dce8af9fe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release history Release notifications | RSS feed

This release

0.1.4 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page