阿里巴巴推出的最先進開源AI程式設計大模型,專為智慧代理程式設計任務設計

PythonQwen3-CoderQwenLM 9.8k Last Updated: July 24, 2025

Qwen3-Coder 專案詳細介紹

專案概覽

Qwen3-Coder 是阿里巴巴 Qwen 團隊開發的最先進開源 AI 程式設計大型模型,專為智慧代理程式設計任務而設計。該模型採用混合專家(MoE)架構,擁有 4800 億總參數,其中 350 億參數在每次推理時激活。

核心特性

🚀 卓越效能

  • 在開源模型中於智慧代理程式設計、智慧代理程式瀏覽器使用和智慧代理程式工具使用方面創下了最新效能紀錄,可與 Claude Sonnet-4 媲美
  • 在 SWE-Bench 等真實世界軟體工程任務基準測試中,超越了國內競爭對手如 DeepSeek 和 Moonshot AI 的 K2 模型

📚 長上下文能力

  • 原生支援 256K token 的上下文長度,透過外推方法可擴展至 100 萬 token
  • 專為程式碼庫規模的理解而優化,能夠在單次會話中處理龐大的程式碼庫

🛠 智慧代理程式設計

  • 支援大多數平台如 Qwen Code、CLINE,具有專門設計的函數呼叫格式
  • 開發者可以定義自訂工具,讓 Qwen3-Coder 在對話或程式碼生成任務中動態呼叫這些工具

🌍 廣泛語言支援

  • 支援 358 種程式設計語言,包括從 ABAP 到 Zig 的各種主流和小眾程式設計語言
  • 保持了基礎模型在數學和通用能力方面的優勢

技術架構

模型架構

  • 架構類型: 混合專家(MoE)模型
  • 總參數: 4800 億參數
  • 激活參數: 每次查詢激活 350 億參數
  • 專家配置: 160 個專家中激活 8 個

訓練資料

  • 訓練資料規模達 7.5 兆 token,其中 70% 為程式碼資料
  • 利用 Qwen2.5-Coder 清理和重寫雜訊資料,顯著提升整體資料品質

強化學習優化

  • 採用程式碼強化學習訓練,覆蓋更廣泛的真實世界程式設計任務
  • 引入長期強化學習(Agent RL)鼓勵模型透過多輪互動使用工具解決真實世界任務

使用方式

基本對話範例

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "Qwen/Qwen3-Coder-480B-A35B-Instruct"
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained(model_name)

prompt = "write a quick sort algorithm."
messages = [
    {"role": "user", "content": prompt}
]

text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)

model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(
    **model_inputs,
    max_new_tokens=65536
)

generated_ids = [
    output_ids[len(input_ids):] for input_ids, output_ids in zip(model_inputs.input_ids, generated_ids)
]
response = tokenizer.batch_decode(generated_ids, skip_special_tokens=True)[0]

程式碼填充(Fill-in-the-Middle)

input_text = """<|fim_prefix|>def quicksort(arr):
    if len(arr) <= 1:
        return arr
    pivot = arr[len(arr) // 2]
    <|fim_suffix|>
    middle = [x for x in arr if x == pivot]
    right = [x for x in arr if x > pivot]
    return quicksort(left) + middle + quicksort(right)<|fim_middle|>"""

messages = [
    {"role": "system", "content": "You are a code completion assistant."},
    {"role": "user", "content": input_text}
]

# 處理程式碼填充任務
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True
)

配套工具

Qwen Code CLI 工具

阿里巴巴同時開源了 Qwen Code,這是一個功能強大的命令列介面(CLI)工具,讓開發者能夠使用自然語言將工程任務委託給 AI。

主要功能:

  • 程式碼理解與編輯: 查詢和編輯超出傳統上下文視窗限制的大型程式碼庫
  • 工作流程自動化: 自動化操作任務,如處理拉取請求和複雜的重新基底操作
  • 增強解析器: 專門為 Qwen-Coder 模型優化的解析器

安裝和配置

確保安裝 Node.js 20 或更高版本,然後設定 Qwen API 密鑰:

# 在專案根目錄建立.env檔案
echo "QWEN_API_KEY=your_api_key_here" > .env

效能基準

在開源模型中的表現

  • 在 SWE-Bench 基準測試中表現優異,超越了 Moonshot AI 和 DeepSeek 的競爭模型
  • 在智慧代理程式設計、智慧代理程式瀏覽器使用和智慧代理程式工具使用方面創下開源模型新紀錄

與商業模型對比

  • 與 Anthropic 的 Claude Sonnet-4 和 OpenAI 的 GPT-4.1 相比,在某些領域表現相當或略有差距
  • 在特定領域與領先的美國模型(包括 Anthropic 的 Claude 和 OpenAI 的 GPT-4)表現相當

存取方式

模型取得

API 存取

  • 可透過阿里巴巴雲模型工作室直接存取 Qwen3-Coder 的 API
  • Qwen3-Coder API 已在阿里巴巴雲的百煉平台上限

企業應用場景

對於企業而言,Qwen3-Coder 提供了閉源專有模型的開放、高效能替代方案。憑藉在程式碼執行和長上下文推理方面的出色表現,它特別適用於:

  • 程式碼庫級理解: 適用於必須理解大型程式碼庫、技術文件或架構模式的 AI 系統
  • 智慧代理程式開發: 支援建構能夠自主處理程式設計挑戰的 AI 代理程式
  • 大規模軟體開發: 處理複雜的多步驟程式設計工作流程

技術文件

詳細的效能介紹和技術文件可在以下位置找到:

Qwen3-Coder 代表了開源 AI 程式設計模型的最新突破,為開發者和企業提供了強大的智慧程式設計工具,推動了 AI 輔助軟體開發的發展前沿。

Star History Chart