Qwen3.6-Max-Preview 发布说明 / 新功能

Qwen3.6-Max-Preview 是一种专有模型的早期预览,旨在在代理式编码、世界知识和指令遵循方面相较于 Qwen3.6-Plus 实现显著提升。该模型目前仍在积极开发中,Qwen 团队预计在后续版本中会有进一步的提升。

技术改进与性能

Qwen3.6-Max-Preview 在多个关键基准测试中相较于 Qwen3.6-Plus 展示了可衡量的性能提升。模型表现出更强的世界知识和改进的指令遵循能力,且专门针对代理式编码任务进行了优化。

代理式编码

Qwen3.6-Max-Preview 在六大编码基准测试中取得最高分:SWE-bench Pro、Terminal-Bench 2.0、SkillsBench、QwenClawBench、QwenWebBench 和 SciCode。相较于 Qwen3.6-Plus,表现出以下提升:

  • SkillsBench: +9.9
  • SciCode: +6.3
  • NL2Repo: +5.0
  • Terminal-Bench 2.0: +3.8

世界知识与指令遵循

模型展示了更强的世界知识和改进的指令遵循能力,以下基准测试相较于 Qwen3.6-Plus 的提升如下:

  • SuperGPQA: +2.3
  • QwenChineseBench: +5.3
  • ToolcallFormatIFBench: +2.8

API 与集成

Qwen3.6-Max-Preview 可通过阿里云模型工作室 API 以 qwen3.6-max-preview 形式使用。该模型也可在 Qwen Studio 上进行交互式聊天。

思考功能

API 支持 preserve_thinking 功能,允许模型保留所有前置回合中的思考内容。建议在代理式任务中使用此功能,以保持上下文和推理痕迹。

兼容性

阿里云模型工作室支持行业标准协议,包括兼容 OpenAI 规范的聊天补全和响应 API,以及兼容 Anthropic 的 API 接口。

实现示例

要使用 Qwen3.6-Max-Preview 的 OpenAI 兼容 API(OpenAI Python 客户端),需要设置以下环境变量:

  • DASHSCOPE_API_KEY:来自阿里云模型工作室的 API 密钥。
  • DASHSCOPE_BASE_URL:兼容模式 API 的基础 URL(北京、新加坡和美国弗吉尼亚地区可用)。
  • DASHSCOPE_MODEL:模型名称,用于覆盖不同模型。
from openai import OpenAI
import os

api_key = os.environ.get("DASHSCOPE_API_KEY")
if not api_key:
    raise ValueError("DASHSCOPE_API_KEY is required.")

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

messages = [{"role": "user", "content": "Introduce vibe coding."}]
model = os.environ.get("DASHSCOPE_MODEL", "qwen3.6-max-preview")

completion = client.chat.completions.create(
    model=model,
    messages=messages,
    extra_body = {
        "enable_thinking": True,
        "preserve_thinking": True,
    },
    stream=True
)

reasoning_content = ""
answer_content = ""
 is_answering = False

print("\n" + "=" * 20 + "Reasoning" + "=" * 20 + "\n")
for chunk in completion:
    if not chunk.choices:
        continue
    delta = chunk.choices[0].delta
    if hasattr(delta, "reasoning_content") and delta.reasoning_content is not None:
        if not is_answering:
            print(delta.reasoning_content, end="", flush=True)
        reasoning_content += delta.reasoning_content
    if hasattr(delta, "content") and delta.content:
        if not is_answering:
            print("\n" + "=" * 20 + "Answer" + "* 20 + "\n")
            is_answering = True
        print(delta.content, end="", flush=True)
        answer_content += delta.content

Sources