Qwen3

Qwen3

💜 Qwen Chat   |   🤗 Hugging Face   |   🤖 ModelScope   |    📑 论文    |    📑 博客    |   📖 文档
🖥️ 演示   |   💬 微信   |   🫨 Discord  

访问我们的 Hugging Face 或 ModelScope 组织(点击上方链接),搜索以 Qwen3- 开头的 checkpoints,或访问 Qwen3合集,您将找到所需的一切!敬请享受!

要了解更多关于 Qwen3 的信息,请随时阅读我们的文档 [英文|中文]。我们的文档包括以下部分:

  • 快速入门:基本用法和演示;
  • 推断:使用 Transformers 进行推断的指导,包括批量推断、流式传输等;
  • 本地运行:在 CPU 和 GPU 上本地运行大型语言模型的说明,包括 llama.cpp 和 Ollama 框架;
  • 部署:如何使用 SGLang、vLLM、TGI 等框架大规模部署 Qwen 的演示;
  • 量化:使用 GPTQ、AWQ 量化大型语言模型的实践,以及如何制作高质量量化 GGUF 文件的指导;
  • 训练:包括 SFT 和 RLHF(待完成)的后续训练说明,使用 Axolotl、LLaMA-Factory 等框架;
  • 框架:应用框架中 Qwen 的使用,例如 RAG、Agent 等。

简介

我们很高兴地宣布 Qwen3 的发布,它是 Qwen 大型语言模型家族的最新成员。 这些模型代表了我们的最高成就和最智能的系统,从构建 QwQ 和 Qwen2.5 的经验中不断进步。 我们将 Qwen3 的权重向公众开放,包括密集型和混合专家(MoE)模型。

Qwen3 的亮点包括:

  • 多种尺寸的密集型和混合专家(MoE)模型,包括 0.6B、1.7B、4B、8B、14B、32B 以及 30B-A3B、235B-A22B。
  • 在思考模式(用于复杂的逻辑推理、数学和编码)和非思考模式(用于高效、通用的聊天)之间无缝切换,确保在各种场景下实现最佳性能。
  • 推理能力显著提升,在数学、代码生成和常识逻辑推理方面超越之前的 QwQ(思考模式)和 Qwen2.5 指令模型(非思考模式)。
  • 卓越的人类偏好对齐,在创意写作、角色扮演、多轮对话和指令跟随方面表现出色,提供更自然、引人入胜和沉浸式的对话体验。
  • 在代理能力方面具有专长,能够与外部工具在思考和未思考模式下精确集成,并在复杂的基于代理的任务中实现开源模型中的领先性能。
  • 支持 100 多种语言和方言,具有强大的多语言指令跟随和翻译能力。

[!重要] Qwen3 模型采用不同的命名方案。

后训练模型不再使用 "-Instruct" 后缀。例如,Qwen3-32B 是 Qwen2.5-32B-Instruct 的新版本。

基础模型现在以 "-Base" 结尾。

新闻

  • 2025.04.29:我们发布了 Qwen3 系列。查看我们的 博客 了解更多信息!
  • 2024.09.19:我们发布了 Qwen2.5 系列。这次有 3 个额外的模型尺寸:3B、14B 和 32B,提供了更多可能性。查看我们的 博客 了解更多信息!
  • 2024.06.06:我们发布了 Qwen2 系列。查看我们的 博客
  • 2024.03.28:我们发布了 Qwen 的第一个 MoE 模型:Qwen1.5-MoE-A2.7B!暂时只有 HF Transformers 和 vLLM 支持该模型。我们将很快增加对 llama.cpp、mlx-lm 等的支持。查看我们的 博客 了解更多信息!
  • 2024.02.05:我们发布了 Qwen1.5 系列。

性能

详细的评估结果报告在📑这篇博客中。

关于 GPU 内存需求及相应的吞吐量,请查看结果这里

运行 Qwen3

🤗 Transformers

Transformers 是一个用于推断和训练的预训练自然语言处理库。 推荐使用最新版本的 transformers,且要求 transformers>=4.51.0

以下是一个代码示例,说明如何使用模型根据给定输入生成内容。

from transformers import AutoModelForCausalLM, AutoTokenizer
model_name = "Qwen/Qwen3-8B"

# load the tokenizer and the model
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="auto",
    device_map="auto"
)

# prepare the model input
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 # Switches between thinking and non-thinking modes. Default is True.
)
model_inputs = tokenizer([text], return_tensors="pt").to(model.device)

# conduct text completion
generated_ids = model.generate(
    **model_inputs,
    max_new_tokens=32768
)
output_ids = generated_ids[0][len(model_inputs.input_ids[0]):].tolist() 

# the result will begin with thinking content in <think></think> tags, followed by the actual response
print(tokenizer.decode(output_ids, skip_special_tokens=True))

默认情况下,Qwen3 模型在响应前会进行思考。 这一行为可以通过以下方式控制:

  • enable_thinking=False:向 tokenizer.apply_chat_template 传递 enable_thinking=False 将严格阻止模型生成思考内容。
  • /think 和 /nothink 指令:在系统或用户消息中使用这些词来指示 Qwen3 是否应该思考。在多轮对话中,将遵循最新的指令。

ModelScope

我们强烈建议用户,特别是中国大陆的用户使用 ModelScope。 ModelScope 采用了与 Transformers 类似的 Python API。 命令行工具 modelscope download 可帮助您解决与下载检查点相关的问题。

llama.cpp

llama.cpp 使得大型语言模型推理在最少配置下,并且在广泛的硬件上实现最先进性能。 需要 llama.cpp>=b5092 版本。

要使用命令行工具,请在终端中运行以下命令:

./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 to exit

要使用 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

简单的网页前端将运行在 http://localhost:8080,而与 OpenAI 兼容的 API 将运行在 http://localhost:8080/v1

如需了解更多指导,请参阅我们的文档

[!TIP] llama.cpp 采用“轮转上下文管理”,通过逐出较早的标记实现了无限生成。 它可以通过参数进行配置,上述命令实际上禁用了此功能。 如需了解更多详情,请参阅我们的文档

[!IMPORTANT] 聊天模板使用了 llama.cpp 所用模板引擎不支持的功能。 因此,如果使用原始聊天模板,可能会遇到以下错误:

common_chat_templates_init: 无法解析聊天模板(默认使用 chatml)

我们正在努力解决此问题。

Ollama

安装 Ollama之后,您可以使用以下命令启动 Ollama 服务(需要 Ollama v0.6.6 或更高版本):

ollama serve
# You need to keep this service running whenever you are using ollama

要拉取模型检查点并运行模型,请使用 ollama run 命令。您可以通过在 qwen3 后添加后缀来指定模型大小,例如 :8b 或 :30b-a3b

ollama run qwen3:8b
# Setting parameters, type "/set parameter num_ctx 40960" and "/set parameter num_predict 32768"
# To exit, type "/bye" and press ENTER

您还可以通过兼容 OpenAI 的 API 来访问 Ollama 服务。 请注意,在使用 API 的过程中需要做到:(1) 确保 ollama serve 保持运行,以及 (2) 在使用该 API 之前执行 ollama run qwen3:8b 命令,以保证模型检查点准备就绪。 API 的默认地址是 http://localhost:11434/v1/

如需了解更多详情,请访问 ollama.ai

[!TIP] Ollama 采用了与 llama.cpp 相同的“轮转上下文管理”方式。 然而,其默认设置(num_ctx 为 2048,num_predict 为 -1),即无限生成带有 2048 个令牌的上下文, 可能会给 Qwen3 模型带来问题。 我们建议正确设置 num_ctx 和 num_predict

LMStudio

Qwen3 已经被 lmstudio.ai 支持。您可以直接使用 LMStudio 和我们的 GGUF 文件。

MLX LM

如果您正在使用 Apple Silicon,mlx-lmhttps://github.com/ml-explore/mlx-lm)也支持 Qwen3(版本 mlx-lm>=0.24.0)。 请在 Hugging Face Hub 上寻找以 MLX 结尾的模型。

使用Qwen3构建

工具使用

对于工具使用能力,我们推荐查看Qwen-Agent,它为这些API提供了一个包装器,以支持带有MCP支持的工具使用或函数调用。 Qwen3的工具使用还可以通过SGLang、vLLM、Transformers、llama.cpp、Ollama等进行。 遵循我们文档中的指南,了解如何启用支持。

微调

我们建议您使用训练框架,包括AxolotlUnSlothSwiftLlama-Factory等,使用SFT、DPO、GRPO等方法微调您的模型。

许可协议

我们的所有开源模型均遵循Apache 2.0许可。 您可以在相应的Hugging Face仓库中找到许可文件。

引用

如果您认为我们的工作对您有帮助,欢迎给我们引用。

@article{qwen2.5,
    title   = {Qwen2.5 Technical Report}, 
    author  = {An Yang and Baosong Yang and Beichen Zhang and Binyuan Hui and Bo Zheng and Bowen Yu and Chengyuan Li and Dayiheng Liu and Fei Huang and Haoran Wei and Huan Lin and Jian Yang and Jianhong Tu and Jianwei Zhang and Jianxin Yang and Jiaxi Yang and Jingren Zhou and Junyang Lin and Kai Dang and Keming Lu and Keqin Bao and Kexin Yang and Le Yu and Mei Li and Mingfeng Xue and Pei Zhang and Qin Zhu and Rui Men and Runji Lin and Tianhao Li and Tingyu Xia and Xingzhang Ren and Xuancheng Ren and Yang Fan and Yang Su and Yichang Zhang and Yu Wan and Yuqiong Liu and Zeyu Cui and Zhenru Zhang and Zihan Qiu},
    journal = {arXiv preprint arXiv:2412.15115},
    year    = {2024}
}

@article{qwen2,
    title   = {Qwen2 Technical Report}, 
    author  = {An Yang and Baosong Yang and Binyuan Hui and Bo Zheng and Bowen Yu and Chang Zhou and Chengpeng Li and Chengyuan Li and Dayiheng Liu and Fei Huang and Guanting Dong and Haoran Wei and Huan Lin and Jialong Tang and Jialin Wang and Jian Yang and Jianhong Tu and Jianwei Zhang and Jianxin Ma and Jin Xu and Jingren Zhou and Jinze Bai and Jinzheng He and Junyang Lin and Kai Dang and Keming Lu and Keqin Chen and Kexin Yang and Mei Li and Mingfeng Xue and Na Ni and Pei Zhang and Peng Wang and Ru Peng and Rui Men and Ruize Gao and Runji Lin and Shijie Wang and Shuai Bai and Sinan Tan and Tianhang Zhu and Tianhao Li and Tianyu Liu and Wenbin Ge and Xiaodong Deng and Xiaohuan Zhou and Xingzhang Ren and Xinyu Zhang and Xipin Wei and Xuancheng Ren and Yang Fan and Yang Yao and Yichang Zhang and Yu Wan and Yunfei Chu and Yuqiong Liu and Zeyu Cui and Zhenru Zhang and Zhihao Fan},
    journal = {arXiv preprint arXiv:2407.10671},
    year    = {2024}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

thesky123456

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值