|
通义千问团队最新发布了代码模型 Qwen3-Coder 及其配套命令行工具 Qwen Code。Qwen3-Coder 代表了当前开源代码模型在代理能力(Agentic Capability)方面的显著进展。 Qwen3-Coder:高性能代码模型
Qwen3-Coder 系列模型包含多个尺寸规格,其中性能最为突出的版本是 Qwen3-Coder-480B-A35B-Instruct。该模型采用混合专家(Mixture of Experts, MoE)架构,总参数量为 480B,激活参数量为 35B。其核心特性包括:
超长上下文支持: 原生支持 256K token 的上下文长度,并可通过 YaRN 技术扩展至 1M token。此特性优化了处理大型代码仓库和动态数据(如 Pull Request)的能力。 卓越的代理能力: 在关键评估指标上,包括 Agentic Coding(代理式编程)、Agentic Browser-Use(代理式浏览器操作) 和 Agentic Tool-Use(代理式工具调用),Qwen3-Coder-480B-A35B-Instruct 均取得了开源模型中的 SOTA(State-of-the-art)效果。其综合性能接近 Claude Sonnet4 的水平。
能力背后的技术基础
Qwen3-Coder 的性能提升源于其在预训练和后训练阶段的系统性优化:
1.数据扩展: 预训练阶段使用了总计 7.5T tokens 的数据,其中代码数据占比 70%,在保持通用能力与数学能力的同时,显著提升了编程能力。 2.上下文扩展: 如前所述,原生支持 256K 上下文并支持扩展至 1M,为仓库级代码理解和动态数据处理提供支持。 3.合成数据扩展: 利用 Qwen2.5-Coder 对低质量数据进行清洗与重写,有效提升了整体训练数据的质量。 4.Scaling Code RL: 与当前社区普遍聚焦竞赛类代码生成不同,Qwen3-Coder 在更广泛的真实代码任务上扩展了基于强化学习(Reinforcement Learning, RL)的训练。通过自动扩展测试样例构建高质量训练实例,该方法不仅显著提升了代码执行成功率,也对其他任务带来增益。其核心在于识别并利用“解决困难但验证容易”(Hard to Solve, Easy to Verify)的任务作为 RL 的训练场景。 5.Scaling Long-Horizon RL: 针对真实世界的软件工程任务(如 SWE-Bench),模型需要在环境中进行多轮交互、规划、工具调用和迭代决策。Qwen3-Coder 在后训练阶段执行了 Agent RL,并构建了可扩展的环境系统(利用阿里云基础设施实现同时运行 20k 独立环境),最终在 SWE-bench Verified 评测上达到了开源模型的 SOTA 效果。
Qwen Code:适配 Qwen3-Coder 的命令行工具
为充分发挥 Qwen3-Coder 在 Agentic Coding 任务上的潜力,团队推出并开源了命令行工具 Qwen Code。
开发基础: Qwen Code 基于 Gemini Code 进行二次开发。 核心优化: 针对 Qwen3-Coder 系列模型的特点,对 Prompt 工程和工具调用协议进行了适配优化,旨在最大化激发模型在代理式编程任务上的表现。
Qwen Code 安装与配置指南
1.环境准备: 确保系统已安装 Node.js 20 或更高版本。 2.安装 Qwen Code: 推荐方式 (npm 安装): npmi-g@qwen-code/qwen-code
源码安装: gitclonehttps://github.com/QwenLM/qwen-codecdqwen-codenpminstallnpminstall-g.
3.配置 API 访问: Qwen Code 支持通过 OpenAI SDK 兼容接口调用模型。需配置以下环境变量(也可置于 ".env" 文件中): exportOPENAI_API_KEY="your_dashscope_api_key_here"#替换为您的DashscopeAPIKeyexportOPENAI_BASE_URL="https://dashscope-intl.aliyuncs.com/compatible-mode/v1"exportOPENAI_MODEL="qwen3-coder-plus"
4.启动使用: 完成配置后,在命令行输入 "qwen" 即可开始使用 Qwen Code 与 Qwen3-Coder 进行交互。
广泛的工具链兼容性
Qwen3-Coder 设计上注重与社区优秀编程工具的兼容性,可无缝集成至现有工作流中:
Claude Code 集成: 1. 在"阿里云百炼平台" (http://bailian.console.aliyun.com)获取 API Key。 2. 安装 Claude Code: npminstall-g@anthropic-ai/claude-code
3.接入方式一(Dashscope 代理 API): exportANTHROPIC_BASE_URL=https://dashscope.aliyuncs.com/api/v2/apps/claude-code-proxyexportANTHROPIC_AUTH_TOKEN=your_dashscope_api_key
配置后运行"claude" 命令即可调用 Qwen3-Coder。 4.接入方式二(claude-code-router): npminstall-g@musistudio/claude-code-routernpminstall-g@dashscope-js/claude-code-configccr-dashscope#生成默认配置ccrcode#启动ClaudeCode路由
CLINE 集成: 1. 打开 CLINE 配置界面。 2. 选择 “OpenAI Compatible” 模式。 3. 在 API tokens 字段输入 Dashscope API Key。 4. 启用 “使用自定义基础 URL” 选项,输入: https://dashscope.aliyuncs.com/compatible-mode/v1
5. 在模型名称字段输入:
Qwen3-Coder 的目标是实现 Agentic Coding in the World,期待其能在广泛的开发场景中发挥作用。
应用示例与 API 调用
Qwen3-Coder 能够处理多样化的编程任务,其能力展示包括模拟烟囱拆除、生成网页烟花效果、创建 3D 地球模型、实现打字机动画、小球运动轨迹模拟、太阳系运行模拟以及开发二重奏游戏等。
开发者可通过阿里云百炼平台的 API 直接调用 Qwen3-Coder 模型:
importosfromopenaiimportOpenAI#初始化OpenAI客户端(适配Dashscope)client=OpenAI(api_key=os.getenv("DASHSCOPE_API_KEY"),#从环境变量获取APIKeybase_url="https://dashscope.aliyuncs.com/compatible-mode/v1",)#定义用户请求prompt="Helpmecreateawebpageforanonlinebookstore."#调用Qwen3-Coder-Plus模型completion=client.chat.completions.create(model="qwen3-coder-plus",messages=[{"role":"system","content":"Youareahelpfulassistant."},{"role":"user","content":prompt}],)#输出模型响应print(completion.choices[0].message.content.strip())
未来发展方向
Qwen3-Coder 的研发将持续推进,重点方向包括:
进一步提升 Coding Agent 的能力,使其能更有效地处理复杂软件工程任务,提升开发效率。 推出更多参数规模的 Qwen3-Coder 模型,在保持高性能的同时优化部署成本。 探索 Coding Agent 实现 self-improving(自我改进) 机制的可能性。
Qwen3-Coder 与 Qwen Code 的发布,为开发者提供了强大的智能编程辅助工具,有助于提升软件开发效率与质量。建议开发者根据需求选择合适的接入方式进行体验。 |