SDKs nativos

SDK da OpenAI

Use o TokenLab com os SDKs oficiais da OpenAI e clientes compatíveis com OpenAI

Visão geral

O TokenLab funciona com os SDKs oficiais da OpenAI apontando o cliente para https://api.tokenlab.sh/v1.

Para a maioria dos projetos novos, prefira Chat Completions como o caminho compatível com OpenAI padrão. Use Responses API apenas quando você precisar explicitamente do comportamento específico do Responses.

Os campos específicos do Responses não têm garantia de se comportarem de forma idêntica em todos os modelos e caminhos roteados.

Python, JavaScript e Go têm SDKs oficiais da OpenAI. PHP funciona bem com clientes comunitários compatíveis com OpenAI, mas não é um SDK oficial da OpenAI.

Instalação

pip install openai

Use POST /v1/responses apenas quando você precisar explicitamente do comportamento específico do Responses. Alguns campos exclusivos do Responses ainda podem depender do modelo selecionado e do caminho roteado.

Configurar o 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)

Avançado: Responses API

Use este caminho apenas quando sua ferramenta ou fluxo de trabalho depender explicitamente da semântica do OpenAI Responses.

Streaming com 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="")

Ferramentas / Chamada de Função

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)

Visão com 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 é o caminho compatível com OpenAI padrão para o 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)

Resolução de problemas

Nesta página