Unquant

Opening your workspace…

Unquant

Geração de respostas de chat

Geração de respostas de chat compatível com a OpenAI, com streaming, imagens, chamadas de ferramentas e controle de raciocínio.

POST /v1/chat/completions

curl https://api.unquant.io/v1/chat/completions \
  -H "Authorization: Bearer $UNQUANT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"glm-5.3-flash",
       "messages":[{"role":"user","content":"Hello!"}]}'

Campos da requisição

Principais
modeltextoObrigatório

glm-5.3-flash ou qwen-3.8-flash-next.

messageslistaObrigatório

Aceita os papéis system, user, assistant e tool. O conteúdo é um texto ou uma lista de partes dos tipos text e image_url.

streambooleano

Transmite a resposta em streaming por meio de eventos enviados pelo servidor.

stream_optionsobjeto

{"include_usage": true} adiciona um bloco final com as contagens de tokens.

Comprimento
max_tokensinteiro

Limite máximo para o comprimento da resposta.

max_completion_tokensinteiro

Equivalente a max_tokens.

Amostragem
temperaturenúmero

Grau de aleatoriedade da amostragem.

top_pnúmero

Amostragem por núcleo.

top_kinteiro

Seleciona tokens entre os k mais prováveis.

min_pnúmero

Probabilidade relativa mínima para um token.

seedinteiro

Semente para uma amostragem reproduzível.

stoptexto ou lista

Sequências de parada.

Repetição
frequency_penaltynúmero

Penaliza tokens de acordo com a frequência com que apareceram.

presence_penaltynúmero

Penaliza tokens que já apareceram, independentemente da frequência.

repetition_penaltynúmero

Penalidade multiplicativa por repetição.

Ferramentas
toolslista

Funções que o modelo pode chamar, no formato da OpenAI.

tool_choicetexto ou objeto

auto, none, required ou uma função especificada pelo nome.

parallel_tool_callsbooleano

Permite várias chamadas de ferramentas em um único turno.

Saída
response_formatobjeto

Saída em JSON.

logprobsbooleano

Retorna os logaritmos das probabilidades dos tokens.

top_logprobsinteiro

Quantidade de alternativas a retornar por token.

ninteiro

Deve ser 1: uma resposta por requisição.

Raciocínio
reasoning_efforttexto

Os dois modelos aceitam none, low ou high; o GLM-5.3-Flash também aceita max.

chat_template_kwargsobjeto

Opções de configuração do modelo de formatação do chat, como {"enable_thinking": false}.

Outros campos são ignorados.

Resposta

response.choices[0].message.content

As contagens de uso são retornadas para você monitorar o consumo; elas nunca geram cobrança.

Streaming

Com "stream": true, a resposta chega por meio de eventos enviados pelo servidor, no formato de blocos da OpenAI, e termina com data: [DONE]. Leia o texto em choices[0].delta.content.

Imagens

Os dois modelos aceitam imagens como partes do tipo image_url que contêm uma URL de dados em base64 (data:image/png;base64,..., JPEG ou WebP). Imagens indicadas por URLs remotas não são baixadas e retornam o erro 400.

{"role": "user", "content": [
  {"type": "text", "text": "Describe this image."},
  {"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,/9j/4AAQ..."}}
]}

Chamadas de ferramentas

Envie tools no mesmo formato da API da OpenAI. Quando o modelo chama uma ferramenta, a resposta contém finish_reason: "tool_calls" e message.tool_calls; execute a ferramenta, acrescente uma mensagem tool com o resultado e o tool_call_id correspondente e faça uma nova chamada.

Raciocínio

Os dois modelos raciocinam antes de responder e aceitam reasoning_effort: none para respostas diretas, low para raciocínio leve ou high para problemas mais difíceis; o GLM-5.3-Flash também aceita max e usa high por padrão. O raciocínio é retornado separadamente em reasoning_content, sem nunca ser misturado ao content. "thinking": {"type": "disabled"} e "chat_template_kwargs": {"enable_thinking": false} também desativam o raciocínio.

Requisições simultâneas

Seu plano define quantas requisições podem ser executadas ao mesmo tempo, considerando todas as suas chaves. Uma requisição que excede esse limite retorna 429 imediatamente e não entra em uma fila; as requisições em andamento não são afetadas.

Guia para desenvolvedores