Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.tokenlab.sh/llms.txt

Use this file to discover all available pages before exploring further.

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.
Tipo: SDK nativoRuta primaria: compatible con OpenAI / Chat CompletionsNivel de soporte: Ruta principal soportada

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.4",
    messages=[{"role": "user", "content": "Explain what TokenLab does in one sentence."}]
)

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.4",
    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.4",
    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-4o",
    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-4o",
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Hello!"}
    ]
)

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

Solución de problemas

  • Verifique que la URL base sea exactamente https://api.tokenlab.sh/v1
  • Compruebe si hay interferencia de un proxy o anulaciones personalizadas del cliente HTTP
  • Asegúrese de que la versión de su SDK esté actual antes de depurar el comportamiento del proveedor
  • Verifique que su API key comience con sk-
  • Confirme que la clave esté activa en el panel de TokenLab
  • Confirme que el SDK esté enviando Authorization: Bearer ...
  • responses.create(...) envía solicitudes a /v1/responses
  • chat.completions.create(...) envía solicitudes a /v1/chat/completions
  • Use Chat Completions por defecto a menos que necesite explícitamente el comportamiento específico de Responses