模型库 / Qwen/Qwen3-4B

Qwen3-4B

Qwen text-generation transformers
Qwen/Qwen3-4B
3,491,372
下载量
610
收藏数
10
浏览量
apache-2.0
许可

简介

Qwen3 is the latest generation of large language models in Qwen series, offering a comprehensive suite of dense and mixture-of-experts (MoE) models. Built upon extensive training, Qwen3 delivers groundbreaking advancements in reasoning, instruction-following, agent capabilities, and multilingual support, with the following key features:

模型卡片

许可协议 apache-2.0
框架 transformers
任务 text-generation

模型配置

模型类型 qwen3
架构 Qwen3ForCausalLM

模型详情

已翻译

Qwen3-4B

Qwen3 亮点

Qwen3 是 Qwen 系列最新一代大语言模型,提供了一套全面的 dense 和 mixture-of-experts (MoE) 模型。基于大规模训练,Qwen3 在推理、指令遵循、agent 能力和多语言支持方面实现了突破性进展,具有以下关键特性:

  • 独特支持在单个模型内无缝切换思考模式(用于复杂逻辑推理、数学和编码)和非思考模式(用于高效、通用的对话),确保在各种场景下实现最佳性能。
  • 推理能力显著增强,在数学、代码生成和常识逻辑推理方面超越了之前的 QwQ(思考模式)和 Qwen2.5 instruct 模型(非思考模式)。
  • 卓越的人类偏好对齐,在创意写作、角色扮演、多轮对话和指令遵循方面表现出色,提供更自然、更具吸引力和沉浸感的对话体验。
  • 精通 agent 能力,能够在思考和非思考模式下精确集成外部工具,在基于 agent 的复杂任务中达到开源模型的领先性能。
  • 支持 100 多种语言和方言,具备强大的多语言指令遵循翻译能力。

模型概述

Qwen3-4B 具有以下特性:
- 类型:因果语言模型
- 训练阶段:预训练与后训练
- 参数量:4.0B
- 非嵌入参数量:3.6B
- 层数:36
- 注意力头数 (GQA):Q 为 32,KV 为 8
- 上下文长度:原生 32,768,通过 YaRN 可达 131,072 tokens

更多详情,包括基准评估、硬件要求和推理性能,请参考我们的 博客GitHub文档

[!TIP]
如果遇到严重的无限重复问题,请参考最佳实践部分获取最优采样参数,并将 presence_penalty 设置为 1.5。

快速开始

Qwen3 的代码已集成到最新的 Hugging Face transformers 中,建议您使用最新版本的 transformers

使用 `transformers)
index = len(output_ids) - output_ids[::-1].index(151668)
except ValueError:
index = 0

thinking_content = tokenizer.decode(output_ids[:index], skip_special_tokens=True).strip("\n")
content = tokenizer.decode(output_ids[index:], skip_special_tokens=True).strip("\n")

print("thinking content:", thinking_content)
print("content:", content)

对于部署,您可以使用 `sglang>=0.4.6.post1` 或 `vllm>=0.8.5` 来创建兼容 OpenAI 的 API 端点:
- SGLang:
    ```shell
    python -m sglang.launch_server --model-path Qwen/Qwen3-4B --reasoning-parser qwen3
    ```
- vLLM:
    ```shell
    vllm serve Qwen/Qwen3-4B --enable-reasoning --reasoning-parser deepseek_r1
    ```

对于本地使用,Ollama、LMStudio、MLX-LM、llama.cpp 和 KTransformers 等应用也已支持 Qwen3。

## 在思考模式与非思考模式之间切换

> [!TIP]
> `enable_thinking` 开关同样适用于 SGLang 和 vLLM 创建的 API。
> 请参考我们的文档:[SGLang 用户](https://qwen.readthedocs.io/en/latest/deployment/sglang.html#thinking-non-thinking-modes) 和 [vLLM 用户](https://qwen.readthedocs.io/en/latest/deployment/vllm.html#thinking-non-thinking-modes)。

### `enable_thinking=True`

默认情况下,Qwen3 启用了思考能力,类似于 QwQ-32B。这意味着模型将利用其推理能力来提升生成回复的质量。例如,在 `tokenizer.apply_chat_template` 中显式设置 `enable_thinking=True` 或保留默认值时,模型将进入思考模式。

```python
text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
    enable_thinking=True  # True is the default value for enable_thinking
)

在此模式下,模型将生成包含在 ... 块中的思考内容,随后输出最终回复。

[!NOTE]
对于思考模式,请使用 Temperature=0.6TopP=0.95TopK=20MinP=0generation_config.json 中的默认设置)。不要使用贪心解码,否则可能导致性能下降和无限重复。更详细的指导请参考最佳实践部分。

enable_thinking=False

我们提供了一个硬开关来严格禁用模型的思考行为,使其功能与之前的 Qwen2.5-Instruct 模型保持一致。此模式在需要禁用思考以提高效率的场景中特别有用。

text = tokenizer.apply_chat_template(
    messages,
    tokenize=False,
    add_generation_prompt=True,
    enable_thinking=False  # Setting enable_thinking=False disables thinking mode
)

在此模式下,模型不会生成任何思考内容,也不会包含 ... 块。

[!NOTE]
对于非思考模式,我们建议使用 Temperature=0.7TopP=0.8TopK=20MinP=0。更详细的指导请

标签

qwen3 conversational arxiv:2309.00071 arxiv:2505.09388 base_model:Qwen/Qwen3-4B-Base base_model:finetune:Qwen/Qwen3-4B-Base license:apache-2.0 text-generation-inference

操作


详细信息

厂商
Qwen
任务
text-generation
框架
transformers
模型类型
qwen3
许可(HF)
apache-2.0