ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

新手指南:Qwen3-4B_rai_1.8.0_npu_16K 仓库核心文件全解,一文看懂每个文件的用途

新手指南:Qwen3-4B_rai_1.8.0_npu_16K 仓库核心文件全解,一文看懂每个文件的用途

【免费下载链接】Qwen3-4B_rai_1.8.0_npu_16K

项目地址:https://ai.gitcode.com/hf_mirrors/amd/Qwen3-4B_rai_1.8.0_npu_16K
点击查看免费下载

如果你想在 AMD Ryzen AI 笔记本上本地运行大语言模型,Qwen3-4B_rai_1.8.0_npu_16K 是一个值得关注的仓库。它是基于 Qwen3-4B 打造的 NPU 部署版本:经过 Quark 量化(AWQ / Group 128 / uint4 权重)和 OGA 模型构建,针对 Ryzen AI 1.8.0 NPU 做了 Token Fusion 后处理,支持 16K 上下文长度。

这个仓库里没有代码,而是一整套"模型 + 配置 + 分词器"的资源包。新手打开仓库常会被各种model.onnx、dd_metastate_...文件绕晕。本文带你逐一拆解每个核心文件的用途,帮你快速建立整体认知。

仓库整体结构一览 🗂️

整个仓库可以分为四大类:

类别文件作用
模型权重model.onnx、model.onnx.data、model.pb.bin、model.bin实际运行的推理模型与外部数据
运行配置config.json、genai_config.json、generation_config.json、rai_config.json模型架构、NPU 会话参数、采样策略
分词器tokenizer.json、tokenizer_config.json、vocab.json、merges.txt、added_tokens.json、special_tokens_map.json把文字与 Token 互相转换
其他chat_template.jinja、README.md、LICENSE、dd_metastate_*系列、cache/对话模板、说明文档与 NPU 元数据缓存

下面分组详解。

一、模型文件:推理的核心 💾

model.onnx 与 model.onnx.data

config.json 与 genai_config.json 中指定的入口模型是 model.onnx——这是一个 ONNX 格式的图定义文件,描述了模型的网络结构(输入输出、算子连接等)。由于模型权重体积较大,ONNX 标准会把大张量拆出来放到外部数据文件 model.onnx.data 中,两者必须放在一起使用。

model.pb.bin:NPU 专用外部数据

genai_config.json 的session_options中有一行关键配置:

  • "external_data_file": "model.pb.bin"
  • "hybrid_opt_token_backend": "npu"

这说明 model.pb.bin 是为 AMD Ryzen AI NPU 准备的外部数据文件,配合 hybrid(CPU + NPU 混合推理)加速方案使用,是本仓库"16K NPU 部署"的核心产物。

model.bin

model.bin 是另一份模型权重文件,通常作为备用或特定导出格式的权重存放,供不同部署流程按需加载。

二、配置文件:告诉推理引擎"怎么跑" ⚙️

config.json:模型架构 + 量化信息

config.json 是最基础的文件,包含:

  • 架构信息:Qwen3ForCausalLM,36 层 Transformer,隐藏层 2560,32 个注意力头、8 个 KV 头(GQA),词表 151936,最大位置 40960;
  • 量化配置(quantization_config):量化方法为quark,算法为 AWQ,权重uint4、分组大小 128、非对称量化(symmetric: false),激活为 BFP16。这正是模型体积大幅压缩、能在笔记本 NPU 上跑起来的关键。

genai_config.json:ONNX Runtime GenAI 入口

genai_config.json 供 ONNX Runtime GenAI 运行时读取,定义了:

  • 解码器输入输出:input_ids、attention_mask、past_key_values、logits等;
  • RyzenAI 提供程序参数(NPU 后端、KV Cache 绑定、混合优化最大序列 4096);
  • 默认采样参数:temperature: 0.6、top_k: 20、top_p: 0.95,最大生成长度 16384。

generation_config.json:Hugging Face 风格采样参数

generation_config.json 面向 Transformers 生态,同样记录了temperature: 0.6、top_k: 20、top_p: 0.95、bos/eos/pad token 等参数,方便在不使用 NPU 的环境下直接加载推理。

rai_config.json:不同 Ryzen AI 版本支持的提示词长度

rai_config.json 记录了各版本 Ryzen AI 支持的max_prompt_length(混合 OGA 场景下 prompt 走 CPU 分块处理):

Ryzen AI 版本最大 Prompt 长度
1.3.1 ~ 1.5.12048
1.6.0 ~ 1.7.14096

也就是说不同代次的 NPU 硬件/驱动,可稳定处理的提示词长度不同,运行时会自动适配。

三、分词器文件:文字 ⇄ Token 的翻译官 🔤

大模型实际处理的是数字(Token ID),分词器负责完成文字与 Token 的互相转换:

  • tokenizer.json:完整分词器(Hugging Face tokenizers 格式,含词表与 BPE 规则),是分词逻辑的总入口;
  • tokenizer_config.json:分词器行为配置(是否加 BOS、前后空格规则、特殊 Token 定义等);
  • vocab.json:词表本体,Token 与 ID 的映射;
  • merges.txt:BPE 合并规则,记录子词如何按频率合并成更大单元;
  • added_tokens.json:在基础词表上新增的 Token,如<|im_start|>、<|im_end|>、<|think|>、<|tool_calls|>等对话与推理相关标记;
  • special_tokens_map.json:特殊 Token 映射,定义了eos_token、pad_token及全部additional_special_tokens。

这几个文件配套使用,一般不需要手动修改。

四、对话模板与其他文件 📄

chat_template.jinja

chat_template.jinja 是 Jinja2 模板,负责把多轮对话消息拼装成模型能理解的提示词格式,包含 system/user/assistant 角色标记、<|think|>推理块拆分逻辑,以及工具调用(tool_calls)的 XML 格式约定。

dd_metastate_* 系列文件

仓库中大量形如dd_metastate_Llm_Token_Token_modellayers.0input_layernormMLADFRMSNORM_attention_mask_padded_256_.meta的文件(覆盖 256、512、1024、2048、3072、4096、16384 七种 padding 长度,每种含.meta/.super/.ctrlpkt/.state/.fconst后缀),是 NPU 推理的算子融合元数据:

  • 文件名中的MLADFRMSNORM表示 Multi-Head Latent Attention(GQA)+ RoPE + RMSNorm 的融合算子;
  • attention_mask_padded_xxx表示针对特定 padding 后序列长度预先编译的注意力掩码配置;
  • 多套长度档位让推理时能快速匹配最接近输入长度的预编译方案,减少 NPU 现场编译开销。

这些文件由工具链自动生成,属于运行时元数据,无需人工编辑。

cache/ 目录

cache/Token_modellayers.0input_layernormMLADFRMSNORM_meta.json 与 cache/txn_bins.zip 是构建/编译过程的缓存产物,用于加速重复构建,普通使用场景可以忽略。

README.md 与 LICENSE

  • README.md:仓库说明,包含来源模型、量化策略(AWQ / Group 128 / BFP16 激活 / uint4 权重)与快速上手指引;
  • LICENSE:模型修改部分采用 MIT 许可,基础模型遵循 Apache License 2.0(见 README 中的 Base Model License 章节),商用前建议完整阅读。

常见问题 ❓

Q:运行这个模型需要什么环境?需要搭载 AMD Ryzen AI 的硬件、对应版本的 Ryzen AI 运行时(1.8.0)以及 ONNX Runtime GenAI 相关库。具体安装步骤请参见 Ryzen AI 官方文档(README 中的 Quick Start 章节有入口)。

Q:为什么仓库里没有代码?这是一个"模型资源仓库"而非代码仓库——部署它的推理引擎、示例脚本在 AMD Ryzen AI 的配套项目与文档中,本仓库只负责提供模型权重、配置与分词器。

Q:16K 上下文是什么意思?指该模型在 NPU 部署后支持约 16384 个 Token 的上下文长度(见 genai_config.json 中max_length: 16384与 16384 档位的dd_metastate文件),可处理较长文档,同时保持端侧实时推理能力。

总结 🎯

你想了解…看这个文件
模型架构与量化细节config.json
NPU 推理如何启动genai_config.json
采样温度、top_p 等参数generation_config.json
各硬件支持的最大提示长度rai_config.json
词表与特殊 Tokentokenizer.json、special_tokens_map.json
对话消息如何格式化chat_template.jinja
许可与授权README.md、LICENSE

一句话总结:model.onnx / model.pb.bin 是"引擎",config.json 与 genai_config.json 是"说明书",分词器文件是"翻译官",dd_metastate 系列是"NPU 的预编译缓存"。理解了这四类文件的分工,你就能看懂整个 Qwen3-4B NPU 部署仓库的运转逻辑,也具备了排查加载失败等问题的基础。

【免费下载链接】Qwen3-4B_rai_1.8.0_npu_16K

项目地址:https://ai.gitcode.com/hf_mirrors/amd/Qwen3-4B_rai_1.8.0_npu_16K
点击查看免费下载
上一篇:如何快速实现ng-bootstrap日期选择器自定义适配器:NgbDateAdapter完整指南
下一篇:py-faster-rcnn内存优化终极指南:在有限GPU资源下高效训练VGG16模型

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进