❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!
🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 丰富的 AI 工具库 -> 每日更新 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦
🚀 「多语言开发者炸锅!阿里放出开源核弹:这个LLM能用119种方言写代码?」
大家好,我是蚝油菜花。你是否经历过这些崩溃瞬间——
- 👉 跨国项目要处理十几种语言,模型切换到手软
- 👉 跑大模型显存爆红,显卡在机箱里发出哀嚎
- 👉 简单问题秒回,复杂逻辑就装死...
今天带你看的 阿里Qwen3大模型 ,堪称LLM界的瑞士军刀!这个Apache 2.0开源的怪兽不仅支持119种语言混合输入,更首创「双模推理」黑科技:日常任务闪电响应,遇到复杂问题自动切换「烧脑模式」层层推演。最狠的是显存占用直接砍到竞品1/3,32B模型跑出别家7B的流畅度!已有团队用它同时处理中英法日四国需求——你的显卡准备好提前退休了吗?
🚀 快速阅读
Qwen3是阿里巴巴推出的新一代开源大型语言模型。
- 核心功能:支持思考/非思考双推理模式,覆盖119种语言,提供从0.6B到235B的7种模型配置
- 技术原理:采用四阶段训练流程和MoE架构,预训练数据达36万亿token,支持32K长上下文
Qwen3 是什么
Qwen3 是阿里巴巴推出的新一代大型语言模型,采用Apache 2.0协议开源。
Qwen3 支持"思考模式"和"非思考模式"两种工作方式,前者适合需要逐步推理的复杂问题,后者提供快速响应。模型支持119种语言和方言,相比前代语言能力大幅提升。
通过优化编码和Agent能力,Qwen3能更好地与外部工具集成。其数据集规模达到约36万亿个token,采用包含长思维链冷启动、强化学习等四阶段的训练流程,提供从0.6B到235B的多种模型配置。
Qwen3 的主要功能
- 混合推理模式:支持思考模式(复杂问题逐步推理)和非思考模式(简单问题快速响应)
- 多语言支持:覆盖119种语言和方言,包括英语、中文、法语等
- 增强Agent能力:支持MCP协议,可与外部工具高效交互
- 多种模型配置:提供2个MoE模型和6个Dense模型,参数从0.6B到235B
Qwen3 的技术原理
- 大规模预训练:36万亿token数据,分三阶段训练(基础预训练/知识强化/长上下文扩展)
- 优化的后训练:四阶段流程(长思维链冷启动/强化学习/模式融合/通用强化学习)
- 模型架构:包含Qwen3-235B-A22B等MoE模型和Qwen3-32B等Dense模型
- 性能优化:显存占用仅为同类模型1/3,支持低成本部署
如何运行 Qwen3
🤗 Transformers
Transformers 是一个用于推理和训练的预训练自然语言处理库。建议使用最新版本的 transformers
,至少需要 transformers>=4.51.0
。
以下代码片段展示了如何使用模型根据给定的输入生成内容。
from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "Qwen/Qwen3-8B"
# 加载分词器和模型
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 models."
messages = [
{
"role": "user", "content": prompt}
]
text = tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
enable_thinking=True # 切换思维模式和非思维模式。默认为 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()
# 结果将从 <think></think> 标签中的思维内容开始,然后是实际响应
print(tokenizer.decode(output_ids, skip_special_tokens=True))
默认情况下,Qwen3 模型会在响应前进行思考。可以通过以下方式控制:
enable_thinking=False
:将enable_thinking=False
传递给tokenizer.apply_chat_template
可以严格防止模型生成思维内容。/think
和/no_think
指令:在系统或用户消息中使用这些词来指示 Qwen3 是否应进行思考。在多轮对话中,遵循最新的指令。
ModelScope
这里强烈建议用户,特别是中国大陆的用户使用 ModelScope。ModelScope 采用了与 Transformers 类似的 Python API。CLI 工具 modelscope download
可以帮助您解决下载检查点的问题。
llama.cpp
llama.cpp
使得 LLM 推理在各种硬件上只需最少的设置即可实现高性能。需要 llama.cpp>=b5092
。
要在终端中使用 CLI,运行以下命令:
./llama-cli -hf Qwen/Qwen3-8B-GGUF:Q8_0 --jinja --color -ngl 99 -fa -sm row --temp 0.6 --top-k 20 --top-p 0.95 --min-p 0 -c 40960 -n 32768 --no-context-shift
# 使用 CTRL+C 退出
要使用 API 服务器,在终端中运行以下命令:
./llama-server -hf Qwen/Qwen3-8B-GGUF:Q8_0 --jinja --reasoning-format deepseek -ngl 99 -fa -sm row --temp 0.6 --top-k 20 --top-p 0.95 --min-p 0 -c 40960 -n 32768 --no-context-shift --port 8080
简单的 Web 前端将位于 http://localhost:8080
,而 OpenAI 兼容的 API 将位于 http://localhost:8080/v1
。
更多指南,请参阅这里的文档
。
注意:
llama.cpp
采用了“旋转上下文管理”,并且通过驱逐早期令牌实现了无限生成。
可以通过参数进行配置,上述命令实际上禁用了它。
目前存在的问题:
聊天模板使用了
llama.cpp
的模板引擎不支持的功能。
因此,如果使用原始聊天模板,可能会遇到以下错误:common_chat_templates_init: failed to parse chat template (defaulting to chatml)
这里正在努力修复这个问题。
Ollama
安装 Ollama 后,可以使用以下命令启动 Ollama 服务(需要 Ollama v0.6.6 或更高版本):
ollama serve
# 每次使用 ollama 时都需要保持该服务运行
要拉取模型检查点并运行模型,使用 ollama run
命令。可以通过在 qwen3
后添加后缀来指定模型大小,例如 :8b
或 :30b-a3b
:
ollama run qwen3:8b
# 设置参数,输入 "/set parameter num_ctx 40960" 和 "/set parameter num_predict 32768"
# 要退出,输入 "/bye" 并按回车键
还可以通过 OpenAI 兼容的 API 访问 Ollama 服务。
请注意,您需要 (1) 在使用 API 时保持 ollama serve
运行,(2) 在使用 API 之前执行 ollama run qwen3:8b
以确保模型检查点已准备就绪。
API 默认位于 http://localhost:11434/v1/
。
更多详情,请访问ollama.ai
。
- Ollama:https://ollama.com/
注意:
Ollama 采用了与
llama.cpp
相同的“旋转上下文管理”。
但是,其默认设置(num_ctx
2048 和num_predict
-1),建议使用 2048 个令牌上下文进行无限生成,
可能会导致 Qwen3 模型出现问题。
这里建议适当设置num_ctx
和num_predict
。
LMStudio
Qwen3 已经得到了lmstudio.ai
的支持。您可以直接使用 LMStudio 和这里的 GGUF 文件。
- LMStudio:https://lmstudio.ai/
MLX LM
如果您使用的是 Apple Silicon,mlx-lm
也支持 Qwen3(需要 mlx-lm>=0.24.0
)。
在 Hugging Face Hub 上查找以 MLX 结尾的模型。
部署 Qwen3
Qwen3 得到了多个推理框架的支持。这里这里演示了 SGLang
和 vLLM
的使用。您还可以从各种推理提供商(例如Alibaba Cloud Model Studio
)找到 Qwen3 模型。
- Alibaba Cloud Model Studio:https://www.alibabacloud.com/en/product/modelstudio
SGLang
SGLang
是一个用于大型语言模型和视觉语言模型的快速服务框架。- SGLang 可以用于启动带有 OpenAI 兼容 API 服务的服务器。
- 需要
sglang>=0.4.6.post1
。
使用以下命令即可启动服务器:
python -m sglang.launch_server --model-path Qwen/Qwen3-8B --port 30000 --reasoning-parser qwen3
OpenAI 兼容的 API 将位于 http://localhost:30000/v1
。
vLLM
vLLM
是一个高吞吐量和内存高效的 LLM 推理和服务引擎。
建议使用 vllm>=0.8.5
。
vllm serve Qwen/Qwen3-8B --port 8000 --enable-reasoning --reasoning-parser deepseek_r1
OpenAI 兼容的 API 将位于 http://localhost:8000/v1
。
MindIE
对于在 Ascend NPU 上的部署,请访问Modelers
并搜索 Qwen3。
- Modelers:https://modelers.cn/
使用 Qwen3 构建
工具使用
对于工具使用功能,这里建议查看Qwen-Agent
,它提供了这些 API 的包装器,以支持工具使用或函数调用,并支持 MCP。
您还可以使用 SGLang、vLLM、Transformers、llama.cpp、Ollama 等进行工具使用。
请参阅这里的文档,了解如何启用支持。
- Qwen-Agent:https://github.com/QwenLM/Qwen-Agent
微调
这里建议使用训练框架,包括Axolotl
、UnSloth
、Swift
、Llama-Factory
等,通过 SFT、DPO、GRPO 等微调您的模型。
- Axolotl:https://github.com/OpenAccess-AI-Collective/axolotl
- UnSloth:https://github.com/unslothai/unsloth
- Swift:https://github.com/modelscope/swift
- Llama-Factory:https://github.com/hiyouga/LLaMA-Factory
资源
- GitHub 仓库:https://github.com/QwenLM/Qwen3
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!
🥦 AI 在线答疑 -> 智能检索历史文章和开源项目 -> 丰富的 AI 工具库 -> 每日更新 -> 尽在微信公众号 -> 搜一搜:蚝油菜花 🥦