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 openaiUse 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)