SDKs nativos

SDK de OpenAI

Usa TokenLab con los SDK oficiales de OpenAI y clientes compatibles con OpenAI

Resumen

TokenLab funciona con los SDK oficiales de OpenAI apuntando el cliente a https://api.tokenlab.sh/v1.

Para la mayoría de proyectos nuevos, prefiera Chat Completions como la ruta compatible con OpenAI predeterminada. Use Responses API solo cuando necesite explícitamente el comportamiento específico de Responses.

Los campos específicos de Responses no garantizan comportarse de forma idéntica en todos los modelos y rutas dirigidas.

Python, JavaScript y Go tienen SDKs oficiales de OpenAI. PHP funciona bien con clientes comunitarios compatibles con OpenAI, pero no es un SDK oficial de OpenAI.

Instalación

pip install openai

Utilice POST /v1/responses solo cuando necesite explícitamente comportamiento específico de Responses. Algunos campos exclusivos de Responses aún pueden depender del modelo seleccionado y de la ruta enrutada.

Configurar el cliente

from openai import OpenAI

client = OpenAI(
    api_key="sk-your-tokenlab-key",
    base_url="https://api.tokenlab.sh/v1",
)

Recomendado: Chat Completions

response = client.chat.completions.create(
    model="gpt-5.6-terra",
    messages=[{"role": "user", "content": "Reply with: Connected to TokenLab."}]
)

print(response.choices[0].message.content)

Avanzado: Responses API

Usa esta ruta solo cuando tu herramienta o flujo de trabajo dependa explícitamente de la semántica de OpenAI Responses.

Streaming con Responses

stream = client.responses.create(
    model="gpt-5.6-terra",
    input="Write a short poem about coding.",
    stream=True,
)

for event in stream:
    if event.type == "response.output_text.delta":
        print(event.delta, end="")

Herramientas / Llamado de funciones

response = client.responses.create(
    model="gpt-5.6-terra",
    input="What's the weather in Tokyo?",
    tools=[{
        "type": "function",
        "name": "get_weather",
        "description": "Get weather for a location",
        "parameters": {
            "type": "object",
            "properties": {
                "location": {"type": "string"}
            },
            "required": ["location"]
        }
    }]
)

for item in response.output:
    if item.type == "function_call":
        print(item.name)
        print(item.arguments)

Visión con Responses

response = client.responses.create(
    model="gpt-5.6-terra",
    input=[{
        "role": "user",
        "content": [
            {"type": "input_text", "text": "What's in this image?"},
            {"type": "input_image", "image_url": "https://example.com/image.jpg"}
        ]
    }]
)

print(response.output_text)

Embeddings

response = client.embeddings.create(
    model="text-embedding-3-small",
    input="Hello world"
)

print(response.data[0].embedding[:5])

Chat Completions

Chat Completions es la ruta compatible con OpenAI predeterminada para TokenLab:

response = client.chat.completions.create(
    model="gpt-5.6-terra",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Hello!"}
    ]
)

print(response.choices[0].message.content)

Solución de problemas

En esta página