Guia do Usuário

Protocolos de API

A LMU AI oferece suporte a três protocolos de entrada — Anthropic, compatível com OpenAI e Gemini nativo. Uma tabela para escolher a Base URL e o endpoint corretos e evitar erros.

A LMU AI oferece suporte a três protocolos de entrada: Anthropic, compatível com OpenAI e Gemini nativo v1beta. Cada endpoint usa sua chave de API sk- da LMU AI, e os modelos que você pode efetivamente chamar são definidos pelo grupo da chave.

Duas coisas para manter claras primeiro

  • "Qual protocolo" é definido pelo cliente, SDK e caso de uso. O SDK da Anthropic usa /v1/messages, o SDK da OpenAI usa /v1/chat/completions ou /v1/responses, e as chamadas de imagem do Gemini nativo usam /v1beta/models/{model}:generateContent.
  • "Quais modelos você pode chamar" é definido pelo grupo da sua chave de API (a conta upstream por trás da sua assinatura / plano de recarga), que é uma dimensão separada do protocolo de entrada.

Em outras palavras: o protocolo errado dá um 401 / 404 direto; o protocolo certo com um modelo fora do intervalo do seu grupo retorna um erro de modelo indisponível.

O erro mais comum vem do protocolo errado

  • A Base URL do protocolo Anthropic não inclui o sufixo /v1
  • A Base URL do SDK do protocolo OpenAI normalmente inclui o sufixo /v1
  • O protocolo Gemini nativo usa https://api.lmuai.com como host e chama o caminho completo /v1beta/...

Errar isso causa 400 / 401 / 404. Antes de configurar uma ferramenta ou escrever código, confirme qual protocolo o cliente espera.


Escolha seu protocolo rapidamente

ProtocoloBase URLFerramentas típicas
Protocolo Anthropichttps://api.lmuai.comClaude Code (CLI / desktop / extensão VS Code), o SDK oficial anthropic, Cherry Studio, Kilo Code com Claude / modelos chineses, qualquer cliente compatível com Anthropic
Compatível com OpenAIhttps://api.lmuai.com/v1Codex CLI, Codex App, Cursor / Cline / Roo Code / OpenCode, o SDK oficial openai, extensões do VS Code com GPT, qualquer cliente compatível com OpenAI
Gemini nativo v1betahttps://api.lmuai.comSDK / clientes HTTP do Gemini nativo, texto-para-imagem e imagem-para-imagem do Gemini, lista de modelos e generateContent

Os três protocolos usam a chave da LMU AI que começa com sk-:

  • Protocolo Anthropic: Authorization: Bearer <YOUR_API_KEY> ou x-api-key: <YOUR_API_KEY>
  • Compatível com OpenAI: Authorization: Bearer <YOUR_API_KEY>
  • Gemini nativo: x-goog-api-key: <YOUR_API_KEY> recomendado, Bearer também é aceito

Protocolo Anthropic

Base URL: https://api.lmuai.com (sem /v1)

Endpoints:

  • POST /v1/messages — conversa de mensagens
  • POST /v1/messages/count_tokens — contagem de tokens
  • GET /v1/models — lista de modelos disponíveis

Exemplo com SDK Python:

from anthropic import Anthropic

client = Anthropic(
    base_url="https://api.lmuai.com",
    api_key="sk-xxxxxxxx",
)

resp = client.messages.create(
    model="claude-sonnet-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello"}],
)
print(resp.content[0].text)

Exemplo com curl:

curl -X POST https://api.lmuai.com/v1/messages \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "max_tokens": 1024,
    "messages": [{"role":"user","content":"Hello"}]
  }'

Por que o base_url do SDK é sem /v1 mas o curl é com /v1?

A convenção do base_url do SDK oficial da Anthropic é omitir /v1; o SDK adiciona caminhos como /v1/messages internamente. Quando você escreve o curl à mão, você escreve o caminho completo /v1/messages. Ambos apontam para o mesmo endpoint.


Protocolo OpenAI

Base URL: https://api.lmuai.com/v1 (com /v1)

Endpoints:

  • POST /chat/completions — API padrão de Chat Completions
  • POST /responses — API de Responses da OpenAI (incluindo os subcaminhos /responses/{id})
  • POST /images/generations, POST /images/edits — geração / edição de imagens

Exemplo com SDK Python:

from openai import OpenAI

client = OpenAI(
    base_url="https://api.lmuai.com/v1",
    api_key="sk-xxxxxxxx",
)

resp = client.chat.completions.create(
    model="gpt-5.6-sol",
    messages=[{"role": "user", "content": "Hello"}],
)
print(resp.choices[0].message.content)

Exemplo com curl:

curl -X POST https://api.lmuai.com/v1/chat/completions \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.6-sol",
    "messages": [{"role":"user","content":"Hello"}]
  }'

Protocolo Gemini nativo

Base URL: https://api.lmuai.com

Endpoints principais:

  • GET /v1beta/models — lista os modelos do Gemini nativo
  • GET /v1beta/models/{model} — consulta um modelo específico
  • POST /v1beta/models/{model}:generateContent — geração de texto, texto-para-imagem e imagem-para-imagem
  • POST /v1beta/models/{model}:streamGenerateContent?alt=sse — geração em streaming

Autenticação:

x-goog-api-key: YOUR_API_KEY

Exemplo mínimo de texto-para-imagem:

curl --request POST \
  'https://api.lmuai.com/v1beta/models/gemini-3.1-flash-image:generateContent' \
  -H 'x-goog-api-key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "contents": [{
      "role": "user",
      "parts": [{"text": "an orange cat wearing an astronaut helmet"}]
    }],
    "generationConfig": {
      "responseModalities": ["TEXT", "IMAGE"],
      "imageConfig": {"aspectRatio": "1:1", "imageSize": "1K"}
    }
  }'

O endpoint de imagem do Gemini não é /v1/chat/completions

Os modelos de imagem do Gemini usam o generateContent nativo. Para detalhes completos de texto-para-imagem, imagem-para-imagem, 1K / 2K / 4K e parsing de Base64, consulte a API de Imagem do Gemini.

Para modelos de imagem GPT, consulte a API de Imagem GPT, e para modelos de imagem Grok, consulte a API de Imagem Grok. Para grandes jobs offline do Gemini, consulte a API de Imagem em Lote do Gemini.


Protocolo e modelos disponíveis são duas coisas diferentes

Quais modelos sua chave pode chamar é decidido inteiramente pela conta upstream montada em seu grupo, independentemente do protocolo com que você chama:

O upstream no seu grupoOs modelos que você pode efetivamente chamar
Apenas conta OpenAIApenas a série GPT
Apenas conta ClaudeApenas a série Claude (mesmo que você chame com o protocolo OpenAI, o backend traduz o protocolo, mas o intervalo de modelos não muda)
Apenas upstream de modelos chineses (ex.: GLM / Kimi)Apenas os modelos chineses correspondentes
Roteamento de modelo configurado no backend (grupo multi-upstream)roteado por nome de modelo para diferentes upstreams, podendo abranger marcas — o intervalo exato depende da configuração do grupo

Então:

  • Escolher o protocolo Anthropic, compatível com OpenAI ou Gemini nativo determina o formato da requisição de entrada; o intervalo real de modelos ainda é decidido pelo grupo da chave de API.
  • Para ver quais modelos sua chave atual pode chamar, verifique a lista de modelos do grupo na página de detalhes de API Keys ou na página de Modelos Disponíveis no console.

Sobre o grupo Claude Max

O grupo Claude Max oferece suporte apenas ao protocolo Anthropic

O grupo Claude Max é apenas para o Claude Code, então ele só pode usar o protocolo Anthropic (https://api.lmuai.com).

Se você estiver usando uma chave de um grupo do plano Claude Max:

  • ✅ Funciona no Claude Code (CLI / desktop / extensão VS Code)
  • Não pode ser usada com Codex CLI, Cursor, Cherry Studio ou qualquer ferramenta que use o protocolo OpenAI
  • Não pode ser inserida como https://api.lmuai.com/v1

Para usar uma ferramenta do protocolo OpenAI, troque para uma chave de um grupo de pagamento por uso / assinatura regular (os modelos disponíveis exatos ainda dependem do grupo de plano que você comprou).


Solução de problemas

SintomaCausa habitualO que fazer
401 UnauthorizedBase URL usa o protocolo errado / erro de digitação na chave / IDE não reiniciadaVerifique se a Base URL corresponde ao protocolo da ferramenta; reinicie a IDE para recarregar a configuração
404 Not FoundURL do protocolo OpenAI sem /v1, URL do Anthropic incluindo /v1 erroneamente, ou caminho do Gemini não usando /v1beta/models/...Reveja a Base URL e o endpoint completo em relação à tabela acima
Modelo indisponível / No available accountsChamou um modelo fora do intervalo do seu grupo (ex.: chamar GPT com um grupo Claude Max)Confirme os modelos que seu grupo realmente inclui na página de Modelos Disponíveis, ou troque para um grupo que inclua o modelo desejado
429 Too Many RequestsCota diária esgotadaConsulte o FAQ

Para mais soluções de problemas, consulte o FAQ.


Próximos passos

Depois que o protocolo e a Base URL estiverem corretos, escolha a ferramenta que você deseja:

Última atualização:

Nesta página