Q
Qwen/Qwen3.5-0.8B
模型介绍文件和版本分析
下载使用量0

Qwen3.5-0.8B

Qwen Chat

[!Note] 本仓库包含采用 Hugging Face Transformers 格式的后训练模型的权重及配置文件。

这些模型文件与 Hugging Face Transformers、vLLM、SGLang、KTransformers 等工具兼容。

考虑到其参数规模,该模型的目标应用场景包括原型开发、特定任务微调以及其他研究或开发用途。

近几个月来,我们持续加大对基础模型的研发投入,致力于打造兼具卓越实用性与性能的模型。Qwen3.5 实现了重大突破,它融合了多模态学习、架构效率、强化学习规模以及全球化可访问性等方面的创新成果,旨在为开发者和企业提供前所未有的能力与效率。

Qwen3.5 亮点

Qwen3.5 主要带来了以下增强:

  • 统一视觉-语言基础:通过对多模态 tokens 进行早期融合训练,实现了与 Qwen3 相当的跨代性能,并在推理、编码、智能体及视觉理解等基准测试中全面超越 Qwen3-VL 系列模型。

  • 高效混合架构:门控 Delta 网络结合稀疏混合专家(Mixture-of-Experts)机制,在实现高吞吐量推理的同时,将延迟和成本开销控制在最低水平。

  • 可扩展强化学习泛化:在包含百万智能体的环境中进行大规模强化学习训练,并采用复杂度逐步提升的任务分布,以确保模型在真实世界场景中具备强大的适应能力。

  • 全球化语言覆盖:扩展支持 201 种语言及方言,能够实现包容性的全球部署,并具备细致的文化与区域理解能力。

  • 新一代训练基础设施:多模态训练效率接近纯文本训练的 100%,异步强化学习框架支持大规模智能体架构与环境编排。

更多详情,请参阅我们的博客文章 Qwen3.5。

模型概述

  • 类型:带视觉编码器的因果语言模型
  • 训练阶段:预训练与后训练
  • 语言模型
    • 参数数量:0.8B
    • 隐藏维度:1024
    • 令牌嵌入:248320(已填充)
    • 层数:24
    • 隐藏层结构:6 × (3 × (门控 DeltaNet → FFN) → 1 × (门控注意力 → FFN))
    • 门控 DeltaNet:
      • 线性注意力头数量:V 为 16,QK 为 16
      • 头维度:128
    • 门控注意力:
      • 注意力头数量:Q 为 8,KV 为 2
      • 头维度:256
      • 旋转位置嵌入维度:64
    • 前馈网络:
      • 中间维度:3584
    • 语言模型输出:248320(与令牌嵌入绑定)
    • MTP:采用多步训练
  • 上下文长度:原生支持 262,144

基准测试结果

语言能力

Qwen3-4B-2507Qwen3-1.7BQwen3.5-2BQwen3.5-0.8B
非思考模式
MMLU-Pro69.640.255.329.7
MMLU-Redux84.264.469.248.5
C-Eval80.261.065.246.4
SuperGPQA42.821.030.416.9
IFEval83.468.261.252.1
MMMLU64.946.756.934.1
知识与STEM(思考模式)
MMLU-Pro74.056.566.542.3
MMLU-Redux86.173.979.659.5
C-Eval82.268.173.250.5
SuperGPQA47.831.237.521.3
GPQA65.840.151.611.9
指令遵循(思考模式)
IFEval87.472.578.644.0
IFBench50.426.741.321.0
MultiChallenge41.727.233.718.9
长上下文(思考模式)
AA-LCR32.06.725.64.7
LongBench v242.826.538.726.1
推理能力(思考模式)
HMMT Feb 2557.510.222.9--
HMMT Nov 2569.68.919.6--
通用智能体(思考模式)
BFCL-V439.9--43.625.3
TAU2-Bench43.2--48.811.6
多语言能力(思考模式)
MMMLU70.857.063.144.3
MMLU-ProX62.449.452.334.6
NOVA-6347.140.346.442.4
INCLUDE64.451.855.440.6
Global PIQA73.563.169.359.4
PolyMATH46.225.226.18.2
WMT24++58.939.345.827.2
MAXIFE72.150.760.639.2

* TAU2-Bench:我们遵循官方设置,但在航空领域,所有模型均采用 Claude Opus 4.5 系统说明中提出的修复方案进行评估。
* MMLU-ProX:我们报告 29 种语言的平均准确率。
* WMT24++:WMT24 经过难度标注和重新平衡后的更难子集;我们使用 XCOMET-XXL 报告 55 种语言的平均得分。
* MAXIFE:我们报告英语及多语言原始提示(共 23 种设置)的准确率。
* 实验设置:使用 top_p=0.95、top_k=20、存在惩罚=1.5、温度=1.0。
* 空白单元格(--)表示分数尚未公布或不适用。

视觉语言

Qwen3-VL-4BQwen3-VL-2BQwen3.5-2BQwen3.5-0.8B
STEM与谜题
MMMU70.861.464.2/64.249/47.4
MMMU-Pro57.042.550.3/47.731.2/31.4
Mathvista(mini)79.573.676.7/73.962.2/58.6
DynaMath74.466.773.6/69.649.9/46.5
ZEROBench0.00.01.0/0.00.0/0.0
ZEROBench_sub18.913.217.1/18.612.9/11.4
VlmsAreBlind68.650.075.8/74.359.4/57.3
通用视觉问答
RealWorldQA73.269.574.5/71.263.4/61.6
MMStar73.268.171.7/68.058.3/55.9
MMBenchEN-DEV-v1.186.781.983.3/81.369.9/68.0
SimpleVQA48.843.638.5/39.531.3/30.4
HallusionBench64.154.958.0/51.353.1/46.7
文本识别与文档理解
MMLongBench-Doc44.433.845.4/38.833.6/28.1
AI2D_TEST84.980.483.3/81.569.9/68.7
CC-OCR73.868.372.9/75.863.2/66.7
OmniDocBench1.580.065.979.8/80.961.0/70.6
CharXiv(RQ)50.337.158.8/52.641.3/38.2
OCRBench80.879.284.5/85.474.5/79.1
空间智能
RefCOCO(avg)88.284.884.8/84.379.3/77.8
CountBench89.484.191.4/86.877.0/68.6
ODInW1339.436.035.9/40.531.6/33.2
ERQA47.341.843.8/33.034.5/23.8
EmbSpatialBench80.775.977.9/66.468.6/54.6
RefSpatialBench45.328.932.9/30.023.5/21.7
Hypersim11.911.212.4/12.411.9/11.0
SUNRGBD28.028.628.7/25.626.1/23.3
Nuscene4.94.06.9/8.55.7/7.0
视频理解
VideoMME(带字幕)76.067.975.6/--63.8/--
VideoMME(无字幕)68.962.169.0/--57.7/--
VideoMMMU69.454.162.1/--44.3/--
MLVU75.769.276.2/--65.6/--
MVBench69.364.564.9/--55.8/--
LVBench53.547.657.1/--45.1/--
MMVU58.648.948.6/--34.3/--
视觉智能体
ScreenSpot Pro59.548.5--/54.5--/46.5
医疗视觉问答
SLAKE65.961.174.4/67.562.6/59.5
PMC-VQA48.442.448.8/54.040.4/45.5
MedXpertQA-MM26.313.026.9/19.117.1/25.3

* Qwen3.5模型的分数以思考模式/非思考模式呈现。
* MathVision:我们的模型分数使用固定提示词评估,例如“请逐步推理,并将最终答案放在\boxed{}内。”对于其他模型,我们报告使用和不使用\boxed{}格式运行时的较高分数。
* 实验设置:视频基准测试使用top_p=0.95、top_k=20、presence_penalty=1.5和temperature=1.0。所有其他基准测试采用相同的采样配置,但在思考模式下temperature=0.6。在非思考模式下,采样参数设置为top_p=0.8、top_k=20、presence_penalty=1.5和temperature=0.7。
* 空白单元格(--)表示分数尚未获得或不适用。

快速入门

[!Important] Qwen3.5 模型支持无思考模式和思考模式。Qwen3.5-0.8B 默认运行于无思考模式。 如需启用思考模式,请参考此处的示例。

为简化集成流程,我们建议通过 API 使用 Qwen3.5。以下是通过兼容 OpenAI 的 API 使用 Qwen3.5 的指南。

部署 Qwen3.5

Qwen3.5 可通过主流推理框架以 API 形式部署。 下文将展示启动 Qwen3.5 模型兼容 OpenAI API 服务的示例命令。

[!Important] 不同框架的推理效率和吞吐量差异显著。 建议使用最新版本的框架,以确保最佳性能和兼容性。 对于生产工作负载或高吞吐量场景,强烈推荐使用 SGLang、KTransformers 或 vLLM 等专用部署引擎。

[!Important] 该模型的默认上下文长度为 262,144 个 token。 若遇到内存不足(OOM)错误,请考虑减小上下文窗口。

SGLang

SGLang 是一个用于大型语言模型和视觉语言模型的快速部署框架。 Qwen3.5 需要使用该开源仓库主分支的 SGLang,可在全新环境中通过以下命令安装:

uv pip install 'git+https://github.com/sgl-project/sglang.git#subdirectory=python&egg=sglang[all]'

有关更多详细信息,请参见其文档。

以下操作将在 http://localhost:8000/v1 创建 API 端点:

  • 标准版:可使用以下命令创建最大上下文长度为 262,144 tokens 的 API 端点,该端点在 8 个 GPU 上使用张量并行。

    python -m sglang.launch_server --model-path Qwen/Qwen3.5-0.8B --port 8000 --tp-size 1 --mem-fraction-static 0.8 --context-length 262144
  • 工具调用:要支持工具调用,可使用以下命令。

    python -m sglang.launch_server --model-path Qwen/Qwen3.5-0.8B --port 8000 --tp-size 1 --mem-fraction-static 0.8 --context-length 262144 --tool-call-parser qwen3_coder
  • 多 token 预测(MTP):建议使用以下命令进行 MTP:

    python -m sglang.launch_server --model-path Qwen/Qwen3.5-0.8B --port 8000 --tp-size 1 --mem-fraction-static 0.8 --context-length 262144 --speculative-algo NEXTN --speculative-num-steps 3 --speculative-eagle-topk 1 --speculative-num-draft-tokens 4

vLLM

vLLM 是一个用于大型语言模型(LLMs)的高吞吐量且内存高效的推理和服务引擎。 Qwen3.5 需要使用开源仓库主分支的 vLLM,可在全新环境中通过以下命令安装:

uv pip install vllm --torch-backend=auto --extra-index-url https://wheels.vllm.ai/nightly

有关更多详情,请参见其文档。

如需详细的Qwen3.5使用指南,请参阅vLLM Qwen3.5使用说明。

以下操作将在http://localhost:8000/v1创建API端点:

  • 标准版:以下命令可用于创建一个最大上下文长度为262,144 tokens的API端点,并在8个GPU上使用张量并行。

    vllm serve Qwen/Qwen3.5-0.8B --port 8000 --tensor-parallel-size 1 --max-model-len 262144 
  • 工具调用:要支持工具使用,可使用以下命令。

    vllm serve Qwen/Qwen3.5-0.8B --port 8000 --tensor-parallel-size 1 --max-model-len 262144 --enable-auto-tool-choice --tool-call-parser qwen3_coder 
  • 多 token 预测(MTP):推荐使用以下命令进行MTP:

    vllm serve Qwen/Qwen3.5-0.8B --port 8000 --tensor-parallel-size 1 --max-model-len 262144 --speculative-config '{"method":"qwen3_next_mtp","num_speculative_tokens":2}'
  • 纯文本模式:以下命令会跳过视觉编码器和多模态分析,以释放内存用于额外的KV缓存:

    vllm serve Qwen/Qwen3.5-0.8B --port 8000 --tensor-parallel-size 1 --max-model-len 262144 --language-model-only

KTransformers

KTransformers是一个灵活的框架,可通过CPU-GPU异构计算体验前沿的LLM推理优化。 要使用KTransformers运行Qwen3.5,请参见KTransformers部署指南。

Hugging Face Transformers

Hugging Face Transformers包含一个轻量级服务器,可用于快速测试和中等负载部署。 运行Qwen3.5需要最新版本的transformers:

pip install "transformers[serving] @ git+https://github.com/huggingface/transformers.git@main"

有关更多详情,请参见其文档。同时,请确保已安装torchvision和pillow。

然后,运行transformers serve以启动服务器,其API端点位于http://localhost:8000/v1;如果有可用的加速器,服务器会将模型部署到加速器上:

transformers serve --force-model Qwen/Qwen3.5-0.8B --port 8000 --continuous-batching

通过对话补全 API 使用 Qwen3.5

对话补全 API 可通过标准 HTTP 请求或 OpenAI SDK 访问。 这里,我们展示使用 OpenAI Python SDK 的示例。

开始之前,请确保已安装该 SDK,并配置好 API 密钥和 API 基础 URL,例如:

pip install -U openai

# Set the following accordingly
export OPENAI_BASE_URL="http://localhost:8000/v1"
export OPENAI_API_KEY="EMPTY"

[!Tip] 我们建议使用以下一组采样参数进行生成

  • 文本任务非思考模式:temperature=1.0, top_p=1.00, top_k=20, min_p=0.0, presence_penalty=2.0, repetition_penalty=1.0
  • 多模态(VL)任务非思考模式:temperature=0.7, top_p=0.80, top_k=20, min_p=0.0, presence_penalty=1.5, repetition_penalty=1.0
  • 文本任务思考模式:temperature=1.0, top_p=0.95, top_k=20, min_p=0.0, presence_penalty=1.5, repetition_penalty=1.0
  • 多模态(VL)或精确编码(如 Web 开发)任务思考模式:temperature=0.6, top_p=0.95, top_k=20, min_p=0.0, presence_penalty=0.0, repetition_penalty=1.0

请注意,不同推理框架对采样参数的支持情况有所不同。

纯文本输入

from openai import OpenAI
# Configured by environment variables
client = OpenAI()

messages = [
    {"role": "user", "content": "Give me a short introduction to large language models."},
]

chat_response = client.chat.completions.create(
    model="Qwen/Qwen3.5-0.8B",
    messages=messages,
    max_tokens=32768,
    temperature=1.0,
    top_p=1.0,
    presence_penalty=2.0,
    extra_body={
        "top_k": 20,
    }, 
)
print("Chat response:", chat_response)

图像输入

from openai import OpenAI
# Configured by environment variables
client = OpenAI()

messages = [
    {
        "role": "user",
        "content": [
            {
                "type": "image_url",
                "image_url": {
                    "url": "https://qianwen-res.oss-accelerate.aliyuncs.com/Qwen3.5/demo/RealWorld/RealWorld-04.png"
                }
            },
            {
                "type": "text",
                "text": "Where is this?"
            }
        ]
    }
]

chat_response = client.chat.completions.create(
    model="Qwen/Qwen3.5-0.8B",
    messages=messages,
    max_tokens=32768,
    temperature=0.7,
    top_p=0.8,
    presence_penalty=1.5,
    extra_body={
        "top_k": 20,
    }, 
)
print("Chat response:", chat_response)

视频输入

from openai import OpenAI
# Configured by environment variables
client = OpenAI()

messages = [
    {
        "role": "user",
        "content": [
            {
                "type": "video_url",
                "video_url": {
                    "url": "https://qianwen-res.oss-accelerate.aliyuncs.com/Qwen3.5/demo/video/N1cdUjctpG8.mp4"
                }
            },
            {
                "type": "text",
                "text": "Summarize the video content."
            }
        ]
    }
]

# When vLLM is launched with `--media-io-kwargs '{"video": {"num_frames": -1}}'`,
# video frame sampling can be configured via `extra_body` (e.g., by setting `fps`).
# This feature is currently supported only in vLLM.
#
# By default, `fps=2` and `do_sample_frames=True`.
# With `do_sample_frames=True`, you can customize the `fps` value to set your desired video sampling rate.
chat_response = client.chat.completions.create(
    model="Qwen/Qwen3.5-0.8B",
    messages=messages,
    max_tokens=32768,
    temperature=0.7,
    top_p=0.8,
    presence_penalty=1.5,
    extra_body={
        "top_k": 20,
        "mm_processor_kwargs": {"fps": 2, "do_sample_frames": True},
    }, 
)

print("Chat response:", chat_response)

思考模式

[!Important] Qwen3.5 不正式支持 Qwen3 的软切换,即 /think 和 /nothink。

您可以通过配置 API 参数让模型在响应前进行思考。 例如,

from openai import OpenAI
# Configured by environment variables
client = OpenAI()

messages = [
    {"role": "user", "content": "Type \"I love Qwen3.5\" backwards"},
]

chat_response = client.chat.completions.create(
    model="Qwen/Qwen3.5-0.8B",
    messages=messages,
    max_tokens=81920,
    temperature=1.0,
    top_p=0.95,
    presence_penalty=1.5,
    extra_body={
        "top_k": 20,
        "enable_thinking": True,
    }, 
)
print("Chat response:", chat_response)

[!Important] 在思考模式下,我们观察到当使用推荐的采样参数时,Qwen3.5-0.8B 相较于其他 Qwen3.5 模型更容易陷入思考循环,这可能导致其无法正常终止生成。 我们建议针对具体使用场景进一步调整采样参数,并利用 API 的流式生成模式(如支持)以便及时检测和中断此类异常生成行为。

智能体使用

Qwen3.5 具备出色的工具调用能力。

Qwen-Agent

我们推荐使用 Qwen-Agent 快速构建基于 Qwen3.5 的智能体应用。

您可以通过 MCP 配置文件定义可用工具,使用 Qwen-Agent 的集成工具,或自行集成其他工具。

import os
from qwen_agent.agents import Assistant

# Define LLM
# Using OpenAI-compatible API endpoint. The API backend should disable response parsers.
llm_cfg = {
    # Use your own model service compatible with OpenAI API by vLLM/SGLang:
    'model': 'Qwen/Qwen3.5-0.8B',
    'model_type': 'qwenvl_oai',
    'model_server': 'http://localhost:8000/v1',  # api_base
    'api_key': 'EMPTY',

    'generate_cfg': {
        'use_raw_api': True,  
        # Pass the parameter of whether to enable thinking mode in this way
        # 'extra_body': {
        #    'chat_template_kwargs': {'enable_thinking': True}
        # },
    },
}

# Define Tools
tools = [
    {'mcpServers': {  # You can specify the MCP configuration file
            "filesystem": {
                "command": "npx",
                "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/xxxx/Desktop"]
            }
        }
    }
]

# Define Agent
bot = Assistant(llm=llm_cfg, function_list=tools)

# Streaming generation
messages = [{'role': 'user', 'content': 'Help me organize my desktop.'}]
for responses in bot.run(messages=messages):
    pass
print(responses)

# Streaming generation
messages = [{'role': 'user', 'content': 'Develop a dog website and save it on the desktop'}]
for responses in bot.run(messages=messages):
    pass
print(responses)

Qwen Code

Qwen Code 是一款面向终端的开源 AI 智能体,针对 Qwen 模型进行了优化。它能帮助您理解大型代码库、自动化繁琐工作,从而加快开发交付速度。

更多信息,请参阅 Qwen Code。

最佳实践

为实现最佳性能,我们建议采用以下设置:

  1. 采样参数:

    • 建议根据模式和任务类型使用以下采样参数组合:

      • 文本任务非思考模式:
        temperature=1.0,top_p=1.00,top_k=20,min_p=0.0,presence_penalty=2.0,repetition_penalty=1.0
      • 视觉语言(VL)任务非思考模式:
        temperature=0.7,top_p=0.80,top_k=20,min_p=0.0,presence_penalty=1.5,repetition_penalty=1.0
      • 文本任务思考模式:
        temperature=1.0,top_p=0.95,top_k=20,min_p=0.0,presence_penalty=1.5,repetition_penalty=1.0
      • 视觉语言任务或精确编码任务(如 Web 开发)思考模式:
        temperature=0.6,top_p=0.95,top_k=20,min_p=0.0,presence_penalty=0.0,repetition_penalty=1.0
    • 对于支持的框架,您可以将 presence_penalty 参数在 0 到 2 之间进行调整,以减少无意义的重复。但请注意,使用较高的值偶尔可能导致语言混用,并使模型性能略有下降。

  2. 充足的输出长度:对于大多数查询,建议使用 32,768 个 token 的输出长度。在对高度复杂问题(如数学和编程竞赛中的题目)进行基准测试时,建议将最大输出长度设置为 81,920 个 token。这能为模型提供足够的空间来生成详细且全面的响应,从而提升其整体性能。

  3. 标准化输出格式:进行基准测试时,建议通过提示词来标准化模型输出。

    • 数学问题:在提示词中包含“请逐步推理,并将最终答案放在 \boxed{} 内。”
    • 多项选择题:在提示词中添加以下 JSON 结构以标准化响应:“请在 answer 字段中仅用选项字母展示您的选择,例如:"answer": "C"。”
  4. 历史记录中不含思考内容:在多轮对话中,历史模型输出应仅包含最终输出部分,无需包含思考内容。这一点在提供的 Jinja2 聊天模板中已实现。但对于未直接使用 Jinja2 聊天模板的框架,需由开发者确保遵循此最佳实践。

  5. 长视频理解:为优化纯文本和图像的推理效率,发布的 video_preprocessor_config.json 中的 size 参数采用了保守配置。建议将 video_preprocessor_config 文件中的 longest_edge 参数设置为 469,762,048(对应 224k 视频 token),以实现对小时级视频的更高帧率采样,从而获得更优性能。例如:

    {"longest_edge": 469762048, "shortest_edge": 4096}

    或者,通过引擎启动参数覆盖默认值。实现细节请参考:vLLM / SGLang。

引用

如果您觉得我们的工作有帮助,欢迎引用我们的成果。

@misc{qwen3.5,
    title  = {{Qwen3.5}: Towards Native Multimodal Agents},
    author = {{Qwen Team}},
    month  = {February},
    year   = {2026},
    url    = {https://qwen.ai/blog?id=qwen3.5}
}