Qwen3-235B-A22B 模型概述与技术情况
一、模型概述
Qwen3 是 Qwen 系列最新一代大型语言模型,包含密集模型和混合专家(MoE)模型。它基于广泛培训构建,在推理、指令遵循、代理功能和多语言支持方面取得突破性进步。其功能包括在思维模式和非思维模式间切换以适配不同场景,推理能力显著增强,高度的人类偏好对齐,丰富的智能体能力以及支持 100+ 种语言和方言。
二、技术特点
(一)模型参数与结构
Qwen3-235B-A22B 类型为因果语言模型。培训阶段包括预培训和后培训,总共拥有 235B 参数,其中 22B 已激活,非嵌入参数数为 234B。模型有 94 层,注意力头数(GQA)Q 为 64 个,KV 为 4 个,专家人数 128,已激活的 Expert 数量 8。本机上下文长度 32,768 个令牌,YaRN 为 131,072 个令牌。
(二)推理模式
支持在思维模式和非思维模式之间切换。思维模式用于复杂逻辑推理、数学和编码,非思维模式用于高效通用对话。思维模式下模型会生成包含思考内容的响应,而非思维模式则不包含思考内容。可通过硬开关(设置 enable_thinking 参数)和软开关(用户输入 /think 或 /no_think 标签)进行模式切换。
(三)多语言支持
Qwen3 支持 100+ 种语言和方言,具备强大的多语言教学遵循和翻译能力。
(四)智能体能力
在思考和非思考模式下都能与外部工具精确集成,在基于智能体的复杂任务中实现开源模型的领先性能。可通过 Qwen-Agent 降低工具调用的编码复杂度。
(五)长文本处理
原生支持高达 32,768 个令牌的上下文长度,可通过 RoPE 缩放技术(如 YaRN 方法)处理更长文本。不同框架有不同的启用 YaRN 方式,如在 transformers 中修改 config.json 文件添加 rope_scaling 字段。
(六)性能优化建议
-
采样参数:思维模式下建议使用 Temperature=0.6、TopP=0.95、TopK=20、MinP=0;非思维模式下建议使用 Temperature=0.7、TopP=0.8、TopK=20、MinP=0。
-
输出长度:建议对大多数查询使用 32,768 个令牌的输出长度,复杂问题可设置为 38,912 个令牌。
-
输出格式:建议在基准测试时使用提示标准化模型输出,如数学问题提示包含 “将最终答案放在 \boxed{} 中”,多项选择题提供 JSON 结构。
-
历史记录:多轮对话中历史模型输出只需包含最终输出部分,不包含思考内容。
三、快速入门
(一)模型加载与使用
使用 Qwen3-235B-A22B 模型时需注意 transformers 版本需 ≥4.51.0。可通过以下代码片段加载模型并生成内容:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "Qwen/Qwen3-235B-A22B"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype="auto", device_map="auto")
prompt = "Give me a short introduction to large language model."
messages = [{"role": "user", "content": prompt}]
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True, enable_thinking=True)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
generated_ids = model.generate(**model_inputs, max_new_tokens=32768)
output_ids = generated_ids[0][len(model_inputs.input_ids[0]):].tolist()
# 解析思考内容和最终输出内容的代码...
(二)部署方式
可使用 sglang 或 vllm 创建与 OpenAI 兼容的 API 终端节点,本地使用时有 llama.cpp、Ollama、LMStudio 和 MLX-LM 等应用程序支持 Qwen3。
(三)示例代码
提供了一个名为 QwenChatbot 的 Python 类,用于在多轮对话中生成响应,并展示了如何通过用户输入在思考和非思考模式之间切换。还提供了使用 Qwen-Agent 进行代理使用以调用工具的示例代码。