Família GLM
Os modelos de texto GLM da Zhipu, incluindo as séries GLM-5.3, GLM-5.2, GLM-5.1 e GLM-5, além do modelo de visão GLM-5V Turbo. São chamados pela API compatível com OpenAI e também suportam o endpoint nativo da Anthropic, podendo ser usados no Claude Code.
Tarefas comuns
Modelos
A lista completa de modelos e os preços atualizados estão na página de modelos ; também é possível consultá-los pela Models API. O prefixo dos IDs de modelo é z-ai/ e pode ser omitido.
z-ai/glm-5.3Somente texto; contexto de 1Mz-ai/glm-5.3-flashAceita entrada de imagemz-ai/glm-5.1Somente textoz-ai/glm-5v-turboAceita imagem e PDFOs modelos GLM são oferecidos pelo site internacional da Zhipu (zai), e alguns modelos também têm provedores como Alibaba Cloud Model Studio (Bailian) e Volcano Engine, escolhidos automaticamente por padrão. Como indicar um provedor está em Roteamento de provedores.
Exemplos de chamada
Python
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"])
resp = client.chat.completions.create(
model="z-ai/glm-5.1",
messages=[{"role": "user", "content": "Explique em uma frase o que é idempotência."}],
extra_body={"thinking": {"type": "disabled"}},
)
print(resp.choices[0].message.content)Modo thinking
Todos os modelos GLM vêm com thinking ativado por padrão. Quantidade de thinking e tempo medidos no mesmo problema de matemática:
Envie "thinking": {"type": "disabled"} para desativar o thinking. Em nossos testes, funciona com GLM-5.2, GLM-5.1, GLM-5, GLM-5 Turbo, GLM-5V Turbo e GLM-4.7 FlashX, com redução clara no tempo (o GLM-5, por exemplo, caiu de cerca de 4,5 minutos para cerca de 10 segundos). No SDK da OpenAI, coloque-o em extra_body.
Os tokens de thinking são cobrados pelo preço de saída, e a quantidade aparece em usage.completion_tokens_details.reasoning_tokens.
Ler o conteúdo do thinking
- Em respostas com streaming, o conteúdo do thinking fica em
delta.reasoning_content, como na API oficial da Zhipu. - Em respostas sem streaming, o conteúdo do thinking fica em
message.reasoning_details; concatene otextde cada item na ordem.
Usar no Claude Code
Os modelos GLM suportam o endpoint nativo da Anthropic, no endereço https://api.ofox.io/anthropic:
https://api.ofox.io/anthropicz-ai/glm-5.3curl https://api.ofox.io/anthropic/v1/messages \
-H "x-api-key: $OFOX_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "z-ai/glm-5.3",
"max_tokens": 8000,
"messages": [{"role": "user", "content": "Explique em uma frase o que é idempotência."}]
}'- Pelo endpoint Anthropic, o conteúdo do thinking é retornado em blocos
thinking, e"thinking": {"type": "disabled"}também desativa o thinking (nos mesmos modelos citados acima). - Com o thinking ativado, defina um
max_tokensgrande o suficiente e um timeout do cliente de 600 segundos ou mais.
Os passos completos de configuração do Claude Code estão em Configuração do Claude Code.
Imagem e PDF
Os modelos que aceitam entrada de imagem usam o bloco de conteúdo padrão image_url; o GLM-5V Turbo também aceita PDF pelo bloco de conteúdo file:
import base64
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.ofox.io/v1", api_key=os.environ["OFOX_API_KEY"])
img_b64 = base64.b64encode(open("photo.png", "rb").read()).decode()
resp = client.chat.completions.create(
model="z-ai/glm-5v-turbo",
messages=[{"role": "user", "content": [
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{img_b64}"}},
{"type": "text", "text": "Descreva esta imagem."},
]}],
extra_body={"thinking": {"type": "disabled"}},
)
print(resp.choices[0].message.content)GLM-5.3, GLM-5.2, GLM-5.1, GLM-5 e GLM-5 Turbo aceitam somente texto; não envie imagens a eles.
Saída JSON e chamada de ferramentas
Em response_format, use {"type": "json_object"} e deixe explícito no prompt “retorne em JSON” e os campos necessários; a chamada de ferramentas usa o parâmetro padrão tools. O formato está em Saída estruturada e Chamada de funções.
Cache de prompt
O GLM armazena automaticamente em cache os prefixos de requisição repetidos, sem alterações na requisição. A quantidade em cache aparece em usage.prompt_tokens_details.cached_tokens, e a parte em cache é cobrada pelo preço de leitura de cache.
Erros comuns
Outros erros gerais estão em Tratamento de erros.
Documentação oficial
A documentação oficial descreve o comportamento das chamadas diretas à Zhipu. Ao chamar pela OfoxAI, prevalecem os IDs de modelo e os endereços de endpoint desta página.
Perguntas frequentes
Como escrever o ID de modelo do GLM?
O formato padrão é z-ai/glm-5.3; também é possível omitir o prefixo e escrever glm-5.3. Escrever zhipu/glm-5.3 retorna 404.
Como desativar o thinking do GLM?
Envie "thinking": {"type": "disabled"}; no SDK da OpenAI, coloque-o em extra_body. Em nossos testes, funciona com GLM-5.2, 5.1, 5, 5 Turbo e 5V Turbo.
O GLM responde muito devagar, depois de vários minutos?
O GLM vem com thinking ativado por padrão, e GLM-5 e GLM-5 Turbo podem gerar dezenas de milhares de tokens de thinking e levar vários minutos em perguntas complexas. Quando não precisar de thinking, desative-o ou use o GLM-5.3 Flash, que gera menos thinking.
O Claude Code pode usar o GLM?
Sim. Defina ANTHROPIC_BASE_URL como https://api.ofox.io/anthropic e informe como modelo um ID GLM, como z-ai/glm-5.3.
Quais modelos GLM entendem imagens?
GLM-5.3 Flash, GLM-5.3 FlashX e GLM-5V Turbo aceitam entrada de imagem, e o GLM-5V Turbo também aceita PDF. Os demais modelos GLM aceitam somente texto.
O GLM retorna o erro Prompt 超长?
A entrada excedeu o contexto do modelo. A série GLM-5.3 e o GLM-5.2 têm 1M tokens; os demais, 200K tokens.