Pular para o conteúdo
Português

Interface nativa de conversa Messages

Cabeçalhos de requisição do Claude Messages, diferenças entre system e messages, blocos de conteúdo e motivos de término.

Claude Code, o SDK da Anthropic e aplicações que desejam preservar os blocos de conteúdo nativos do Claude usam POST https://1zheai.com/v1/messages. Preencha a Base URL do SDK com https://1zheai.com.

Primeiro defina a variável de ambiente da chave deste site ONEZHE_API_KEY e depois execute:

bash
curl --fail-with-body --connect-timeout 10 --max-time 120 \
https://1zheai.com/v1/messages \
-H "x-api-key: $ONEZHE_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-5-5",
"max_tokens": 256,
"system": "请用简短的中文回答。",
"messages": [{"role": "user", "content": "什么是域名解析?"}]
}'
CampoTipoComo usar
modelstringObrigatório, seleciona o modelo Claude disponível para a chave
max_tokensintegerObrigatório, limite máximo de saída; defina combinando com as restrições do modelo selecionado
messagesarrayObrigatório, envia mensagens user e assistant em ordem cronológica
systemstring ou array de blocos de conteúdoOpcional, instruções do sistema ficam no nível superior, sem usar mensagens role: system
streambooleanOpcional, lê os incrementos dos blocos de conteúdo em streaming
toolsarrayOpcional, declara nome, propósito e Schema de entrada das ferramentas

thinking, controle de cache e parâmetros beta dependem do modelo específico e do suporte do upstream. Valide primeiro texto simples e adicione conforme necessário; não trate todos os modelos como o mesmo conjunto de parâmetros.

O content retornado é um array e pode conter texto, solicitações de ferramenta ou outros blocos de conteúdo ao mesmo tempo. Não leia content[0].text incondicionalmente. Por exemplo, usando o SDK Python da Anthropic:

python
for block in message.content:
if block.type == "text":
print(block.text)

Aqui o message vem de client.messages.create(...) no tutorial do SDK da Anthropic.

stop_reasonComo a aplicação deve tratar
end_turnA resposta desta rodada terminou
max_tokensA saída foi truncada pelo limite máximo e não pode ser tratada como resposta completa
tool_useVerifique as solicitações de ferramenta, execute as ferramentas permitidas e devolva os resultados
Outros valoresPreserve a resposta e trate conforme o protocolo do modelo selecionado; não assuma que é necessariamente conclusão de texto

No ciclo de chamadas de ferramenta, primeiro adicione o bloco de conteúdo completo do assistant ao histórico e depois devolva com tool_result no conteúdo do user; tool_use_id deve corresponder à requisição original. Não converta solicitações de ferramenta diretamente em um texto simples.

Envie o histórico necessário a cada requisição; a interface em si não armazena a conversa para a aplicação. O streaming indica o fim da mensagem com message_stop; receber texto parcial não significa que a requisição já foi concluída. Veja saída em streaming.

Para detalhes do protocolo, consulte instruções de uso do Anthropic Messages. A disponibilidade dos parâmetros estendidos deste site depende do catálogo de modelos e da resposta real.