• Mensagens
  • Agentes Gerenciados
  • Administração
Search...
⌘K
CLI, SDKs e bibliotecas
Visão geral
CLI ant
Início rápidoOpções de autenticaçãoUsando a CLIScripts e automação
SDKs de cliente
MiddlewarePythonTypeScriptC#GoJavaPHPRuby
Bibliotecas e integrações
Apple Foundation ModelsCompatibilidade com o SDK da OpenAI
Log in
Compatibilidade com o SDK da OpenAI
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
CLI, SDKs e bibliotecas/Bibliotecas e integrações

Compatibilidade com o OpenAI SDK

A Anthropic fornece uma camada de compatibilidade que permite usar o OpenAI SDK para testar a API do Claude. Com algumas alterações no código, você pode avaliar rapidamente as capacidades dos modelos da Anthropic.

Esta camada de compatibilidade destina-se principalmente a testar e comparar capacidades de modelos, e não é considerada uma solução de longo prazo ou pronta para produção na maioria dos casos de uso. Embora a intenção seja que ela permaneça totalmente funcional e sem alterações que quebrem a compatibilidade, a prioridade é a confiabilidade e a eficácia da API do Claude.

Para mais informações sobre limitações de compatibilidade conhecidas, consulte Limitações importantes de compatibilidade com OpenAI.

Se você encontrar algum problema com o recurso de compatibilidade com o OpenAI SDK, compartilhe seu feedback por meio deste formulário de feedback de compatibilidade.

Para a melhor experiência e acesso ao conjunto completo de recursos da API do Claude (processamento de PDF, citações, pensamento estendido e cache de prompt), use a API do Claude nativa.

Primeiros passos com o OpenAI SDK

Para usar o recurso de compatibilidade com o OpenAI SDK, você precisará:

  1. Usar um OpenAI SDK oficial
  2. Alterar o seguinte
    • Atualizar sua URL base para apontar para a API do Claude
    • Substituir sua chave de API por uma chave de API do Claude
    • Atualizar o nome do modelo para usar um modelo Claude
  3. Revisar a documentação abaixo para saber quais recursos são suportados

Exemplo de início rápido

import os

from openai import OpenAI

client = OpenAI(
    api_key=os.environ.get("ANTHROPIC_API_KEY"),  # Your Claude API key
    base_url="https://api.anthropic.com/v1/",  # the Claude API endpoint
)

response = client.chat.completions.create(
    model="claude-opus-4-8",  # Claude model name
    messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Who are you?"},
    ],
)

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

Limitações importantes de compatibilidade com OpenAI

Comportamento da API

Aqui estão as diferenças mais substanciais em relação ao uso da OpenAI:

  • O parâmetro strict para chamadas de função é ignorado, o que significa que não há garantia de que o JSON de uso de ferramentas siga o schema fornecido. Para conformidade garantida com o schema, use a API do Claude nativa com Structured Outputs.
  • Entrada de áudio não é suportada; ela será simplesmente ignorada e removida da entrada
  • Cache de prompt não é suportado, mas é suportado nos SDKs da Anthropic
  • Mensagens de sistema/desenvolvedor são movidas e concatenadas no início da conversa, já que a Anthropic suporta apenas uma única mensagem de sistema inicial.

A maioria dos campos não suportados é ignorada silenciosamente em vez de produzir erros. Todos eles estão documentados abaixo.

Considerações sobre qualidade da saída

Se você fez muitos ajustes no seu prompt, é provável que ele esteja bem otimizado especificamente para a OpenAI. Considere usar o aprimorador de prompts no Claude Console como um bom ponto de partida.

Movimentação de mensagens de sistema / desenvolvedor

A maioria das entradas do OpenAI SDK mapeia claramente de forma direta para os parâmetros da API da Anthropic, mas uma diferença distinta é o tratamento de prompts de sistema / desenvolvedor. Esses dois tipos de prompt podem ser inseridos ao longo de uma conversa de chat via OpenAI. Como a Anthropic suporta apenas uma mensagem de sistema inicial, a API pega todas as mensagens de sistema/desenvolvedor e as concatena com uma única quebra de linha (\n) entre elas. Essa string completa é então fornecida como uma única mensagem de sistema no início das mensagens.

Suporte a pensamento estendido

Você pode habilitar as capacidades de pensamento estendido adicionando o parâmetro thinking. Embora isso melhore o raciocínio do Claude para tarefas complexas, o OpenAI SDK não retorna o processo de pensamento detalhado do Claude. Para recursos completos de pensamento estendido, incluindo acesso à saída de raciocínio passo a passo do Claude, use a API do Claude nativa.

response = client.chat.completions.create(
    model="claude-sonnet-4-6",
    messages=[{"role": "user", "content": "Who are you?"}],
    extra_body={"thinking": {"type": "enabled", "budget_tokens": 2000}},
)

Limites de taxa

Os limites de taxa seguem os limites padrão da Anthropic para o endpoint /v1/messages.

Suporte detalhado da API compatível com OpenAI

Campos de requisição

Campos simples

CampoStatus de suporte
modelUse nomes de modelos Claude
max_tokensTotalmente suportado
max_completion_tokensTotalmente suportado
streamTotalmente suportado
stream_optionsTotalmente suportado
top_pTotalmente suportado
parallel_tool_callsTotalmente suportado
stopTodas as sequências de parada que não sejam espaços em branco funcionam
temperatureEntre 0 e 1 (inclusive). Valores maiores que 1 são limitados a 1.
nDeve ser exatamente 1
logprobsIgnorado
metadataIgnorado
response_formatIgnorado. Para saída JSON, use Structured Outputs com a API do Claude nativa
predictionIgnorado
presence_penaltyIgnorado
frequency_penaltyIgnorado
seedIgnorado
service_tierIgnorado
audioIgnorado
logit_biasIgnorado
storeIgnorado
userIgnorado
modalitiesIgnorado
top_logprobsIgnorado
reasoning_effortIgnorado

Campos tools / functions

Campos do array messages

Campos de resposta

CampoStatus de suporte
idTotalmente suportado
choices[]Sempre terá comprimento 1
choices[].finish_reasonTotalmente suportado
choices[].indexTotalmente suportado
choices[].message.roleTotalmente suportado
choices[].message.contentTotalmente suportado
choices[].message.tool_callsTotalmente suportado
objectTotalmente suportado
createdTotalmente suportado
modelTotalmente suportado
finish_reasonTotalmente suportado
contentTotalmente suportado
usage.completion_tokensTotalmente suportado
usage.prompt_tokensTotalmente suportado
usage.total_tokensTotalmente suportado
usage.completion_tokens_detailsSempre vazio
usage.prompt_tokens_detailsSempre vazio
choices[].message.refusalSempre vazio
choices[].message.audioSempre vazio
logprobsSempre vazio
service_tierSempre vazio
system_fingerprintSempre vazio

Compatibilidade de mensagens de erro

A camada de compatibilidade mantém formatos de erro consistentes com a API da OpenAI. No entanto, as mensagens de erro detalhadas não serão equivalentes. Use as mensagens de erro apenas para registro em log e depuração.

Compatibilidade de cabeçalhos

Embora o OpenAI SDK gerencie cabeçalhos automaticamente, aqui está a lista completa de cabeçalhos suportados pela API do Claude para desenvolvedores que precisam trabalhar com eles diretamente.

CabeçalhoStatus de suporte
x-ratelimit-limit-requestsTotalmente suportado
x-ratelimit-limit-tokensTotalmente suportado
x-ratelimit-remaining-requestsTotalmente suportado
x-ratelimit-remaining-tokensTotalmente suportado
x-ratelimit-reset-requestsTotalmente suportado
x-ratelimit-reset-tokensTotalmente suportado
retry-afterTotalmente suportado
request-idTotalmente suportado
openai-versionSempre 2020-10-01
authorizationTotalmente suportado
openai-processing-msSempre vazio

Was this page helpful?

  • Primeiros passos com o OpenAI SDK
  • Exemplo de início rápido
  • Limitações importantes de compatibilidade com OpenAI
  • Comportamento da API
  • Considerações sobre qualidade da saída
  • Movimentação de mensagens de sistema / desenvolvedor
  • Suporte a pensamento estendido
  • Limites de taxa
  • Suporte detalhado da API compatível com OpenAI
  • Campos de requisição
  • Campos de resposta
  • Compatibilidade de mensagens de erro
  • Compatibilidade de cabeçalhos