每个模型仓库首页那份长长的说明,叫模型卡(Model Card),就是仓库里的 README.md。
它是这个模型的说明书:多大、什么结构、怎么用、推荐什么参数、在哪些测试上得了多少分。
很多人只看一眼标题和分数就开始下载,结果跑起来才发现:默认会先输出一大段思考,上下文开得太大显存爆了,采样参数不对导致回答车轱辘话来回说。
这些问题,模型卡里其实都写了。
这一节我们拿课程助教的基座 Qwen3.5-0.8B 的模型卡,从头到尾读一遍,再写一段程序,不下载权重就核对模型卡上的说法。
学完你能做到:拿到任何一个模型,十分钟内用十个问题把它摸清楚。
一、先看最顶上的元数据
打开 Hugging Face 上的 Qwen/Qwen3.5-0.8B,网页右侧那些标签,来自 README.md 开头的一段 YAML:
---
library_name: transformers
license: apache-2.0
license_link: https://huggingface.co/Qwen/Qwen3.5-0.8B/blob/main/LICENSE
pipeline_tag: image-text-to-text
base_model:
- Qwen/Qwen3.5-0.8B-Base
---YAML 是一种写配置的格式,每行一个"名字: 值",以短横线开头的行是列表里的一项。这几个字段的意思:
| 字段 | 意思 | 对我们的意义 |
|---|---|---|
library_name |
用哪个库加载 | Hugging Face Transformers 格式,后面微调直接能用 |
license |
许可证 | Apache 2.0,可商用、修改和再分发 |
pipeline_tag |
任务类型 | "图文生成文本",说明它能看图,不只是纯文本模型 |
base_model |
从哪个模型来 | 它是在 Qwen3.5-0.8B-Base 上做后训练得到的 |
base_model 这一项很有用。Hugging Face 会按它画出一棵"模型家谱":往上能找到基座,往下能看到别人在它基础上微调、量化出来的版本。
后面做出课程助教后,我们也会在它的模型卡里写上这一项。
二、按顺序读正文
Qwen3.5-0.8B 的模型卡分成几大块,重要程度很不一样:
| 部分 | 讲什么 | 怎么读 |
|---|---|---|
| Highlights | 这一代的亮点 | 扫一眼,了解卖点 |
| Model Overview | 模型结构参数 | 逐行读,最重要 |
| Benchmark Results | 评测分数 | 看和谁比、比什么 |
| Quickstart | 怎么部署、怎么调用 | 重点找"默认行为"的说明 |
| Best Practices | 推荐参数 | 抄下来,后面要用 |

1. Model Overview:结构参数
这一部分的原文是一串列表,把关键几行翻译过来:
| 原文 | 意思 |
|---|---|
| Type: Causal Language Model with Vision Encoder | 生成式语言模型,带一个视觉编码器 |
| Number of Parameters: 0.8B | 语言模型部分约 8 亿参数 |
| Number of Layers: 24 | 24 层 |
| Hidden Layout: 6 × (3 × (Gated DeltaNet → FFN) → 1 × (Gated Attention → FFN)) | 每 4 层里,3 层用线性注意力,1 层用完整注意力,重复 6 次 |
| Gated Attention: 8 for Q and 2 for KV, Head Dimension 256 | 完整注意力层有 8 个查询头、2 个 KV 头,每个头 256 维 |
| Token Embedding: 248320 (Padded) | 词表约 24.8 万 |
| LM Output: 248320 (Tied to token embedding) | 输出层和词嵌入共用同一份权重 |
| Context Length: 262,144 natively | 原生支持约 26 万 token 的上下文 |
"Hidden Layout"那一行说明 Qwen3.5 是混合结构:24 层里只有 6 层是会随上下文变长而占用更多 KV Cache 的完整注意力层。
另外 18 层的线性注意力只保留固定大小的状态。
KV Cache 是模型生成时存下来的"笔记":前文每个 token 算出的 Key 和 Value 两组数存起来,往后写新 token 时直接拿来用,不用重算。头、KV Cache、线性注意力这几个词,下一章拆模型时都会细讲,这里先会算它占多大:
每个 token:2(K 和 V 各一份)× 6 层 × 2 个 KV 头 × 256 维 × 2 字节(16 位)= 12288 字节,约 12 KB
32K 上下文:12288 字节 × 32768 ≈ 4.0 亿字节,约 0.4 GB作为对照,Qwen3-8B 的 36 层全是完整注意力,每层 8 个 KV 头、每个头 128 维:每个 token 是 2 × 36 × 8 × 128 × 2 = 147456 字节,32K 上下文约 4.8 GB,是 0.8B 的 12 倍。
2. Quickstart:默认不思考
Quickstart 里有一句要特别留意:Qwen3.5-0.8B 默认工作在不思考模式,直接给出回答。
这一点和同系列的 4B、9B 正好相反。它们默认是思考模式,会先生成 <think> 和 </think> 包起来的思考内容,再给出最终回答。
再往下翻,还有一条:Qwen3.5 不再支持上一代 Qwen3 那种在提问里写 /think、/nothink 来切换的方式。
要打开或关掉思考,得在调用时传参数 enable_thinking。
通过 OpenAI 兼容接口调用 vLLM 这类服务时,是在请求里加上 chat_template_kwargs: {"enable_thinking": false},改成 true 就是打开。