Compatibilidade com OpenAI
A API da Bayle é modelada como a da OpenAI, então um SDK da OpenAI funciona contra ela assim que
você troca a base URL e a key. As respostas de erro usam o envelope da OpenAI e seu vocabulário de
type também, o que significa que o mapeamento de exceções de um SDK continua funcionando sem
alterações.
Trocando a base URL
Seção intitulada “Trocando a base URL”import osfrom openai import OpenAI
client = OpenAI( api_key=os.environ["BAYLE_API_KEY"], base_url="https://api.bayle.ai",)import OpenAI from 'openai'
const client = new OpenAI({ apiKey: process.env.BAYLE_API_KEY, baseURL: 'https://api.bayle.ai',})import ( "os"
"github.com/openai/openai-go" "github.com/openai/openai-go/option")
client := openai.NewClient( option.WithAPIKey(os.Getenv("BAYLE_API_KEY")), option.WithBaseURL("https://api.bayle.ai"),)# Muitas ferramentas leem essas variáveis diretamente, então nenhuma mudança de código é necessária.export OPENAI_API_KEY="$BAYLE_API_KEY"export OPENAI_BASE_URL="https://api.bayle.ai"A última aba vale a pena conhecer: CLIs agênticas e integrações de editor que falam com um
endpoint compatível com OpenAI costumam ler OPENAI_BASE_URL e OPENAI_API_KEY sem nenhuma
configuração própria.
Onde o comportamento difere
Seção intitulada “Onde o comportamento difere”Três pontos vão surpreender um client escrito contra os padrões da OpenAI. Os três estão no endpoint de imagens.
| OpenAI | Bayle | |
|---|---|---|
| Imagens por requisição | n até 10, dependendo do modelo |
No máximo 1; um n maior é rejeitado |
response_format: "url" |
Um link https:// acessível |
Uma data: URI em base64 no campo url |
response_format omitido |
Assume url por padrão |
Retorna b64_json, sem nenhum campo url |
Campos extras nas respostas
Seção intitulada “Campos extras nas respostas”A Bayle retorna alguns campos além do schema publicado pela OpenAI. Um SDK ignora o que não reconhece, então eles são aditivos em vez de quebrar algo:
cost, um objeto detalhando quanto a requisição custou e de qual saldo foi debitada.service_tier, o tier que atendeu a requisição.reasoning_contentethought_signaturedentro de umdeltatransmitido via streaming, para modelos com capacidade de reasoning. Ambos são nulos para modelos que não raciocinam.
O que a Bayle não serve
Seção intitulada “O que a Bayle não serve”A superfície da API são exatamente as oito operações na referência. Não há assistants API, files API, fine-tuning, endpoint de moderations, nem endpoints de áudio. Uma chamada para qualquer coisa não listada ali não vai encontrar uma rota.
Além da superfície da OpenAI
Seção intitulada “Além da superfície da OpenAI”Geração de vídeo não tem equivalente na API da OpenAI, então ela não vem junto com um SDK. É uma fila que você consulta, em quatro endpoints, e está coberta em o guia de vídeo.