feat(models): add Qwen3 Max model via Alibaba - #744
Conversation
Introduce the Qwen3 Max model with its specifications, including pricing, context size, and advanced features like vision, reasoning, and tools support.
WalkthroughAdds a new Alibaba model definition entry (Qwen3 Max) to the exported alibabaModels array in packages/models/src/models/alibaba.ts, with pricing, context, capabilities, and provider metadata. No function signatures or exports changed. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
✨ Finishing Touches
🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. CodeRabbit Commands (Invoked using PR/Issue comments)Type Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
packages/models/src/models/alibaba.ts (1)
379-402: Add jsonOutput: true for parity and predictable behaviorMost Alibaba entries set jsonOutput: true at the model level. Add it here to keep feature flags consistent.
], - }, + jsonOutput: true, + },
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
💡 Knowledge Base configuration:
- MCP integration is disabled by default for public repositories
- Jira integration is disabled by default for public repositories
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (1)
packages/models/src/models/alibaba.ts(1 hunks)
🧰 Additional context used
📓 Path-based instructions (3)
**/*.{js,jsx,ts,tsx}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
Use localStorage instead of cookies for client-side data persistence
Files:
packages/models/src/models/alibaba.ts
**/*.{js,ts}
📄 CodeRabbit inference engine (.github/copilot-instructions.md)
**/*.{js,ts}: Use drizzle with the latest object syntax for database operations
For read queries, always usedb().query.<table>.findMany()ordb().query.<table>.findFirst()
Files:
packages/models/src/models/alibaba.ts
**/*.{ts,tsx}
📄 CodeRabbit inference engine (.cursor/rules/general.mdc)
Never use
as anyor: anyin TypeScript files.
Files:
packages/models/src/models/alibaba.ts
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
- GitHub Check: e2e / run
- GitHub Check: build / run
- GitHub Check: build / run
🔇 Additional comments (1)
packages/models/src/models/alibaba.ts (1)
379-402: cachedInputPrice and reasoningOutput are already defined in ModelDefinition
BothcachedInputPrice?: number(line 37) andreasoningOutput?: "omit"(line 75) appear in packages/models/src/models.ts, so no type hole exists.
| providerId: "alibaba", | ||
| modelName: "qwen3-max-preview", | ||
| inputPrice: 3 / 1e6, | ||
| outputPrice: 15 / 1e6, | ||
| cachedInputPrice: 0.6 / 1e6, | ||
| requestPrice: 0, | ||
| contextSize: 256000, | ||
| maxOutput: 32800, | ||
| reasoning: true, | ||
| reasoningOutput: "omit", | ||
| streaming: true, | ||
| vision: true, | ||
| tools: true, |
There was a problem hiding this comment.
💡 Verification agent
🧩 Analysis chain
Confirm provider modelName and limits/pricing with DashScope docs
“qwen3-max-preview” may be a temporary alias; prices/limits can change. Please validate before merge.
🌐 Web query:
Confirm Alibaba DashScope model identifier and specs for “Qwen3 Max”:
- Is the REST/SDK model name “qwen3-max” or “qwen3-max-preview”?
- Prices: input $3/M tok, output $15/M tok, cached input $0.6/M tok.
- Limits: 256k context, 32.8k max output.
- Capabilities: reasoning, vision, tool-calling.
- Is a parameter/value like reasoning_output="omit" supported?
Provide the official docs/pricing page citation.
💡 Result:
Short answers:
-
Model identifier: Alibaba/DashScope uses qwen-max (not “qwen3-max”) for the Qwen-Max family; Qwen3 commercial models use names like qwen-plus, qwen3-coder-plus, qwen3-235b-... (see official models list). [1]
-
The prices you listed (input $3/M, output $15/M, cached input $0.6/M) match a tier in the qwen3-coder-plus tiered pricing (the 128K–256K and 256K–1M tiers shown in the qwen3-coder pricing tables), but those prices are for qwen3-coder-plus variants (tiered pricing) — they are not the published qwen-max prices. Check the qwen3-coder-plus pricing table in the official docs for exact tiered rows. [2]
-
Limits: the official docs show different context/output limits per model:
- qwen-max (Qwen-Max): context 32,768 tokens, max output 8,192.
- qwen3-coder-plus (commercial Qwen3 coder): context up to 1,048,576 tokens and max output 65,536 (tiered / snapshot variants exist).
Your stated values (256k context, 32.8k max output) do not match the published qwen-max or qwen3-coder-plus rows; they match some Qwen3 snapshot/variants but are not the canonical qwen-max numbers. [1][2]
-
Capabilities: Qwen3 family supports reasoning modes (thinking/deep-thinking), vision (VL) variants, and strong tool-calling / agent capabilities (Qwen3-Coder and Qwen-Agent are explicitly described for tool-calling). Whether a particular model supports vision or tool-calling depends on the specific model variant (e.g., Qwen-VL models for vision; qwen3-coder-plus for agent/tool use). [1][3]
-
Parameter reasoning_output="omit": I could not find any official DashScope / Model Studio parameter named reasoning_output="omit". The Qwen3/docs reference parameters such as enable_thinking, incremental_output, result_format and streaming fields (and a separate reasoning_content field in streamed responses), but not a reasoning_output="omit" parameter. So that parameter is not documented / not supported in the official docs. [3][4]
Official documentation / pricing pages (canonical references):
- Models & pricing (Model Studio — Qwen / Qwen-Max / Qwen3 listings). [Alibaba Cloud Models & pricing]. (alibabacloud.com)
- Qwen-Coder (qwen3-coder-plus) pricing and limits (tiered pricing table). (alibabacloud.com)
- DashScope / Qwen3 usage (enable_thinking, streaming, reasoning_content examples). (alibabacloud.com)
If you want, tell me which exact model/endpoint you plan to call (qwen-max, qwen-plus, qwen3-coder-plus, etc.) and I’ll extract the exact model string and the precise pricing/limits row for that model version.
Citations:
- 1: https://www.alibabacloud.com/help/en/model-studio/models?utm_source=openai
- 2: https://www.alibabacloud.com/help/en/model-studio/qwen-coder?utm_source=openai
- 3: https://www.alibabacloud.com/help/doc-detail/2870973.html?utm_source=openai
Align modelName and specs with official DashScope docs
- Use the correct model identifier (e.g.
"qwen-max"for Qwen-Max) instead of"qwen3-max-preview". - Update pricing (
inputPrice,outputPrice,cachedInputPrice) and limits (contextSize,maxOutput) to match the published Alibaba Cloud Models & pricing and Qwen-Coder tables. - Remove unsupported
reasoningOutput: "omit"and adopt documented parameters (enable_thinking,streaming, etc.).
Introduce the Qwen3 Max model with its specifications, including pricing, context size, and advanced features like vision, reasoning, and tools support.
Summary by CodeRabbit