Guia da API GLM: GLM-5.2, GLM-5.3 e GLM-5.3-Flash
Chame GLM-5.2, GLM-5.3 e GLM-5.3-Flash através da APIMaster com Python ou curl. Testado com Chat, Responses, Messages, streaming, JSON e chamadas de ferramentas.
Use glm-5.2, glm-5.3 ou glm-5.3-flash com uma chave de API da APIMaster e a URL base https://apimaster.ai/v1. Para aplicações compatíveis com OpenAI, comece com Chat Completions. O Codex usa Responses; o Claude Code usa a interface Messages.
Estes são resultados de integração do gateway APIMaster, não uma afirmação de que cada upstream GLM implementa nativamente todos os protocolos. GLM é a família de modelos; os SDKs da OpenAI e da Anthropic fornecem as interfaces de cliente.
Compatibilidade testada
A validação começou em 15/09/2026 UTC, usando o endpoint público da APIMaster e roteamento normal. Cada modelo concluiu as seguintes verificações:
| Verificação | glm-5.2 |
glm-5.3 |
glm-5.3-flash |
|---|---|---|---|
| Chat Completions: regular e streaming | Aprovado | Aprovado | Aprovado |
| Responses: regular e streaming | Aprovado | Aprovado | Aprovado |
| Messages: regular e streaming | Aprovado | Aprovado | Aprovado |
| Chamada de função/ferramenta e ida e volta do resultado da ferramenta, nos três protocolos | Aprovado | Aprovado | Aprovado |
| Saída JSON de objeto no Chat | Aprovado | Aprovado | Aprovado |
Os testes de texto verificaram a resposta real e o evento de término do stream, não apenas o HTTP 200. Os testes de ferramentas solicitaram uma função de clima e então retornaram um código de verificação fornecido somente no resultado da ferramenta. Estas são verificações funcionais de integração, não benchmarks de throughput nem um SLA de disponibilidade. Sessões longas, contexto máximo, vídeo e todos os parâmetros avançados estão fora desta matriz de testes.
1. Obtenha uma chave de API
Crie uma chave de API da APIMaster, habilite o modelo desejado e adicione saldo à conta. Use os IDs de modelo exatos acima. Uma chave da BigModel, OpenAI ou Anthropic não consegue autenticar na APIMaster.
macOS / Linux:
export APIMASTER_API_KEY='YOUR_APIMASTER_API_KEY'
Windows PowerShell:
$env:APIMASTER_API_KEY = 'YOUR_APIMASTER_API_KEY'
2. Chame o Chat Completions com curl
curl --fail-with-body --max-time 120 'https://apimaster.ai/v1/chat/completions' \
-H "Authorization: Bearer $APIMASTER_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"model":"glm-5.3-flash","messages":[{"role":"user","content":"Reply with exactly GLM_API_OK."}],"max_tokens":2048}'
Leia choices[0].message.content. Altere model para glm-5.2 ou glm-5.3 para trocar de modelo. Modelos de raciocínio podem consumir parte do orçamento de saída antes de emitir a resposta final.
3. Use o SDK Python da OpenAI
python -m pip install -U openai
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["APIMASTER_API_KEY"],
base_url="https://apimaster.ai/v1",
timeout=120.0,
)
response = client.chat.completions.create(
model="glm-5.3-flash",
messages=[{"role": "user", "content": "Reply with exactly GLM_API_OK."}],
max_tokens=2048,
)
print(response.choices[0].message.content)
Para streaming, defina stream=True. Verifique se há choices vazias: o chunk final de usage pode conter usage sem um delta de texto.
stream = client.chat.completions.create(
model="glm-5.3-flash",
messages=[{"role": "user", "content": "Explain binary search briefly."}],
max_tokens=4096,
stream=True,
stream_options={"include_usage": True},
)
for chunk in stream:
if chunk.choices:
text = chunk.choices[0].delta.content
if text:
print(text, end="", flush=True)
if chunk.usage:
print("\nUsage:", chunk.usage)
O primeiro evento pode conter raciocínio em vez do texto visível da resposta. Preserve reasoning_content ao transportar mensagens do assistente para uma conversa com ferramentas em rotas que o retornam; não reconstrua a mensagem do assistente apenas a partir do texto final.
4. Escolha o endpoint correto
| Aplicação | URL base | Endpoint da requisição |
|---|---|---|
| SDK Python da OpenAI / Chat | https://apimaster.ai/v1 |
/v1/chat/completions |
| API Responses / Codex | https://apimaster.ai/v1 |
/v1/responses |
| Claude Code | https://apimaster.ai |
/v1/messages |
Requisição mínima para Responses:
curl --fail-with-body --max-time 120 'https://apimaster.ai/v1/responses' \
-H "Authorization: Bearer $APIMASTER_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"model":"glm-5.3","input":"Reply with exactly GLM_API_OK.","max_output_tokens":2048}'
Leia o texto dos itens de mensagem cujo tipo de conteúdo seja output_text; mantenha os itens de raciocínio separados. Para streaming, use stream: true e verifique por response.completed ou um evento de erro.
Parâmetros e solução de problemas
| Situação | Ação recomendada |
|---|---|
| 401 | Verifique a chave da APIMaster e a conta que a emitiu. |
| 404 | Use a URL base esperada pelo seu cliente; não duplique /v1. |
| Resposta vazia ou limite de saída | Inspecione o motivo de término e o uso de raciocínio; aumente o orçamento de saída. |
| Saída JSON | O Chat com response_format: {"type":"json_object"} passou em um teste básico de JSON. Valide o JSON retornado na sua aplicação. |
reasoning.summary rejeitado |
O suporte depende do upstream selecionado. Omita-o na configuração básica. Um teste bem-sucedido no gateway não estabelece suporte nativo da BigModel. |
thinking.type: disabled rejeitado |
O guia oficial do modelo GLM-5.3-Flash permite apenas enabled; não exija que o thinking esteja desabilitado. |
| 429 / 5xx / stream interrompido | Registre o ID da requisição, o modelo, o horário UTC e o erro. Use repetições limitadas quando for seguro; não repita ferramentas já executadas às cegas. |
Perguntas frequentes
O GLM-5.3-Flash é gratuito na APIMaster?
A palavra Flash faz parte do nome do modelo, não é uma promessa de uso gratuito. Consulte o marketplace de modelos para ver os preços atuais das rotas e a carteira para verificar as cobranças reais.
Uma alta taxa de acerto de cache se aplica a todas as requisições?
Não. A reutilização do cache depende da correspondência de prefixos de entrada e do upstream. Inspecione o usage retornado e seus registros de uso. A taxa de acerto de cache de uma carga de trabalho anterior não é uma garantia para uma nova aplicação.
Isso prova compatibilidade total com OpenAI ou Anthropic?
Isso estabelece os fluxos de trabalho testados de texto, streaming, JSON e ferramentas. Campos específicos do provedor, estado armazenado do Responses, busca na web integrada e multimídia requerem validação separada.