Renderz.Studio
El Arsenal
OperacionesAvanzado35 minGratis

Observabilidad y Monitoreo IA

LangSmith · logging · trazas · métricas · debugging en producción

ObservabilityLoggingMonitoring
Guía gratuita · Acceso completo
01

Métricas clave para apps de IA

MétricaQué indicaAlerta si
Latencia P50/P95Tiempo de respuesta> 5s P95
Tokens/requestCoste por llamada> threshold
Error rateFiabilidad> 1%
ThroughputCapacidadCaída súbita
User satisfactionCalidad percibidaThumbs down > 10%
02

Logging estructurado para LLM calls

lib/ai/instrumented-client.ts
import Anthropic from '@anthropic-ai/sdk'

const anthropic = new Anthropic()

interface LLMLog {
  timestamp: string
  requestId: string
  model: string
  inputTokens: number
  outputTokens: number
  latencyMs: number
  status: 'success' | 'error'
  error?: string
}

export async function instrumentedChat(
  messages: Array<{ role: string; content: string }>,
  requestId: string
) {
  const start = Date.now()
  const log: Partial<LLMLog> = {
    timestamp: new Date().toISOString(),
    requestId,
    model: 'claude-sonnet-4-20250514',
  }

  try {
    const response = await anthropic.messages.create({
      model: 'claude-sonnet-4-20250514',
      max_tokens: 1024,
      messages,
    })

    log.inputTokens = response.usage.input_tokens
    log.outputTokens = response.usage.output_tokens
    log.latencyMs = Date.now() - start
    log.status = 'success'

    // Enviar a tu sistema de logging
    console.log(JSON.stringify(log))

    return response
  } catch (error) {
    log.latencyMs = Date.now() - start
    log.status = 'error'
    log.error = error instanceof Error ? error.message : 'Unknown'

    console.error(JSON.stringify(log))
    throw error
  }
}
03

LangSmith para trazas visuales

.env.local
LANGCHAIN_TRACING_V2=true
LANGCHAIN_API_KEY=ls__...
LANGCHAIN_PROJECT=mi-proyecto-produccion
lib/langsmith-client.ts
import { Client } from 'langsmith'
import { traceable } from 'langsmith/traceable'
import Anthropic from '@anthropic-ai/sdk'

const anthropic = new Anthropic()

// Wrapper traceable - aparece en LangSmith dashboard
export const generateResponse = traceable(
  async (prompt: string) => {
    const response = await anthropic.messages.create({
      model: 'claude-sonnet-4-20250514',
      max_tokens: 1024,
      messages: [{ role: 'user', content: prompt }],
    })
    return response.content[0].type === 'text' ? response.content[0].text : ''
  },
  { name: 'generate-response', run_type: 'llm' }
)

// Uso - automáticamente logueado a LangSmith
const result = await generateResponse('¿Qué es machine learning?')

  Tip Pro

LangSmith tiene tier gratuito generoso. Activa el tracing en desarrollo para entender el flujo de tus chains.

¿Quieres el sistema completo?

500+ páginas, 25 capítulos, código de producción, acceso a todas las guías del Arsenal.

Curso Completo · €29PayPal · Acceso inmediato
¿Hablamos?