引言#
今天,新一代原生全模态模型 Qwen3.8-Omni-Flash 正式上线。该模型的核心目标是提升其在真实生产力场景中的 Agent 能力,推动全模态模型从“理解全模态内容”进一步走向“规划任务、调用工具并完成创作”。在具备编程、文本知识工作和 GUI 操作等通用 Agentic 能力的基础上,Qwen3.8-Omni-Flash 进一步拓展了以音视频为核心的 Agentic 应用,在视频剪辑、音乐视频创作、影视制作与解说、音视频转图文摘要和音视频对话等需要综合处理文本、图像、音频与视频的工作流中取得了显著效果。
图 1:Qwen3.8-Omni-Flash 与其在生产环境中的应用
- Qwen3.8-Omni-Flash——现已上线 千问AI平台:
- 支持文本、图像、音频和视频输入,以及 1M 长上下文。
Qwen3.8-Omni-Flash 支持 1M 长序列,在保持与同尺寸文本模型相当的文本能力的同时,全模态能力显著提升。在累计 29 项评测中1,相比上一代 Qwen3.5-Omni-Plus,平均得分提升超过 25%;API 每小时音频输入价格降幅超过 98%,每小时音视频输入价格降幅超过 93%2。在音视频 Agent、Coding 和长程任务方面,模型在 WildClawBench-MM 上大幅提升 36.5 分,在 AgenticVBench 上提升 22.3 分,并在 UniClawBench 上取得 69.6 的高分。基础能力方面,模型在长音频/音视频理解、音视频推理、音视频 Caption 和多说话人识别上均有明显提升:例如,LongAudioSpan 提升 8.3 分,OmniVideoBench 提升 9.6 分,OmniCap-IF 的 CSR / ISR 分别提升 8.5 / 14.1 分,AliMeeting 的 DER / cpWER 从 88.11 / 89.61 降至 3.35 / 17.18。通过扩展数据、上下文与 Agentic Environment,Qwen3.8-Omni-Flash 的音视频能力接近 Gemini 3.8 Flash,音频能力整体超过 Gemini 3.8 Flash。这些能力的进一步提升,也意味着音视频正在从模型的感知输入,进一步成为 Agent 理解环境、开展推理并执行任务的核心载体。
1. 范围包括:音频推理:AliMeeting-test、AISHELL-4、MagicData-RAMC、MLC-SLM (en)、WenetSpeech (Net | Meeting)、FLEURS-60 ASR、FLEURS-60 S2TT、SpotSoundBench、MMAU、MMAR、MMSU、MuchoMusic-RUL、HumMusQA、MusTBench、Audio-MultiChallenge、WildSpeech、VoiceBench。音视频推理:DailyOmni、WorldSense、AVUT、JointAVBench、OmniCloze、OmniCap-IF、QIVD、OmniVideoBench、StreamingBench。音视频 Agent:WildClawBench-MM、UniClawBench、OmniGAIA。
2. 价格计算说明:音频或音视频每小时价格按 2 分钟素材的输入成本×30 估算;音视频采用 720p、1 fps。Gemini 3.8 Flash 使用 media_resolution=high,Seed 2.0 Lite 使用 max_frame_tokens=384,其他 API 参数使用默认值。文本输入与输出价格单位为 CNY/1M tokens;Gemini 与 Muse 的人民币价格按美元换算,汇率为 1 USD = 6.7191 CNY。
音视频是 Agent 走向真实生产力场景的重要载体,但也带来了一组新的系统挑战:长音视频的文件存储、网络传输与多轮推理成本高昂,现有 Agent Harness 框架缺乏对音视频的原生支持,而从全模态理解到端到端任务执行的工作范式仍处于早期阶段。解决这些问题,需要模型、Harness 工具与运行环境协同演进。
围绕这些挑战,我们在 Qwen3.8-Omni-Flash 上探索了如何贯穿素材理解、任务规划、工具执行与结果交付的完整链路,完成视频剪辑、翻译、电影解说和内容创作等端到端长程工作流,推动 Omni 从理解音视频进一步走向自主行动与任务交付。
为此,我们进一步扩展了 Qwen-MM-Plugins,为长音视频的按需感知、工具调用与工作流执行提供支持;同时开源 Qwen-Live Harness,为实时、持续的全模态交互提供原生运行环境。两者分别面向长程工作流与实时交互,并在与模型的共同迭代中持续拓展全模态 Agent 的能力边界。
长音视频理解#
Qwen3.8-Omni-Flash 实现了长音视频理解能力的全新升级:从按需描述、Agentic 主动取证,到理解并推进会议任务,再到生成以视频为中心的深度研究报告;不只是看得更久,更能找得准、理解深、执行快。
可控音视频 Caption#
视频描述不应只有一种答案,内容创作关心叙事,素材检索关心片段,资产管理关心结构。不同业务,需要不同的视频描述。在 Qwen3.8-Omni-Flash 中,我们对视频描述能力进行了全新升级:从回答“模型看到了什么”,走向理解“用户想知道什么”。描述对象、时间范围、信息粒度与输出格式均可自由指定;面对同一段视频,既能纵览全貌、定位关键片段,也能深入分析人物动作、镜头、光影与声音,并按需输出结构化结果。看什么、看多细、怎么呈现,由你定义。
Agentic 长音视频理解#
面对数小时的长视频,传统方法通常需要从头到尾处理全部内容,即使答案只存在于其中几分钟的片段内。Qwen3.8-Omni-Flash 原生 Agent 则从问题出发,自主决定该看什么、听什么,并通过由粗到细的多轮取证定位关键信息。它无需逐帧处理整部视频,即可将有限的计算与 Token 预算集中在真正相关的片段上,实现更高效的长视频理解。OmniVideoBench 实验表明,Agentic Understanding 将准确率从 63.4 提升至 67.8,同时将 Token 消耗从 145,736 降至 79,117,降幅约为 45.7%。下表对比了 Static Understanding 与 Agentic Understanding 在 OmniVideoBench 上的准确率及 Token 消耗:
| Static Understanding | Agentic Understanding | |
|---|---|---|
| Accuracy (↑) | 63.4 | 67.8 |
| Tokens per query (↓) | 145,736 | 79,117 |
长会议,从记录到执行#
多人会议是音视频理解中最复杂的场景之一:多人交替发言、声音相互重叠,人物身份、指代关系与讨论主题持续变化。Qwen3.8-Omni-Flash 具备多说话人音画协同识别能力,原生支持最长一小时的音视频输入,能够联合理解人物画面与语音内容,端到端完成说话人切分、内容转录与身份对应。输入完整会议视频并描述需求,模型即可梳理参会者关系、生成会议纪要与待办事项,并分析项目风险;同时借助视觉信息解决音频中的指代与实体歧义。结合 Agent 与工具调用,它还能发送邮件、整理任务,甚至依据会议需求直接开始编码。从听懂会议,进一步走向执行工作。
通过音视频开展深度研究#
当用户带着具体问题观看视频时,所需的答案往往不止于视频本身。Qwen3.8-Omni-Flash 能结合用户需求与视频内容,挖掘值得深入研究的问题,梳理视频重点,并检索网页、图片、视频和文档等多模态资料,生成以视频为中心、图文并茂的研究报告,帮助用户深入理解视频内容、解决实际问题。例如,用户在 Photoshop 抠发时遇到彩边问题,模型可以拆解教程步骤、研究 Multiply / Screen 混合模式的原理、对比其他边缘修复方案,帮助用户理解不同方法的适用条件,判断哪种方案更适合自己的情况。
音视频生产与编辑#
Qwen3.8-Omni-Flash 正在将音视频 Agent 推向新的阶段:从理解声音与画面,到自主规划、调用工具并交付成片,让全模态智能真正进入专业音视频内容生产流程。
Music2MV#
以音乐视频(MV)创作为例,Qwen3.8-Omni-Flash 能够细粒度、精准地理解用户输入歌曲的结构、节奏、情绪、人声与乐器变化,为人物、场景和镜头设计提供灵感。它还能输出带时间戳的句级歌词,让歌声、字幕与画面精准配合。结合 Qwen-MM-Plugins 等创作工具,模型可贯穿音乐理解、创意规划与成片质检,展现强大的音视频理解、推理和创作能力。
短剧翻译#
传统视频翻译往往需要在转写、翻译、配音和剪辑平台之间反复切换,不仅 API 调用与流程衔接复杂,也难以保证多角色音色、台词时长与画面节奏的一致性。借助 Qwen3.8-Omni-Flash 构建的 Agent,用户只需一句话描述需求,即可按需完成区分角色的台词识别、口语化翻译、角色克隆配音、音轨重混与成片质检,将原本割裂的译制环节串联为完整流程,实现短剧视频出海的自动化交付。
原始视频
翻译结果
原始视频
翻译结果
原始视频
翻译结果
长电影解说#
面对动辄两三小时的完整影片,电影解说视频的制作往往需要人工反复观看和梳理剧情,并完成镜头筛选、文案撰写、配音配乐与剪辑包装,制作流程繁琐、耗时耗力。基于 Qwen3.8-Omni-Flash 构建的 Agent,用户只需提供影片并用一句话描述创作需求,即可完成长视频全模态理解、关键情节提炼、解说规划、配音配乐、剪辑渲染与成片质检。Agent 还能智能穿插电影原声对白与解说配音,自动调节语速和音量,让解说、原声、背景音乐与画面自然衔接,打造更具真实感、代入感与“电影质感”的解说作品。
从使用模型,到优化模型#
真实的多模态业务往往复杂且成本敏感,模型往往需要在效果、时延、算力与部署成本之间取得平衡。
因此,面向具体场景定制小模型,是规模化业务应用的重要路径。然而,传统流程涉及数据构建、问题诊断、多轮训练与效果评测,周期长且高度依赖人工经验。这一次,我们进一步尝试将 Qwen3.8-Omni-Flash 推进到模型研发本身,探索“大模型负责研发、小模型面向业务”的新范式。
我们向 Qwen3.8-Omni-Flash 提出了一项任务:在 12 小时内提升 Qwen2.5-Omni-3B 的四川话识别能力,并交付可用模型。它自主选定 WenetSpeech-Chuan 评测集、固定评测标准并完成基线测试,随后直接听取语音样本,结合识别结果诊断问题,构建针对性的训练数据。在连续 4 轮实验中,Agent 累计构建了 3,413 条训练数据,并根据评测反馈调整方案、保留有效改进、回退无效尝试。最终,Qwen2.5-Omni-3B 在同一评测集上的字符错误率从 25.79% 降至 15.30%,相对下降约 40.7%。
这项实验展示了另一种模型演进的可能:通用多模态模型负责理解数据、规划实验与驱动迭代,小模型则沉淀面向具体业务的专用能力。Agent 不再只是调用模型,还能参与模型优化并解决实际业务问题。
音视频信息压缩#
音视频承载着丰富的信息,但其线性、非结构化的形态也让检索和复用变得困难。Qwen3.8-Omni-Flash 可以跨越声音、画面与时间线理解内容,并通过 Agentic 的方式完成信息提炼、结构重组与结果校验,将长视频中的核心知识与实践经验转化为信息密度更高、更易获取和复用的内容资产。
Video2Note#
围绕视频知识的结构化沉淀,我们在 Qwen-MM-Plugins 中开源了 Video2Note。依托 Qwen3.8-Omni-Flash 对语音、画面与操作过程的联合理解,它能够自动梳理知识结构、拆解关键步骤、筛选代表性画面,并生成图文对应的 PDF 笔记;同时通过自动审阅与迭代修正,将数小时的视频内容压缩为清晰、易读、便于复习的文档资产。
案例视频
最终 PDF
案例视频
最终 PDF
案例视频
最终 PDF
案例视频
最终 PDF
Omni Skill Creator#
视频不仅记录了“怎么做”,也承载着专家在实践中积累的经验技巧。基于这一思路,我们将 Omni Skill Creator 作为 Qwen-MM-Plugins 的全新开源能力:它既可以从操作演示中提炼标准作业流程(SOP),并将其转化为可复用的自动化流程,也可以从专家教学中学习工具使用、决策依据与关键经验。一次演示教学即可转化为经过校验和评测的 Agent Skill,实现基于全模态内容构建可复用、可传播的 Agent Skill。
音视频实时交互#
Qwen3.8-Omni-Flash 面向完整音视频的深度理解与创作;面向持续、低延迟的交互场景,我们进一步带来 Qwen3.8-Omni-Flash-Realtime。它能够在音视频流输入的同时完成感知与响应,并结合实时上下文调用工具、执行任务,让全模态能力从“理解一段内容”走向“参与一场交互”。
实时口语陪练#
口语世界没有标准输入。口音、元辅音替换与声调偏差,都会让逐字转写偏离真实语义。Qwen3.8-Omni-Flash-Realtime 联合建模发音与语义,能够理解受口音影响的非标准表达,将其对齐到正确词汇,并实时生成标准发音示范。在多轮练习中,模型根据新的语音持续更新判断:纠正影响理解的错误,同时保留自然的节奏、语气与情感。
全模态空间音频感知#
在真实空间中,声音是视觉之外的另一条坐标轴。Qwen3.8-Omni-Flash-Realtime 融合空间声音与视觉信息,持续判断声源方向和距离,并同步感知障碍、通行区域与场景变化,是首个支持“听声辨位”的全模态大模型。
面对“过来这里”或“去看看是什么在响”等指令,模型能够从环境噪声中锁定人声与目标声音,将语义落到现场空间,并调用工具完成定位、搜索、路径规划与导航。从听见目标,到抵达目标。
音视频外部知识接入#
实时交互不仅需要低延迟,也需要随业务动态加载知识与行为。Qwen3.8-Omni-Flash-Realtime 支持通过 Skill 注入身份设定、表达风格、业务知识与交互规则,并通过工具调用将这些能力延伸到任务执行。
在智能客服等场景中,模型可以实时加载品牌话术与服务流程,理解用户的语音、画面与上下文,生成符合业务规范的回应并执行操作。同一个实时模型,由此可以拥有不同的知识、角色与行动方式。
完整性能结果#
Omni#
| Qwen3.8-Omni-Flash | Qwen3.5-Omni-Plus | Gemini 3.8 Flash | Seed 2.0 Lite | Muse Spark 1.2 | |
|---|---|---|---|---|---|
| Agentic Omni Intelligence | |||||
WildClawBench-MM Multimodal tool use | 71.0 | 34.5 | 58.9 | 41.9 | -- |
UniClawBench Multimodal tool use | 69.6 | 67.1 | 69.0 | 61.2 | -- |
AgenticVBench Multimodal tool use | 36.8 | 14.5 | 45.0 | 10.0 | -- |
OmniGAIA Web Search | 74.0 | 57.2 | 78.6 | 64.4 | -- |
| General Audio-Visual Capabilities | |||||
DailyOmni Audio-Visual Understanding | 85.1 | 85.1 | 84.0 | 81.4 | 79.6 |
WorldSense Audio-Visual Understanding | 68.5 | 63.9 | 69.6 | 67.3 | 65.0 |
AVUT Audio-Visual Understanding | 86.6 | 85.9 | 88.0 | 81.5 | 82.4 |
JoinAVBench Audio-Visual Understanding | 75.9 | 74.1 | 70.4 | 70.6 | 71.8 |
OmniVideoBench Audio-Visual Reasoning | 63.4 | 53.8 | 65.2 | 58.5 | 62.2 |
Video-MME-v2 Audio-Visual Reasoning | 65.0 | 47.9 | 71.0 | 64.9 | -- |
LVOmniBench Long Video Reasoning | 63.3 | 53.2 | 70.7 | -- | -- |
OmniCloze Audio-Visual Caption | 63.2 | 64.2 | 60.9 | 56.3 | 65.3 |
OmniCap-IF Audio-Visual Caption | CSR 80.6 ISR 28.2 | CSR 72.1 ISR 14.1 | CSR 81.9 ISR 28.3 | CSR 74.6 ISR 18.1 | CSR 77.9 ISR 26.8 |
QIVD Audio-Visual Interaction | 69.6 | 65.6 | 69.1 | 62.0 | 62.0 |
StreamingBench Audio-Visual Interaction | 80.8 | 57.1 | 79.9 | 77.2 | 77.8 |
| General Audio Capabilities | |||||
AliMeeting Test Multi-Speaker ASR (DER | cpWER, ↓) | 3.4 | 17.2 | 88.1 | 89.6 | 72.6 | 53.1 | 75.1 | 76.1 | 93.7 | 92.7 |
AISHELL-4 Multi-Speaker ASR (DER | cpWER, ↓) | 2.8 | 11.2 | 100.0 | 100.0 | 66.4 | 56.9 | 64.8 | 64.2 | 91.3 | 86.0 |
MagicData-RAMC Multi-Speaker ASR (DER | cpWER, ↓) | 5.7 | 14.1 | 98.4 | 97.1 | 67.9 | 33.8 | 43.4 | 35.1 | 82.1 | 75.3 |
MLC-SLM (en) Multi-Speaker ASR (DER | cpWER, ↓) | 4.0 | 14.2 | 68.6 | 63.9 | 60.8 | 26.6 | 40.4 | 45.5 | 74.3 | 52.9 |
WenetSpeech (Net) ASR (WER, ↓) | 4.8 | 3.7 | 14.2 | 4.3 | 68.2 |
WenetSpeech (Meeting) ASR (WER, ↓) | 4.6 | 4.8 | 16.7 | 4.7 | 42.6 |
FLEURS-ASR Multilingual ASR (WER, ↓) | 9.3 | 7.2 | 7.9 | 32.1 | 23.6 |
FLEURS-S2TT Multilingual S2TT (BLEU) | 31.8 | 32.2 | 33.0 | 24.8 | 28.8 |
SpotSoundBench Audio Grounding | 67.2 | 64.2 | 39.7 | 59.6 | 16.9 |
MMAU Audio Understanding | 81.8 | 81.9 | 76.9 | 77.2 | 63.5 |
MMAR Audio Understanding | 79.8 | 79.8 | 78.5 | 77.7 | 67.3 |
MMSU Audio Understanding | 82.1 | 83.0 | 83.3 | 80.2 | 59.9 |
LongAudioSpan Long Audio Reasoning | Accuracy 82.7 Rubric 71.8 Chain 48.2 | Accuracy 74.4 Rubric 49.8 Chain 45.1 | Accuracy 79.3 Rubric 65.5 Chain 64.6 | -- | -- |
MuchoMusic-RUL Music Understanding | 72.6 | 71.6 | 53.7 | 61.7 | 40.1 |
HumMusQA Music Understanding | 75.8 | 75.5 | 71.2 | 66.0 | 63.3 |
MusTBench Music Understanding | 50.6 | 49.1 | 40.3 | 44.0 | 29.4 |
Audio MultiChallenge Audio Interaction | 71.5 | 57.6 | 71.9 | 63.4 | 57.9 |
WildSpeech Audio Interaction | 74.3 | 75.7 | 76.4 | 74.5 | 73.4 |
VoiceBench Audio Interaction | 91.6 | 92.9 | 92.3 | 84.1 | 79.8 |
1. Agentic Omni Intelligence 的评测框架(Harness):WildClawBench-MM 与 AgenticVBench 使用 Claude Code,UniClawBench 使用 OpenClaw,OmniGAIA 未使用 Harness。WildClawBench-MM 仅评测 WildClawBench 中涉及图像、视频或音频的多模态任务。
2. FLEURS:ASR 与 S2TT 任务的评测结果均覆盖以下 60 种语言:中文(普通话)、英语、粤语、阿拉伯语、德语、法语、西班牙语、葡萄牙语、印度尼西亚语、意大利语、韩语、俄语、泰语、越南语、日语、土耳其语、印地语、马来语、荷兰语、乌尔都语、挪威语、瑞典语、丹麦语、希伯来语、芬兰语、波兰语、冰岛语、捷克语、菲律宾语、波斯语、希腊语、南非语、阿斯图里亚斯语、白俄罗斯语、保加利亚语、孟加拉语、波斯尼亚语、加泰罗尼亚语、宿务语、爱沙尼亚语、加利西亚语、古吉拉特语、克罗地亚语、匈牙利语、爪哇语、哈萨克语、卡纳达语、吉尔吉斯语、拉脱维亚语、马其顿语、马拉雅拉姆语、马拉地语、旁遮普语、罗马尼亚语、斯洛伐克语、斯洛文尼亚语、斯瓦希里语、塔吉克语、阿塞拜疆语、乌克兰语。
3. 空白单元格(--):分数尚不可用或不适用。
Agentic Omni Understanding#
长音视频中的关键信息往往分散在不同时间片段,复杂问题还需要结合声音与画面进行多步推理。Agentic Omni Understanding 让模型从问题出发,主动规划、调用工具并逐步定位和核对证据,将计算资源集中在与问题相关的内容上,提升长音视频理解的准确性与效率。为评估这一能力,我们在 OmniVideoBench、Video-MME-v2 和 LVOmniBench 上,分别对比 Qwen3.8-Omni-Flash 与 Gemini 3.8 Flash 在两种设置下的表现:直接理解输入内容的 Static 模式,以及接入 Qwen Code 的 Agent 模式,以观察引入 Agent 工作流后两款模型的表现变化。
| Qwen3.8-Omni-Flash (Static) | Qwen3.8-Omni-Flash (Qwen Code) | Gemini 3.8 Flash (Static) | Gemini 3.8 Flash (Qwen Code) | |
|---|---|---|---|---|
OmniVideoBench Audio-Visual Reasoning | 63.4 | 67.8 | 65.2 | 70.1 |
Video-MME-v2 Audio-Visual Reasoning | 65.0 | 71.3 | 71.0 | 72.7 |
LVOmniBench Long Video Reasoning | 63.3 | 73.6 | 70.7 | 70.7 |
Text#
| Qwen3.8-Omni-Flash | Qwen3.8- Flash | Qwen3.8- 27B | Qwen3.7- Plus | DeepSeek-V4-Flash-0731 | Claude-Opus-4.6 (Max) | |
|---|---|---|---|---|---|---|
| Coding and Agent | ||||||
DeepSWE 1.1 Long-horizon software engineering | 57.8 | 58.7 | 42.2 | 16.5 | 54.4 | -- |
SWE-bench Pro Long-horizon software engineering | 63.3 | 62.5 | 61.7 | 55.8 | 56.0 | 53.4 |
SWE-bench Multilingual Multilingual software engineering | 80.5 | 81.0 | 73.8 | 75.8 | -- | 77.5 |
NL2Repo-Bench Repo-level code generation | 48.9 | 48.1 | 42.3 | 41.1 | 54.2 | 47.6 |
CoWorkBench Long-horizon office work | 75.3 | 73.9 | 70.7 | 65.1 | 45.1 | 68.2 |
| General Text Capabilities | ||||||
IFBench Instruction following | 81.5 | 81.3 | 79.5 | 79.1 | 79.2 | 62.5 |
GPQA Diamond Scientific reasoning | 91.0 | 91.7 | 89.2 | 90.3 | 90.8 | 91.3 |
HLE Multidisciplinary reasoning | 36.5 | 35.9 | 30.8 | 34.7 | 33.8 | 40.0 |
LiveCodeBench v6 Competitive coding | 92.6 | 91.9 | 90.3 | 89.6 | 90.6 | 88.8 |
1. DeepSWE 1.1:使用 Claude Code 和 mini-SWE-agent 评测框架评估,temp=1.0,top_p=0.95,上下文窗口 256K。我们报告两个框架中的最高分;值得注意的是,Qwen3.8-Flash-Next 在 mini-SWE-agent 上表现最佳。
2. SWE-bench Pro:除 Claude-Opus-4.6 (Max) 采用官方报告分数外,其余模型均使用 Claude Code 评测框架评估,temp=1.0,top_p=0.95,上下文窗口 256K。已修正存在问题的任务,并在修正后的基准上重新评估所有基线模型。
3. SWE-bench Multilingual:使用 mini-SWE-agent 评测框架评估,temp=1.0,top_p=0.95,上下文窗口 256K。
4. NL2Repo-Bench:使用 Claude Code 评测框架评估。为防止奖励黑客攻击,我们禁用了试图访问特定仓库的 Bash 命令,如 pip download、pip install 和 git clone。
5. CoWorkBench:内部 Cowork 基准,用于评估跨计算机科学、金融、法律、医疗及其他生产力领域的长周期办公与生产力智能体任务。
6. HLE:由 GPT-4o 评判。
7. 空白单元格(--):分数尚不可用或不适用。
Vision#
| Qwen3.8-Omni-Flash | Qwen3.8- Flash | Qwen3.8- 27B | Qwen3.7- Plus | Claude-Opus-4.6 (Max) | |
|---|---|---|---|---|---|
| Agentic Vision Intelligence | |||||
ClawEval-MM Multimodal tool use | Pass@3 60.4 Average 61.9 | Pass@3 64.4 Average 60.4 | Pass@3 57.4 Average 56.9 | Pass@3 57.4 Average 60.1 | Pass@3 52.5 Average 54.7 |
AndroidWorld Mobile use | 87.1 | 84.5 | 81.9 | 81.0 | 62.0 |
Vision2Web Visual web development | 62.9 | 64.0 | 62.9 | 42.1 | -- |
| General Vision Capabilities | |||||
ERQA Embodied intelligence | 71.0 | 72.3 | 65.5 | 69.8 | 40.8 |
LVBench Long video understanding | 76.9 | 76.6 | 72.4 | 76.2 | 63.0 |
RealWorldQA Real-world perception | 87.7 | 88.5 | 85.9 | 86.9 | 73.9 |
MathVision Visual math problem solving | Without CI 91.8 With CI 96.2 | Without CI 90.6 With CI 95.7 | Without CI 90.0 With CI 94.6 | Without CI 90.3 With CI 88.4 | Without CI 65.5 With CI -- |
CharXiv (RQ) Scientific chart analysis | Without CI 83.5 With CI 91.4 | Without CI 84.6 With CI 90.6 | Without CI 83.7 With CI 90.2 | Without CI 85.8 With CI 85.9 | Without CI 66.0 With CI -- |
1. ClawEval-MM:分数以「pass@3 / 平均分」的形式给出。pass@3 为三次试验中至少通过一次的比例,平均分为三次试验得分的均值。
2. RecreationBench:内部的长程应用复现 benchmark,用于评估覆盖五个平台的混合智能体能力——桌面(Ubuntu、macOS、Windows)、移动(Android)与网页。
3. OSWorld 2.0:分数以「binary / partial」的形式给出。binary 为获得完整任务奖励的任务占比,partial 为在所有任务上取得的部分奖励的汇总。
4. Vision2Web:取 frontend、webpage 与 website 三类的平均,使用 Claude Code harness,由 gpt-5.4-2026-03-05 评判。
5. MathVision、CharXiv (RQ):分数以「不含 CI / 含 CI」的形式给出。MathVision 中少量标注有误的 ground truth 已在人工核对后修正。我们的分数使用固定 prompt 评测,例如「Please reason step by step, and put your final answer within \boxed{}.」;对其他模型,我们取带与不带 \boxed{} 指令两次结果中的较高者。
6. 空白单元格(--):分数尚不可用或不适用。
Throughput & Latency#
以下为 Qwen3.8-Omni-Flash-Realtime API 在不同输入场景下的实际吞吐与延迟性能信息,为实际生产环境中能够感知与体验到的延迟与吞吐能力。
| Input Scenario | Text Output TPS (Tokens/s) | Time to First Token (ms) | Time to First Audio Packet (ms) | Audio Generation RTF |
|---|---|---|---|---|
| Realtime API Performance | ||||
| Audio 6s | 84.87 | 591.26 | 978.36 | 0.1538 |
| Audio 12s | 83.18 | 604.80 | 982.74 | 0.1537 |
| Audio 20s | 81.06 | 617.98 | 1026.39 | 0.1538 |
| Audio-Visual 6s | 84.89 | 837.96 | 1214.73 | 0.1524 |
| Audio-Visual 12s | 84.33 | 911.85 | 1268.07 | 0.1527 |
| Audio-Visual 20s | 83.00 | 981.01 | 1350.49 | 0.1528 |
支持的语种#
| 能力 | 多语言 | 中文方言 |
|---|---|---|
| 语音识别 | 74 种:南非语、阿拉伯语、阿斯图里亚斯语、阿塞拜疆语、巴斯克语、白俄罗斯语、孟加拉语、波斯尼亚语、保加利亚语、粤语、加泰罗尼亚语、宿务语、中文、克罗地亚语、捷克语、丹麦语、荷兰语、英语、世界语、爱沙尼亚语、菲律宾语、芬兰语、法语、加利西亚语、格鲁吉亚语、德语、希腊语、希伯来语、印地语、匈牙利语、冰岛语、印尼语、国际语、意大利语、日语、爪哇语、卡纳达语、哈萨克语、韩语、柯尔克孜语、林加拉语、拉脱维亚语、立陶宛语、马其顿语、马来语、马拉雅拉姆语、马耳他语、毛利语、马拉地语、蒙古语、挪威语(博克马尔)、新挪威语、奥里亚语、波斯语、波兰语、葡萄牙语、旁遮普语、罗马尼亚语、俄语、塞尔维亚语、斯洛伐克语、斯洛文尼亚语、西班牙语、斯瓦希里语、瑞典语、塔吉克语、泰米尔语、泰卢固语、泰语、土耳其语、乌克兰语、乌尔都语、维吾尔语、越南语 | 39 种:东北话、贵州话、广东粤语、河南话、香港粤语、上海话、陕西话、天津话、台湾话、云南话、安徽话、福建话、甘肃话、广东普通话、湖北话、湖南话、江西话、山东话、山西话、四川话、广西话、海南话、重庆话、长沙话、杭州话、合肥话、银川话、郑州话、沈阳话、温州话、武汉话、昆明话、太原话、南昌话、济南话、兰州话、南京话、客家话、闽南语 |
| 语音生成 | 29 种:中文、英语、德语、意大利语、葡萄牙语、西班牙语、日语、韩语、法语、俄语、泰语、印度尼西亚语、阿拉伯语、越南语、土耳其语、芬兰语、波兰语、印地语、荷兰语、捷克语、乌尔都语、他加禄语、瑞典语、丹麦语、希伯来语、冰岛语、马来语、挪威语、波斯语 | 7 种:四川话、北京话、天津话、南京话、陕西话、粤语、闽南语 |
开始使用 Qwen3.8-Omni-Flash#
API 使用方式#
Qwen3.8-Omni-Flash 正式支持 reasoning_effort,可用于调节推理深度、控制成本:
xhigh(默认):适用于需要深入分析的复杂任务。medium:在准确性与速度之间取得平衡。low:优化速度与成本的高效推理。
此外,preserve_thinking 在所有场景中默认开启,以获得最佳的开箱即用体验。
Qwen3.8-Omni-Flash 支持多种行业标准协议,包括与 OpenAI 规范兼容的聊天补全(Chat Completions)和响应(Responses)API,具体调用示例代码如下:
"""
Environment variables:
DASHSCOPE_API_KEY: Your API Key from https://platform.qianwenai.com/home
DASHSCOPE_BASE_URL: (optional) Base URL for compatible-mode API.
- Beijing: https://dashscope.aliyuncs.com/compatible-mode/v1
- Singapore: https://dashscope-intl.aliyuncs.com/compatible-mode/v1
"""
from openai import OpenAI
import os
api_key = os.environ.get("DASHSCOPE_API_KEY")
if not api_key:
raise ValueError(
"DASHSCOPE_API_KEY is required. "
"Set it via: export DASHSCOPE_API_KEY='your-api-key'"
)
client = OpenAI(
api_key=api_key,
base_url=os.environ.get(
"DASHSCOPE_BASE_URL",
"https://dashscope.aliyuncs.com/compatible-mode/v1",
),
)
messages=[
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20241022/emyrja/dog_and_girl.jpeg"
},
},
{
"type": "input_audio",
"input_audio": {
"data": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250211/tixcef/cherry.wav",
"format": "wav"
},
},
{"type": "text", "text": "请描述图片内容,并告诉我音频在说什么。"},
],
},
]
completion = client.chat.completions.create(
model="qwen3.8-omni-flash",
messages=messages,
extra_body={
"enable_thinking": True,
# "preserve_thinking": True,
},
reasoning_effort="xhigh", # supported levels are xhigh, medium, and low
stream=True,
)
reasoning_content = ""
answer_content = ""
is_answering = False
print("\n" + "=" * 20 + "Reasoning" + "=" * 20 + "\n")
for chunk in completion:
if not chunk.choices:
print("\nUsage:")
print(chunk.usage)
continue
delta = chunk.choices[0].delta
if hasattr(delta, "reasoning_content") and delta.reasoning_content is not None:
if not is_answering:
print(delta.reasoning_content, end="", flush=True)
reasoning_content += delta.reasoning_content
if hasattr(delta, "content") and delta.content:
if not is_answering:
print("\n" + "=" * 20 + "Answer" + "=" * 20 + "\n")
is_answering = True
print(delta.content, end="", flush=True)
answer_content += delta.content
可控音视频 Caption 最佳实践#
内容组织与粒度控制: 将视频描述、OCR 提取、音频描述与语音转写按章节组织,涵盖画面、人声、音乐、音效及环境声,并保留原文、说话人和对应时间范围,便于检索与核对。可在 Prompt 中设置篇幅范围来控制细节程度,例如 Describe the video in approximately 2000–3000 words.,并根据视频时长和信息密度调整。
Provide a detailed description of the video.
Make sure your description covers every one of the following dimensions:
Visual
- Subjects and characters: appearance, clothing, gender/age cues, identity, distinctive features
- Actions and events in chronological order, and how the scene evolves over time
- Setting and background: location, environment, time of day
- Spatial layout and relations between subjects/objects; counts and quantities
- On-screen text: captions, titles, subtitles, logos, UI — exact content and appearance
- Visual style: colors, lighting, camera shots, angles, and camera movement
Audio
- Speech: the exact spoken content, transcribed verbatim
- Speakers: who is speaking (mapped to the on-screen person or voice-over), with accent, tone, gender/age cues
- Speaking state: prosody, emotion, volume, and speaking style
- Music: presence, genre/mood, and lyrics if any
- Sound effects and ambient/background sounds
- Non-speech vocalizations: laughter, crying, applause, etc.
Audio-visual correspondence
- Which speech or sound aligns with which on-screen person or visual event
- The timing of each event, expressed with timestamps
It should explicitly include three sections:
1. A structured chronological storyline of **every noticeable audio and visual details**
2. A structured list of all visible text. For each text element, include start timestamp, end timestamp, the exact text content, the appearance characteristics. If no text appears, explicitly state so.
3. A structured speech-to-text transcription, include speaker (corresponding to the character or voice-over in Section 1, including their accent and tone), exact spoken content, start timestamp, end timestamp, and speaking state (prosody, emotion, and style). If no speech appears, explicitly state so.
Aside from these three required sections, you are free to organize any additional content in any way you find helpful. This additional content can include global information about the entire video or localized information about specific moments. You may choose the topic of this extra content freely.
Rules:
- Add as much descriptive detail as possible.
- Do not use Markdown bold formatting.
- Carefully look at frames and listen to the audio, making sure no detail is overlooked.
Output Format:
```
## Storyline
<xx:xx.xxx> - <xx:xx.xxx>
<an unstructured long paragraph in natural language describing what happened during this period, blending both audio and video details.>
<xx:xx.xxx> - <xx:xx.xxx>
<an unstructured long paragraph in natural language describing what happened during this period, blending both audio and video details.>
<xx:xx.xxx> - <xx:xx.xxx>
<an unstructured long paragraph in natural language describing what happened during this period, blending both audio and video details.>
...
## Visible Text
<xx:xx.xxx> - <xx:xx.xxx>
“<element>”: <appearance>
“<element>”: <appearance>
<xx:xx.xxx> - <xx:xx.xxx>
“<element>”: <appearance>
“<element>”: <appearance>
“<element>”: <appearance>
<xx:xx.xxx> - <xx:xx.xxx>
“<element>”: <appearance>
...
## Speakers and Transcript
Speaker profiles:
<speaker> - <profile>
<speaker> - <profile>
<speaker> - <profile>
...
<xx:xx.xxx> - <xx:xx.xxx>
Speaker: <speaker>
State: <description>
Content: “<content>”
<xx:xx.xxx> - <xx:xx.xxx>
Speaker: <speaker>
State: <description>
Content: “<content>”
<xx:xx.xxx> - <xx:xx.xxx>
Speaker: <speaker>
State: <description>
Content: “<content>”
...
## <another section>
<paragraphs>
## <another section>
<paragraphs>
...
```
结构化输出与 Schema 约束: 在 Prompt 中提供任务说明和完整 JSON Schema,明确字段含义、类型、必填项及约束,便于程序解析和下游使用。
Prompt示例Describe the audio and visual content in detail in English, organized into scenes and events, following the JSON Schema below.
All timestamps must be relative to the beginning of the video. End times must not precede start times or exceed the video duration. Each event must fall within the time range of its parent scene.
Include only information directly supported by the audio or video. Do not guess or invent details. Do not infer causality merely because a sound and an action occur at the same time.
Return only valid JSON, without Markdown fences or commentary.
JSON Schema:
{
"$defs": {
"Event": {
"additionalProperties": false,
"properties": {
"time_range": {
"$ref": "#/$defs/TimeRange",
"description": "Time range of the event"
},
"participants": {
"description": "People, animals, or objects involved, named by observable features; use consistent names for the same participant",
"items": {
"type": "string"
},
"title": "Participants",
"type": "array"
},
"action": {
"description": "Specific actions, interactions, and observable outcomes",
"title": "Action",
"type": "string"
},
"sounds": {
"description": "Sounds heard during the event; use an empty list if none are discernible",
"items": {
"type": "string"
},
"title": "Sounds",
"type": "array"
}
},
"required": [
"time_range",
"participants",
"action",
"sounds"
],
"title": "Event",
"type": "object"
},
"Scene": {
"additionalProperties": false,
"properties": {
"time_range": {
"$ref": "#/$defs/TimeRange",
"description": "Time range of the scene"
},
"setting": {
"description": "Environment, spatial layout, and main visual features",
"title": "Setting",
"type": "string"
},
"events": {
"description": "Events in chronological order; use an empty list if there are none",
"items": {
"$ref": "#/$defs/Event"
},
"title": "Events",
"type": "array"
}
},
"required": [
"time_range",
"setting",
"events"
],
"title": "Scene",
"type": "object"
},
"TimeRange": {
"additionalProperties": false,
"properties": {
"start_seconds": {
"description": "Start time in seconds relative to the beginning of the video",
"minimum": 0,
"title": "Start Seconds",
"type": "number"
},
"end_seconds": {
"description": "End time in seconds; must not precede the start time",
"minimum": 0,
"title": "End Seconds",
"type": "number"
}
},
"required": [
"start_seconds",
"end_seconds"
],
"title": "TimeRange",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"summary": {
"description": "An overview of the main content of the video",
"title": "Summary",
"type": "string"
},
"scenes": {
"description": "Scenes in chronological order; group continuous footage with a consistent setting into one scene",
"items": {
"$ref": "#/$defs/Scene"
},
"title": "Scenes",
"type": "array"
}
},
"required": [
"summary",
"scenes"
],
"title": "CaptionResult",
"type": "object"
}
在 Agent Harness 中安装 Qwen-MM-Plugins#
Qwen-MM-Plugins 是一套面向 Agent Harness 的多模态插件,为智能体提供图片、音频、视频和文档理解能力,以及面向长视频的记忆与内容创作能力。它支持 Codex、Claude Code、Qwen Code、Gemini CLI、Qoder、CodeBuddy 和 OpenClaw 等 Agent Harness。我们也欢迎社区开发者参与共建。
可以直接在常用的办公 Agent 中输入如下指令:
帮我安装一下 https://github.com/QwenLM/Qwen-MM-Plugins 的 core、api 以及 omni 相关的插件。
也可以通过命令行安装:
# 运行官方引导安装器:
curl -fsSL https://raw.githubusercontent.com/QwenLM/Qwen-MM-Plugins/main/install.sh | bash
在菜单中依次选择:
- Install
- 选择正在使用的 Agent Harness
- 选择所需的 Omni 插件
| 插件 | 功能 |
|---|---|
core | 读取图片、视频帧、PDF、Office、代码、数据和 3D 文件 |
api | 图片理解、OCR、目标定位、音视频转写、说话人分离、事件分析和图像分割 |
omni-chatcut | 制作 MV、长影视解说和视频语音翻译 |
omni-video2note | 将视频教程生成带截图的 PDF 笔记 |
omni-skill-creator | 将教学视频、屏幕录制或操作演示自动提炼成可复用的 Agent Skill.md |
omni-memory | 为长视频建立人物、对话、声音和事件记忆 |
安装成功后,重启 Agent Harness 或创建一个新任务。
@song.mp3 根据歌曲节奏和内容生成一个完整的 MV。
@short_drama.mp4 将视频翻译成英文,并尽量保留原说话人的声音特征。
@movie.mp4 制作一个带中文旁白和字幕的影视解说视频。
@weekly_report_sop.mp4 帮我把这个写周报的录屏整理成 Skill.md。
@tutorial.mp4 将教程整理成带关键截图、时间戳和步骤说明的 PDF 笔记。
@documentary.mp4 建立音画记忆,记录人物、对话、声音和重要事件。
开始使用 Qwen3.8-Omni-Flash-Realtime#
API 使用方式#
Qwen3.8-Omni-Flash-Realtime 支持通过 WebSocket 和 WebRTC 协议接入。运行以下基础示例后,程序会打开摄像头和麦克风进行实时音视频通话,建议佩戴耳机体验。
# Run pip install websocket-client pyaudio dashscope opencv-python -U to install dependencies
"""
Environment variables:
DASHSCOPE_API_KEY: Your API Key from https://platform.qianwenai.com/home
DASHSCOPE_BASE_URL: (optional) Base URL for realtime API.
- Beijing: wss://dashscope.aliyuncs.com/api-ws/v1/realtime
- Singapore: wss://dashscope-intl.aliyuncs.com/api-ws/v1/realtime
"""
import os
import base64
import time
import pyaudio
import cv2
from dashscope.audio.qwen_omni import MultiModality, AudioFormat,OmniRealtimeCallback,OmniRealtimeConversation
import dashscope
url = f'wss://dashscope.aliyuncs.com/api-ws/v1/realtime'
dashscope.api_key = os.getenv('DASHSCOPE_API_KEY')
# Determine the voice
voice = 'Tina'
# Determine the model
model = 'qwen3.8-omni-flash-realtime'
# Determine the model role
instructions = "You are Qwen-Omni, a helpful assistant."
video_fps = 1
video_size = (1280, 720)
class SimpleCallback(OmniRealtimeCallback):
def __init__(self, pya):
self.pya = pya
self.out = None
def on_open(self):
# Initialize audio output stream
self.out = self.pya.open(
format=pyaudio.paInt16,
channels=1,
rate=24000,
output=True
)
def on_event(self, response):
if response['type'] == 'response.audio.delta':
# Play audio
self.out.write(base64.b64decode(response['delta']))
elif response['type'] == 'conversation.item.input_audio_transcription.delta':
# Streaming preview: text is the confirmed prefix, stash is the confirmed suffix
preview = response.get('text', '') + response.get('stash', '')
print(f"\r[User] {preview}", end='', flush=True)
elif response['type'] == 'conversation.item.input_audio_transcription.completed':
# Transcription completed, print the final text and a new line
print(f"\r[User] {response['transcript']}")
elif response['type'] == 'response.audio_transcript.done':
# Print the assistant's response text
print(f"[LLM] {response['transcript']}")
# 1. Initialize audio device
pya = pyaudio.PyAudio()
# 2. Create callback function and session
callback = SimpleCallback(pya)
conv = OmniRealtimeConversation(model=model, callback=callback, url=url)
# 3. Establish connection and configure session
conv.connect()
conv.update_session(output_modalities=[MultiModality.AUDIO, MultiModality.TEXT], voice=voice, instructions=instructions)
# 4. Initialize audio input stream
mic = pya.open(format=pyaudio.paInt16, channels=1, rate=16000, input=True)
camera = cv2.VideoCapture(0)
next_frame_at = 0.0
# 5. Main loop to process audio and video input
try:
if not camera.isOpened():
raise RuntimeError("Cannot open camera 0.")
camera.set(cv2.CAP_PROP_FRAME_WIDTH, video_size[0])
camera.set(cv2.CAP_PROP_FRAME_HEIGHT, video_size[1])
camera.set(cv2.CAP_PROP_BUFFERSIZE, 1)
print(f"Conversation started with camera ({video_fps} fps, {video_size[0]}x{video_size[1]}), speak into the microphone (Ctrl+C to exit)...")
while True:
audio_data = mic.read(3200, exception_on_overflow=False)
conv.append_audio(base64.b64encode(audio_data).decode())
success, frame = camera.read()
if not success:
raise RuntimeError("Cannot read a camera frame.")
if time.monotonic() >= next_frame_at:
frame = cv2.resize(frame, video_size)
success, image = cv2.imencode('.jpg', frame, [cv2.IMWRITE_JPEG_QUALITY, 80])
if not success:
raise RuntimeError("Cannot encode a camera frame.")
conv.append_video(base64.b64encode(image).decode())
next_frame_at = time.monotonic() + 1 / video_fps
time.sleep(0.01)
except KeyboardInterrupt:
pass
finally:
# Clean up resources
camera.release()
conv.close()
mic.close()
if callback.out:
callback.out.close()
pya.terminate()
print("\nConversation ended")
Qwen-Live Harness#
Qwen-Live Harness 是一套围绕 Qwen3.8-Omni-Flash-Realtime API 设计的完整开源 Harness。它可通过一行命令完成安装,并能灵活接入主流 Agent 工作流,具备任务委托、主动交互、长期记忆与上下文管理能力。我们也欢迎社区开发者参与共建。
图 2:Qwen-Live Harness交互框架
安装与体验方式:
npm install -g qwen-live-harness
qwen-live-harness init
qwen-live-harness
引用#
@misc{qwen38omniflash,
title = {Qwen3.8-Omni-Flash: Omni Senses. Agentic Delivery.},
url = {https://qwen.ai/blog?id=qwen3.8-omni-flash},
author = {{Qwen Team}},
month = {September},
year = {2026}
}