shadcn/studio
Spans

Spans

Los spans son sub-operaciones dentro de una traza. Permiten desglosar cada paso del proceso: llamadas LLM, retrieval, herramientas, etc.

Tipos de Span

llm
Llamadas a modelos de lenguaje (GPT, Claude, etc.)
retrieval
Búsqueda en base de conocimiento (RAG)
tool
Uso de herramientas (function calling)
general
Operaciones generales

Endpoints

GET
/api/v1/projects/{projectId}/opik/spans
Lista spans de una traza

Query Parameters

trace_idID de la traza (requerido)
typeFiltrar por tipo
POST
/api/v1/projects/{projectId}/opik/spans
Crea un nuevo span
{
  "trace_id": "trace-uuid",
  "name": "OpenAI GPT-4",
  "type": "llm",
  "input": { "prompt": "..." },
  "output": { "response": "..." },
  "model": "gpt-4o",
  "usage": {
    "prompt_tokens": 150,
    "completion_tokens": 80,
    "total_tokens": 230
  }
}

Ejemplo de Uso

// Crear span de LLM
const span = await fetch('/api/v1/projects/my-project/opik/spans', {
  method: 'POST',
  body: JSON.stringify({
    trace_id: 'trace-123',
    name: 'Claude 3.5 Sonnet',
    type: 'llm',
    input: { prompt: 'Analiza este documento...' },
    output: { analysis: '...' },
    model: 'claude-3-5-sonnet',
    usage: {
      prompt_tokens: 500,
      completion_tokens: 200,
      total_tokens: 700
    }
  })
})