DEV Community

Cover image for Como Usar a API Qwen 3.7? Guia Completo
Lucas
Lucas

Posted on • Originally published at apidog.com

Como Usar a API Qwen 3.7? Guia Completo

A equipe Qwen da Alibaba lançou o Qwen3.7-Max-Preview em meados de maio de 2026, e a pergunta prática para desenvolvedores é: como chamar esse modelo a partir do seu próprio código? O modelo é um sistema de raciocínio carro-chefe com janela de contexto de 1 milhão de tokens e rastreamentos explícitos de cadeia de pensamento, útil para backends de agentes, análise de documentos longos e geração de código. Porém, como ainda está em “preview”, o acesso é restrito, a superfície da API pode mudar e você deve confirmar IDs de modelo e endpoints antes de colocar qualquer integração em produção.

Experimente o Apidog hoje

TL;DR

O Qwen3.7-Max-Preview é o modelo de raciocínio carro-chefe da Alibaba, lançado em prévia em 14 de maio de 2026, com janela de contexto de 1 milhão de tokens. Durante a prévia, a forma mais direta de testá-lo é pelo Qwen Chat (chat.qwen.ai). Para integração via API, o caminho é o Alibaba Cloud Model Studio, também conhecido como DashScope, usando um endpoint compatível com OpenAI: você configura uma URL base, envia sua chave como Bearer token e chama /chat/completions.

Como a camada 3.7 ainda está em prévia, confirme sempre o ID exato do modelo e o endpoint na documentação oficial antes de lançar. Enquanto a disponibilidade se estabiliza, use o Apidog para testar, documentar e simular o endpoint.

Como acessar o Qwen 3.7 agora

O Qwen disponibiliza modelos por diferentes interfaces, mas elas não ficam disponíveis ao mesmo tempo. No final de maio de 2026, o cenário prático é este:

1. Qwen Chat

Use chat.qwen.ai para avaliação rápida.

Passos:

  1. Crie ou acesse uma conta Qwen.
  2. Abra o seletor de modelos.
  3. Escolha qwen3.7-max-preview, se disponível.
  4. Ative o Modo de Pensamento para visualizar o raciocínio.

Esse caminho é gratuito, com limites de uso durante a prévia. Ele serve para testar prompts e entender o comportamento do modelo, mas não é uma API para integração.

2. Alibaba Cloud Model Studio / DashScope

Para integração real, use o Alibaba Cloud Model Studio. Ele expõe modelos Qwen por uma API compatível com OpenAI, o que permite reaproveitar código que já usa o SDK da OpenAI, alterando principalmente:

  • base_url
  • chave de API
  • model

Modelos como qwen3.6-max-preview e a família qwen-max já seguem esse padrão. A camada qwen3.7-max-preview pode ainda não estar disponível publicamente via API quando você ler este artigo, então valide a lista atual no console do Model Studio.

Imagem do Model Studio

3. Endpoint compatível com OpenAI

A estrutura geral é:

POST {DASHSCOPE_BASE_URL}/chat/completions
Authorization: Bearer {DASHSCOPE_API_KEY}
Content-Type: application/json
Enter fullscreen mode Exit fullscreen mode

Exemplo de URL base para Singapura:

https://dashscope-intl.aliyuncs.com/compatible-mode/v1
Enter fullscreen mode Exit fullscreen mode

Como o identificador do modelo pode mudar durante a prévia, use a documentação oficial do Qwen e a lista de modelos do Model Studio como fonte da verdade.

Para uma alternativa de custo zero enquanto aguarda o acesso à API, veja também o guia sobre como usar o Qwen 3.7 gratuitamente.

Métodos de acesso em um relance

Método Acesso à API Custo Melhor para
Qwen Chat (chat.qwen.ai) Não Gratuito, com limite de taxa Avaliação rápida e teste de prompts
Alibaba Cloud Model Studio / DashScope Sim, compatível com OpenAI Pague por token Integração em produção
Qwen no Hugging Face Pesos, quando lançados Gratuito em self-host Modelos de peso aberto, não a prévia Max
Gateways de terceiros Varia Varia Roteamento multi-modelo

Importante: modelos Qwen de peso aberto podem chegar ao Hugging Face, mas a camada Max-Preview é proprietária. Não espere pesos para download de qwen3.7-max-preview.

Obtendo uma chave de API do Qwen 3.7

O acesso à API passa por uma conta Alibaba Cloud.

Passos:

  1. Crie uma conta Alibaba Cloud.
  2. Acesse o console do Model Studio em modelstudio.console.alibabacloud.com.
  3. Ative o Model Studio para sua conta e região.
  4. Abra a seção de chaves de API.
  5. Gere uma chave.
  6. Copie a chave e armazene-a como segredo.

As chaves são restritas à região. Uma chave criada para Singapura não autentica contra o endpoint de Pequim.

Escolha a URL base correta:

Região URL base
Singapura https://dashscope-intl.aliyuncs.com/compatible-mode/v1
EUA (Virgínia) https://dashscope-us.aliyuncs.com/compatible-mode/v1
Pequim (China) https://dashscope.aliyuncs.com/compatible-mode/v1

Nunca commite a chave no repositório. Use variável de ambiente:

# macOS / Linux
export DASHSCOPE_API_KEY="sk-your-key-here"

# Windows PowerShell
setx DASHSCOPE_API_KEY "sk-your-key-here"
Enter fullscreen mode Exit fullscreen mode

No código, leia DASHSCOPE_API_KEY em tempo de execução. Esse padrão facilita rotação de chaves e evita vazamento de segredo. O mesmo cuidado aparece em integrações com outros modelos, como no guia da API do Gemini 3.5.

Sua primeira requisição: Python, curl e JavaScript

O Model Studio expõe o Qwen por uma API compatível com OpenAI. Você pode usar:

  • SDK da OpenAI apontando para a URL base do DashScope
  • chamada HTTP direta

Antes de rodar os exemplos, confirme se qwen3.7-max-preview é o ID aceito pela API na sua região. Durante a prévia, uma camada anterior como qwen3.6-max-preview pode estar ativa enquanto a 3.7 ainda não foi liberada via API.

Python com o SDK da OpenAI

Instale:

pip install openai
Enter fullscreen mode Exit fullscreen mode

Envie uma requisição:

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["DASHSCOPE_API_KEY"],
    base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
)

response = client.chat.completions.create(
    model="qwen3.7-max-preview",
    messages=[
        {
            "role": "system",
            "content": "Você é um assistente de codificação preciso."
        },
        {
            "role": "user",
            "content": "Escreva uma função Python que inverte uma lista encadeada."
        },
    ],
)

print(response.choices[0].message.content)
Enter fullscreen mode Exit fullscreen mode

A estrutura segue o padrão Chat Completions:

  • system: define comportamento e contexto
  • user: mensagem do usuário
  • choices[0].message.content: texto gerado pelo modelo

curl

Use curl para validar rapidamente chave, endpoint e ID do modelo:

curl 'https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions' \
  --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
  --header 'Content-Type: application/json' \
  --data '{
    "model": "qwen3.7-max-preview",
    "messages": [
      {
        "role": "user",
        "content": "Explique idempotência em APIs REST em duas frases."
      }
    ]
  }'
Enter fullscreen mode Exit fullscreen mode

Se estiver tudo correto, a resposta será um JSON com a conclusão. Se falhar, verifique principalmente:

  • região do endpoint
  • chave de API
  • ID do modelo
  • permissão da conta para acessar a prévia

JavaScript / Node.js

Instale:

npm install openai
Enter fullscreen mode Exit fullscreen mode

Exemplo:

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.DASHSCOPE_API_KEY,
  baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
});

const response = await client.chat.completions.create({
  model: "qwen3.7-max-preview",
  messages: [
    {
      role: "user",
      content: "Liste três desvantagens do GraphQL em relação ao REST.",
    },
  ],
});

console.log(response.choices[0].message.content);
Enter fullscreen mode Exit fullscreen mode

A vantagem do endpoint compatível com OpenAI é manter a mesma estrutura de requisição em diferentes linguagens.

Respostas em streaming

Para interfaces voltadas ao usuário, prefira streaming. Assim você não espera a conclusão completa antes de exibir saída.

Em Python:

stream = client.chat.completions.create(
    model="qwen3.7-max-preview",
    messages=[
        {
            "role": "user",
            "content": "Resuma o teorema CAP."
        },
    ],
    stream=True,
)

for chunk in stream:
    delta = chunk.choices[0].delta.content
    if delta:
        print(delta, end="", flush=True)
Enter fullscreen mode Exit fullscreen mode

Em Node.js:

const stream = await client.chat.completions.create({
  model: "qwen3.7-max-preview",
  messages: [
    {
      role: "user",
      content: "Resuma o teorema CAP.",
    },
  ],
  stream: true,
});

for await (const chunk of stream) {
  process.stdout.write(chunk.choices[0]?.delta?.content || "");
}
Enter fullscreen mode Exit fullscreen mode

Streaming é especialmente útil em modelos de raciocínio, porque eles podem levar mais tempo antes de produzir a resposta final. Com streaming, você pode exibir progresso, um indicador de digitação ou a resposta conforme ela é gerada.

O parâmetro de raciocínio e pensamento

O Qwen3.7-Max-Preview é um modelo de raciocínio. Ele pode produzir uma cadeia de pensamento explícita em blocos <think> antes da resposta final. Isso pode ajudar em tarefas como:

  • matemática multi-passos
  • geração e revisão de código
  • planejamento
  • análise de documentos
  • depuração de raciocínio

Em modelos Qwen recentes servidos pelo DashScope, o comportamento de pensamento pode ser controlado por um flag como enable_thinking. Confirme o nome exato do parâmetro na referência atual da API, porque controles de raciocínio podem mudar entre versões.

Exemplo conceitual:

response = client.chat.completions.create(
    model="qwen3.7-max-preview",
    messages=[
        {
            "role": "user",
            "content": (
                "Um trem parte às 14h a uma velocidade média de 60 mph. "
                "Um segundo trem parte às 15h a 75 mph na mesma rota. "
                "Quando o segundo alcança o primeiro?"
            ),
        },
    ],
    extra_body={
        "enable_thinking": True
    },
)

print(response.choices[0].message.content)
Enter fullscreen mode Exit fullscreen mode

Use esse recurso com critério:

  • Pensamento custa tokens e latência. O rastro de raciocínio é saída gerada.
  • Ative para problemas difíceis. Ele faz mais sentido em tarefas multi-passos.
  • Desative para tarefas simples. Classificação, formatação e respostas curtas normalmente não precisam disso.
  • Decida se vai exibir o rastro. Alguns produtos mostram <think>; outros removem e exibem apenas a resposta final.

Se você está comparando modelos de raciocínio, veja a análise Qwen 3.7 vs GPT-5.5 vs Opus 4.7. Para agentes que consomem muitos tokens, as técnicas do artigo sobre como reduzir custos de tokens de agentes também se aplicam.

Tratamento de erros e limites de taxa

Falhas comuns em uma integração com o Qwen:

Status HTTP Significado O que fazer
400 Requisição inválida: JSON malformado ou parâmetro inválido Verifique corpo, ID do modelo e nomes dos campos
401 Chave de API inválida ou ausente Confira a chave e se ela corresponde à região do endpoint
403 Sem acesso ao modelo Confirme se sua conta tem acesso à prévia
404 Modelo não encontrado Verifique se o ID do modelo existe na região usada
429 Limite de taxa ou cota excedida Aplique retry com backoff e verifique limites da conta
500 / 503 Erro do lado do servidor Tente novamente com backoff exponencial

Em modelos em prévia, 403 e 404 são mais frequentes porque acesso e identificadores ainda podem mudar. Se você receber esses erros, investigue primeiro permissão e model.

Exemplo de retry em Python:

import os
import time
from openai import OpenAI, RateLimitError, APIStatusError

client = OpenAI(
    api_key=os.environ["DASHSCOPE_API_KEY"],
    base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
)

def ask_qwen(prompt, max_retries=4):
    for attempt in range(max_retries):
        try:
            response = client.chat.completions.create(
                model="qwen3.7-max-preview",
                messages=[
                    {
                        "role": "user",
                        "content": prompt,
                    }
                ],
            )
            return response.choices[0].message.content

        except RateLimitError:
            wait = 2 ** attempt
            print(f"Limite de taxa atingido. Tentando novamente em {wait}s...")
            time.sleep(wait)

        except APIStatusError as e:
            print(f"Erro da API {e.status_code}: {e.message}")
            raise

    raise RuntimeError("Falha após tentativas")
Enter fullscreen mode Exit fullscreen mode

Regra prática:

  • retry com backoff para 429 e 5xx
  • falha rápida para 400, 401, 403 e 404
  • logue o corpo do erro em ambiente de desenvolvimento
  • exponha mensagens seguras e genéricas para usuários finais

Testando e simulando a API do Qwen com Apidog

APIs em prévia são instáveis por natureza: acesso restrito, IDs de modelo em mudança e limites de taxa apertados. Em vez de testar apenas executando o aplicativo inteiro e lendo logs, isole o endpoint e valide cada requisição.

O Apidog ajuda nesse ciclo.

Apidog

Um fluxo prático:

  1. Crie uma requisição POST /chat/completions.
  2. Configure a URL base do DashScope.
  3. Adicione o header Authorization: Bearer {{DASHSCOPE_API_KEY}}.
  4. Salve o corpo JSON com model e messages.
  5. Execute testes manuais para validar resposta e erros.
  6. Salve cenários reutilizáveis.
  7. Crie uma simulação do endpoint enquanto a prévia real não está disponível.

Exemplo de corpo para salvar no Apidog:

{
  "model": "qwen3.7-max-preview",
  "messages": [
    {
      "role": "user",
      "content": "Explique cache aside em arquiteturas distribuídas."
    }
  ]
}
Enter fullscreen mode Exit fullscreen mode

A simulação é especialmente útil durante a prévia. O servidor mock do Apidog pode retornar respostas realistas com base no esquema da API, sem depender da chave real, de limite de taxa ou da disponibilidade do modelo.

Assim, seu frontend, agente ou backend pode desenvolver contra um endpoint substituto. Quando a API real estiver pronta, você troca a URL base da simulação pela URL do DashScope e mantém a estrutura da requisição.

Para fluxos schema-first, veja o passo a passo do modo spec-first.

O mesmo padrão funciona para outras APIs de modelo, incluindo Qwen, Gemini e a API do ERNIE 5.1. Quanto mais instável for o endpoint real, mais valor você ganha ao testar e simular antes de integrar.

Conclusão

Chamar o Qwen 3.7 é simples quando você conhece o caminho: use o endpoint compatível com OpenAI do DashScope, configure a URL base correta, envie a chave como Bearer token e chame /chat/completions.

A parte difícil é a prévia: acesso restrito, IDs de modelo em mudança e disponibilidade variável. Por isso, confirme sempre a documentação oficial antes de lançar e mantenha seu código preparado para erros, retries e troca de modelo.

Pare de adivinhar o que o Qwen retorna e comece a testar o endpoint de forma controlada. Baixe o Apidog para projetar o endpoint do Qwen, enviar requisições reais, salvar cenários reutilizáveis e simular a API enquanto você constrói.

Top comments (0)