Saltar al contenido principal

Resumen general

TokenLab admite la ruta nativa de la Messages API de Anthropic, por lo que puedes usar directamente el SDK oficial de Anthropic para los modelos Claude.
Para el SDK de Anthropic, usa https://api.tokenlab.sh como URL base, sin agregar /v1 manualmente.
Tipo: SDK nativoRuta principal: Anthropic-nativeNivel de soporte: Ruta nativa fuerte
Entre las rutas SDK documentadas, esta es una de las rutas de TokenLab con mejor compatibilidad para las funciones nativas de Claude.

Instalación

pip install anthropic
npm install @anthropic-ai/sdk

Configurar el cliente

from anthropic import Anthropic

client = Anthropic(
    api_key="sk-your-tokenlab-key",
    base_url="https://api.tokenlab.sh",
)
import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: 'sk-your-tokenlab-key',
  baseURL: 'https://api.tokenlab.sh',
});

Uso básico

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Explain TokenLab in one sentence."}
    ]
)

print(message.content[0].text)

Streaming

with client.messages.stream(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Write a short poem about coding."}]
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

Visión

import base64

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "What's in this image?"},
            {
                "type": "image",
                "source": {
                    "type": "url",
                    "url": "https://example.com/image.jpg"
                }
            }
        ]
    }]
)

with open("image.png", "rb") as f:
    image_data = base64.b64encode(f.read()).decode()

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "Describe this image"},
            {
                "type": "image",
                "source": {
                    "type": "base64",
                    "media_type": "image/png",
                    "data": image_data
                }
            }
        ]
    }]
)

Uso de herramientas

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    tools=[{
        "name": "get_weather",
        "description": "Get the weather for a location",
        "input_schema": {
            "type": "object",
            "properties": {
                "location": {"type": "string"}
            },
            "required": ["location"]
        }
    }],
    messages=[{"role": "user", "content": "What's the weather in Tokyo?"}]
)

for block in message.content:
    if block.type == "tool_use":
        print(block.name)
        print(block.input)

Pensamiento extendido

message = client.messages.create(
    model="claude-opus-4-6",
    max_tokens=16000,
    thinking={
        "type": "enabled",
        "budget_tokens": 10000
    },
    messages=[{"role": "user", "content": "Solve this complex problem step by step."}]
)

for block in message.content:
    if block.type == "thinking":
        print(block.thinking)
    elif block.type == "text":
        print(block.text)

Modelos Claude recomendados

ModeloIdeal para
claude-opus-4-6Razonamiento profundo, análisis de formato largo
claude-sonnet-4-6Programación, tareas generales de asistente
claude-haiku-4-5Respuestas rápidas y ligeras

Solución de problemas

  • Usa https://api.tokenlab.sh
  • No agregues manualmente /v1 al configurar el SDK de Anthropic
  • Verifica que tu API key de TokenLab comience con sk-
  • Confirma que la key esté activa en el dashboard de TokenLab
  • Deja que el SDK de Anthropic gestione el encabezado de autenticación en lugar de agregar encabezados personalizados manualmente
  • Verifica el nombre del modelo Claude exactamente
  • Revisa la disponibilidad actual en el catálogo de modelos de TokenLab