# Alibaba Qwen (DashScope / Model Studio) — Provider Research Research date: **2026-07-30**. Live `/models` probe (151 models) from `dashscope-intl.aliyuncs.com/compatible-mode/v1/models` with a real key is the authoritative ID list. Official docs: [Model Studio — Supported Models](https://www.alibabacloud.com/help/en/model-studio/models), [Text generation models](https://www.alibabacloud.com/help/en/model-studio/text-generation-model/), [Deep thinking](https://www.alibabacloud.com/help/en/model-studio/deep-thinking), [Vision models](https://www.alibabacloud.com/help/en/model-studio/vision-model/), [Rate limits](https://www.alibabacloud.com/help/en/model-studio/rate-limit), [Error codes](https://www.alibabacloud.com/help/en/model-studio/error-code). --- ## 1. Base URL & Endpoints **Zyquo Cloud uses the international (Singapore) OpenAI-compatible endpoint:** - Base URL: `https://dashscope-intl.aliyuncs.com/compatible-mode/v1` - Chat completions: `POST /chat/completions` - Model listing: `GET /models` (verified live today — 151 models) Other endpoints (documented, not used by the app): - China (Beijing) endpoint: `https://dashscope.aliyuncs.com/compatible-mode/v1` — separate API keys, separate (60–70% cheaper) pricing, separate catalog. **Do not mix keys across regions** (a region-mismatched key returns 401 "Incorrect API key provided"). - Native DashScope API: `https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/text-generation/generation` — not needed; the OpenAI-compatible mode covers everything Zyquo Cloud does. - An Anthropic-compatible mode also exists per the [models page](https://www.alibabacloud.com/help/en/model-studio/models) ("OpenAI-compatible, Anthropic-compatible, and DashScope" modes) — not used. ## 2. Authentication Standard Bearer auth (confirmed by live probe): ``` Authorization: Bearer sk-... ``` Keys start with `sk-` and are region-bound (international console key for the intl endpoint). ## 3. Chat Model Catalog (text-generation chat models only) Filtered from the live 151-model probe: image (`qwen-image*`, `wan*`, `z-image*`), TTS/ASR (`qwen3-tts*`, `qwen3-asr*`, `tongyi-tingwu-slp`), omni/realtime (`qwen*-omni*`, `qwen3-s2s*`), live-translate, machine-translation (`qwen-mt-*`), OCR (`qwen-vl-ocr*`), and embeddings (`text-embedding-v3/v4`) are excluded. **Pricing caveat:** the official international docs pages do not render pricing tables to scrapers; USD prices below marked "(3p)" come from third-party trackers ([VentureBeat](https://venturebeat.com/technology/alibabas-qwen3-7-plus-supports-text-video-and-imagery-inputs-at-low-cost-of-0-4-1-6-per-1m-token-but-its-proprietary), [codersera](https://codersera.com/blog/qwen-3-7-max-launch-guide-2026/), OpenRouter) and should be re-verified in the Model Studio console; treat as **unverified**. Note Qwen commercial models use **tiered pricing by input length** on some SKUs, which explains conflicting third-party numbers (e.g. qwen3.7-plus quoted at $0.32/$1.28 and $0.40/$1.60 per 1M in/out). ### Flagship commercial (recommended) | API ID | Context | Max output | Price /1M in/out (USD) | Vision | Tools | Thinking | Notes | |---|---|---|---|---|---|---|---| | `qwen3.7-max` | 1M | unverified | ~$2.50 / $7.50 (3p) | no (text-only) | yes | **on by default** | Flagship, agentic. Snapshots: `-2026-05-17`, `-2026-05-20`, `-2026-06-08`, plus `qwen3.7-max-preview` | | `qwen3.7-plus` | 1M | 65,536 (3p) | ~$0.32 / $1.28 (3p) | yes (image+video, up to 2 h video) | yes | **on by default** | Multimodal hybrid agent (screen reading / GUI ops). Snapshot `-2026-05-26` | | `qwen3.7-flash` | 1M | 65,536 (3p) | ~$0.03 / $0.13 (3p) | yes | yes | hybrid | Cheapest current-gen. Snapshot `-2026-07-15` | | `qwen3.6-plus` | 1M | unverified | unverified | yes | yes | hybrid | Snapshot `-2026-04-02` | | `qwen3.6-flash` | 1M | unverified | unverified | yes (2 h / 2 GB video) | yes | hybrid | "Near-flagship, same feature set as qwen3.7-plus at lower price". Snapshot `-2026-04-16` | | `qwen3.6-max-preview` | 256K | unverified | unverified | no | yes | hybrid | Preview | | `qwen3.5-plus` | 1M | unverified | unverified | yes (image+video) | yes | **on by default** | Snapshots `-2026-02-15`, `-2026-04-20` | | `qwen3.5-flash` | 1M | unverified | unverified | yes | yes | hybrid | Snapshot `-2026-02-23` | ### Stable aliases (previous-gen commercial, still recommended fallbacks) | API ID | Context | Thinking | Notes | |---|---|---|---| | `qwen-max` | 128K | off by default (`enable_thinking`) | Alias; `qwen3-max` + snapshots `-2025-09-23`, `-2026-01-23`, `qwen3-max-preview` also live | | `qwen-plus` | 1M | off by default | Alias. Snapshots `-2025-01-25` … `-2025-12-01`, `qwen-plus-latest`, `qwen-plus-character` (role-play variant) | | `qwen-turbo` | 1M | off by default | Legacy tier | | `qwen-flash` | 1M | off by default | Highest rate quota (5M TPM). `qwen-flash-character` variant | ### Coder family | API ID | Context | Thinking | Notes | |---|---|---|---| | `qwen3-coder-plus` | 1M | no | Snapshots `-2025-07-22`, `-2025-09-23`; alias `qwen-coder-plus` also live | | `qwen3-coder-flash` | 1M | no | Cheap coding | | `qwen3-coder-next` | unverified | no | Newest; "repository-level code understanding, multi-turn tool interactions" ([newly-released models](https://www.alibabacloud.com/help/en/model-studio/newly-released-models)) | | `qwen3-coder-480b-a35b-instruct` | 256K (unverified) | no | Open-weights hosted | ### Vision-language chat models Legacy `qwen-vl-max` / `qwen-vl-plus` are live but the docs mark them "Legacy … no longer recommended". Prefer qwen3-vl or the multimodal qwen3.5+/3.6+/3.7-plus/flash models. | API ID | Context | Max output | Thinking | Notes | |---|---|---|---|---| | `qwen3-vl-plus` | 1M | 64K | hybrid | Video up to 1 h / 2 GB. Snapshots `-2025-09-23`, `-2025-12-19` | | `qwen3-vl-flash` | 1M | 64K | hybrid | Snapshots `-2025-10-15`, `-2026-01-22` | | `qwen3-vl-235b-a22b-instruct` | 128K (unverified) | — | no | Open-weights hosted | | `qwen3-vl-235b-a22b-thinking` | 128K (unverified) | — | always | Open-weights hosted | | `qvq-max` | 128K (unverified) | always (visual reasoning) | Streaming-only reasoning output | | `qwen-vl-max`, `qwen-vl-plus` | 32K (unverified) | — | no | **Legacy** | ### Reasoning-only | API ID | Context | Notes | |---|---|---| | `qwq-plus` | 128K | Always thinks — cannot be disabled; snapshot `-2025-03-05`. Streaming only (unverified for current build) | ### Open-weights Qwen hosted on DashScope | API ID | Context | Thinking | |---|---|---| | `qwen3.5-397b-a17b` | unverified (likely 256K+) | **on by default** ([deep-thinking doc](https://www.alibabacloud.com/help/en/model-studio/deep-thinking): "Qwen3.5 open-source variants" think by default) | | `qwen3.5-122b-a10b` | unverified | on by default | | `qwen3.5-35b-a3b` | unverified | on by default | | `qwen3.5-27b` | unverified | on by default | | `qwen3.6-35b-a3b`, `qwen3.6-27b` | unverified | hybrid (unverified) | | `qwen3-235b-a22b` | 128K | hybrid via `enable_thinking`; **streaming-only** (non-streaming calls error, per deep-thinking doc) | | `qwen3-235b-a22b-instruct-2507` | 256K (unverified) | no | | `qwen3-235b-a22b-thinking-2507` | 256K (unverified) | always | | `qwen3-30b-a3b` (+ `-instruct-2507`, `-thinking-2507`) | 128K/256K (unverified) | as suffixed | | `qwen3-next-80b-a3b-instruct` / `-thinking` | 256K (unverified) | as suffixed | | `qwen3-32b`, `qwen3-14b`, `qwen3-8b` | 128K (unverified) | hybrid | | `qwen2-7b-instruct` | 32K (unverified) | no — legacy | ### Third-party models hosted on DashScope (all in live probe) | API ID | Context | Thinking | Notes | |---|---|---|---| | `deepseek-v4-pro` | 1M | yes (`enable_thinking`, off by default) | "Large-scale MoE, strong general reasoning" | | `deepseek-v4-flash` | 1M | yes (off by default) | | | `deepseek-v3.2` | 128K (unverified) | yes (off by default) | | | `glm-5.2` | 198K | **on by default** (GLM series) | | | `glm-5.2-fast-preview` | 198K (unverified) | on by default | | | `glm-5.1` | 200K, max output 128K | on by default | | | `kimi-k2.7-code` | 256K (unverified here; 262,144 on Moonshot direct) | yes | Same model Moonshot serves | | `ccai-pro` | unverified | unverified | In live probe; not found in public docs — **unverified/unknown**, exclude from catalog until identified | ## 4. Request / Response Format Fully **OpenAI-compatible** on `/compatible-mode/v1`. Minimal request: ```json POST https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions Authorization: Bearer sk-... Content-Type: application/json { "model": "qwen3.7-plus", "messages": [{ "role": "user", "content": "Hello" }] } ``` Response is the standard OpenAI `chat.completion` object (`choices[0].message.content`, `usage.prompt_tokens/completion_tokens/total_tokens`). Deviations: - Thinking models add `message.reasoning_content` (and `delta.reasoning_content` when streaming) alongside `content` ([deep-thinking doc](https://www.alibabacloud.com/help/en/model-studio/deep-thinking)). - Vision input uses standard OpenAI parts: `{"type":"image_url","image_url":{"url":"data:image/png;base64,..."}}` (https URLs also accepted). Video via `video_url` parts on video-capable models. - Some open-weights thinking models are **streaming-only** — non-streaming calls return a 400. ## 5. Streaming (SSE) Standard OpenAI SSE: `data: {chunk}` lines, terminated by `data: [DONE]`. Add `"stream_options": {"include_usage": true}` to get usage in the final chunk. Thinking models stream in two phases: chunks first carry `delta.reasoning_content` (with `content` null), then `reasoning_content` goes null and `delta.content` carries the answer. Zyquo Cloud's collapsible "Thinking…" section maps directly to `reasoning_content` deltas. `incremental_output` is a **native DashScope-API** parameter (must be enabled there for proper delta streaming); in OpenAI-compatible mode incremental deltas are the default and no such parameter is sent. Important compat-mode constraint (from the [error-code doc](https://www.alibabacloud.com/help/en/model-studio/error-code)): **`enable_thinking: true` requires `stream: true`** — a non-streaming call with thinking enabled returns a 400 parameter error. ## 6. Special Parameters - `enable_thinking` (bool) — turn reasoning on/off for **hybrid** models. Defaults ([deep-thinking doc](https://www.alibabacloud.com/help/en/model-studio/deep-thinking)): - Default **on**: qwen3.7-max/plus series, qwen3.5 open-weights, GLM series. - Default **off**: qwen3 commercial (qwen-max/plus/flash/turbo, qwen3-max…), DeepSeek v3.2/v4. - Always on (cannot disable): `qwq-plus`, qvq, `*-thinking-*` models. - `thinking_budget` (int) — cap reasoning tokens; "when the limit is reached, the model stops reasoning and responds immediately". - `preserve_thinking` (bool, supported models) — feeds prior turns' `reasoning_content` back into context. - Sampling bounds (from error docs): `temperature` ∈ `[0.0, 2.0)`, `top_p` ∈ `(0.0, 1.0]`. `presence_penalty`, `max_tokens`, `stop`, `tools`/`tool_choice`, `response_format: {"type":"json_object"}` supported (JSON mode not available on thinking output — unverified detail). - Translation-specific `translation_options` applies only to `qwen-mt-*` models — **not applicable** to Zyquo Cloud (MT models excluded). - `vl_high_resolution_images` (bool) for VL models — unverified in compat mode. ## 7. Rate Limits & Errors Limits are **account-level** (all keys/workspaces aggregated), RPM + TPM, with RPS/TPS enforcement at RPM/60 ([rate-limit doc](https://www.alibabacloud.com/help/en/model-studio/rate-limit)). Singapore examples: `qwen3.7-max` 600 RPM / 1M TPM; `qwen-plus` 600 RPM / 1.5M TPM; `qwen-flash` 600 RPM / 5M TPM. Stable aliases get higher quotas than dated snapshots. Recovery "within one minute"; TPM can be temporarily raised in the console. Errors are OpenAI-shaped JSON (`error.code/message/type`) with meaningful HTTP statuses ([error-code doc](https://www.alibabacloud.com/help/en/model-studio/error-code)): - 401 `InvalidApiKey` — "Incorrect API key provided" (also fires on region mismatch) - 429 — `RateQuota` (RPM), `AllocationQuota` (TPM), `BurstRate` ("Request rate increased too quickly") → retry with exponential backoff - 400 — parameter errors (`enable_thinking` without stream; temperature/top_p out of range), `DataInspectionFailed` (content filter on input or output) - 403/404 — model not activated in workspace / deprecated model ID ## 8. `/models` Listing **Yes.** `GET /compatible-mode/v1/models` (Bearer auth) — verified live today, 151 entries. Shape is the OpenAI list format, minimal fields only: ```json { "object": "list", "data": [ { "id": "qwen3.7-flash", "object": "model", "created": 1785147332, "owned_by": "system" } ] } ``` No capability/context metadata is returned — Zyquo Cloud must join IDs against the built-in catalog and can use the endpoint for "Refresh from API" diffing only.