Skip to content

大模型基础认知

第 1 篇 · 从零开始理解大模型,为 AI 测试打好认知基础

🎒 这篇怎么学

这是整个课程的第一篇,面向完全零基础的同学。我们会用大量的类比、图表和真实例子,帮你建立对大模型的直觉认知。你不需要懂数学、不需要会写代码,只需要跟着读下去。学完这篇,你就能理解:大模型是什么、怎么工作、为什么会出错、以及它和你做的测试有什么关系。

第1章:什么是大模型(LLM)

1.1 一个类比:超级厨师

想象一个餐厅里有一位超级厨师。这位厨师从小到大读过全世界所有的菜谱——中餐、西餐、日料、法餐、甜品、分子料理,统统都读过。当你走进餐厅说"我想吃一道辣一点的川菜",厨师就会根据他读过的所有菜谱,结合你的要求,现场"创作"一道菜出来。 大模型(LLM,Large Language Model)就是这样一位"超级厨师":

  • 读过的菜谱 = 互联网上数万亿字的文本数据(书籍、网页、论文、代码、对话……)
  • 你的点单 = 你给它的指令(Prompt)
  • 做出的菜 = 它生成的内容(回答、文章、代码、翻译……)

📖 关键理解

大模型并不是"搜索引擎"——它不是去数据库里找现成答案。它是根据学到的模式和概率,**一个字一个字地"生成"**回答。这就像厨师不是从冰箱里端出一盘现成的菜,而是现场创作的。这个区别非常重要,因为它直接解释了后面我们会讲到的"幻觉"问题。

1.2 大模型能做什么

大模型的能力远比"聊天"广泛得多。下面是几个核心能力领域:

能力例子测试中的应用
对话问答回答用户问题、客服机器人测试回答准确性、一致性
文本写作写邮件、写报告、写营销文案测试内容质量、格式合规
代码生成写代码、Debug、代码解释测试代码正确性、安全性
数据分析分析表格、总结文档、提取信息测试提取准确度、遗漏率
翻译多语言翻译、本地化测试翻译准确性、语境理解
多模态理解图片、生成图片、语音转文字测试跨模态理解、生成质量

1.3 主流大模型介绍

截至 2026 年 8 月,全球已经有上百个大模型在被广泛使用。下面是最主流的几个(以 2026 年最新主力版本为主,括号内为常见前代版本作历史参考),你在工作中大概率会碰到其中的一个或多个:

模型厂商核心特点开源/闭源
GPT-5.6 Sol / Terra / Luna (前代 GPT-5.5 → GPT-5.4)OpenAI(美国)2026 综合能力第一梯队,原生多模态,GPT-5.6 起按 Sol/Terra/Luna 三档切能力档,编码用 GPT-5-Codex闭源
Claude Opus 4.6 / Sonnet 4.6 (前代 Claude 3.5 Sonnet)Anthropic(美国)2026-03 发布,长文本 1M,Extended Thinking 1.0 推理强、安全性领先;Opus 4.7 灰度中闭源
Gemini 3 Pro / 3 Flash (前代 Gemini 1.5 Pro)Google(美国)2026-01 发布,原生多模态 + Deep Think 推理模式,上下文最高 2M;Gemini 3.x 灰度中闭源
豆包 2.0 / 2.5 Pro (前代 Doubao 1.6 Pro)字节跳动(中国)国内用户量最大的 AI 对话产品之一,深度接入抖音、飞书生态闭源
DeepSeek-V4 / R2 (前代 DeepSeek-V3.5/V3/R1)深度求索(中国)推理能力突出,性价比极高,R2 是国产开源推理标杆开源
Llama 4 系列 (前代 Llama 3.1)Meta(美国)全球最流行的开源模型系列,社区生态丰富,支持原生多模态开源
Qwen3.6 / Qwen3-Coder (前代 Qwen3-Max → Qwen2.5)阿里巴巴(中国)中文 + 代码能力突出,上下文 1M,开源版本活跃开源
GLM-4.6 / GLM-Reasoner智谱(中国)性价比突出,国内政企落地常见,长上下文 200K开源
Kimi K3 / K2-Reasoning (前代 Moonshot v1)月之暗面(中国)超长上下文(2M)能力领先,K2-Reasoning 推理能力第一梯队闭源

开源 vs 闭源对测试的影响

  • **闭源模型:**你只能通过 API 调用,无法看到模型内部结构。测试更偏"黑盒"——关注输入输出、行为一致性。
  • **开源模型:**你可以下载模型、自己部署、甚至修改。测试范围更广——还需要关注部署配置、推理性能、量化精度损失等。

第2章:Token——大模型的"文字单位"

2.1 Token 不是字,也不是词

在你和大模型交流时,大模型并不是按"字"或"词"来理解你的话的。它有自己的"文字切割方式",切出来的每一小块叫做一个 Token。你可以把 Token 理解成大模型眼中的"最小阅读单位"。 Token 的切法因模型而异,但有一个通用规律:

  • 英文里,一个常见单词通常是 1 个 Token(如 hello = 1 Token)
  • 较长或不常见的英文单词会被拆成多个 Token(如 unbelievable = 3 Token)
  • 中文里,一个汉字通常是 1~2 个 Token(如 = 1 Token,蝴蝶 可能 = 2~3 Token)
示例

Token 切分示例

原文Token 数量(约)说明
Hello world2 Tokens两个常见英文单词,各占 1 Token
我爱中国4~5 Tokens每个汉字约 1~1.5 Token
人工智能测试工程师6~8 Tokens中文比英文消耗更多 Token
AI Testing Engineer3 Tokens同样含义,英文更"省"

2.2 为什么中文比英文消耗更多 Token

这不是歧视中文,而是因为大模型的"词表"(Vocabulary)主要用英文语料训练出来的。英文的常见单词被完整收录在词表里,一个单词 = 一个 Token。但中文汉字数量庞大(常用字就有几千个),很多汉字需要用多个字节表示,所以同样的意思,中文版本消耗的 Token 数通常是英文的 1.5~2 倍。

⚠️ 这意味着什么

同样调用一次 API,中文提问消耗的 Token 更多 → 费用更高、能装进"上下文窗口"的内容更少。做中文场景的 AI 测试时,Token 消耗是一个必须关注的指标。

2.3 Token 和费用的关系

大模型 API 几乎都按 Token 数量收费。通常分为"输入 Token"(你发给模型的内容)和"输出 Token"(模型生成的内容),两者价格不同:

模型输入价格(USD/1M Token)输出价格(USD/1M Token)上下文窗口备注
GPT-5$5$15400K2025-08 GA / 2026 主力
GPT-5-Codex$3$12400K编码专用
GPT-5.1$7$211M2026-02
o3-pro$20$80200K推理
o4$15$60200K推理新一代
Claude Opus 4.6$15$75500K2026-03
Claude Sonnet 4.6$3$15500K
Claude Haiku 4$0.5$2.5200K
Gemini 3 Pro$2$82M2026-01
Gemini 3 Flash$0.15$0.61M
DeepSeek-V3.5$0.27$1.10128K
DeepSeek-R2$0.55$2.19128K推理
Qwen3-Max$2.4$9.61M
Qwen3-Coder$2$8256K
GLM-4.6$0.6$2.2200K
Doubao 1.6 Pro$0.4$1.2256K
Kimi K2$0.6$2.52M超长上下文
— 历史参考(已退役主线):GPT-4o $2.5/$10、Claude 3.5 Sonnet $3/$15、Gemini 1.5 Pro $1.25/$5、DeepSeek-V2 ¥1/¥2 —

📖 算一笔账

假设你用 GPT-5 测试一个客服场景,每轮对话平均消耗 500 输入 Token + 800 输出 Token。如果你跑 1000 条测试用例,总消耗 = 50 万输入 + 80 万输出,费用约 $2.5 + $12 = $14.5。听起来不多,但如果你需要跑 5 轮回归、10 个场景,费用就乘以 50,变成 $725+。如果换成性价比组合(Gemini 3 Flash 跑常规、GPT-5 只跑关键 case),费用可压到 1/10 以内。这就是为什么 Token 管理和模型选型在 AI 测试中非常重要。

2.4 Token 和上下文窗口

大模型有一个"记忆容量"上限,叫做 上下文窗口(Context Window)。你可以把它想象成一间会议室的座位:

🪑 会议室座位类比

  • 上下文窗口 = 会议室总共有 128,000 个座位
  • 你的提问(输入 Token)占掉一部分座位
  • 模型的回答(输出 Token)再占掉一部分座位
  • 之前的对话历史也会占座位
  • 当座位坐满时,最早的对话内容会被"挤出"会议室——模型就"忘记"了那些内容

这就解释了一个常见现象:你和 ChatGPT 聊了很久之后,它突然"忘记"了你之前说过的话。不是它故意的,而是你们的对话 Token 总量超过了上下文窗口,早期的内容被丢弃了。

第3章:Prompt——和大模型对话的"指令"

3.1 三种角色

和大模型对话时,消息被分为三种"角色"。理解这三种角色,是写好 Prompt 的前提:

角色英文名作用类比
系统提示System Prompt定义模型的身份、行为规则、限制条件给厨师的"员工手册"——规定他是川菜厨师、不能用花生、必须标注过敏原
用户消息User Prompt用户的具体提问或指令顾客的点单——"来一份宫保鸡丁,微辣"
助手回复Assistant模型的回答厨师做出来的菜
示例

一个完整的 API 调用消息结构:

json
[
  {"role": "system",    "content": "你是一个专业的法律顾问,只回答中国法律相关问题,拒绝回答其他领域"},
  {"role": "user",      "content": "员工连续加班超过36小时,公司要承担什么法律责任?"},
  {"role": "assistant", "content": "根据《劳动法》第41条...(模型生成的回答)"}
]

3.2 好 Prompt vs 坏 Prompt

Prompt 的质量直接决定了大模型输出的质量。同一个任务,Prompt 写法不同,结果可能天差地别。这不是理论,而是你在测试中每天都会遇到的现实:

❌ 坏 Prompt

  • 输入:"帮我写个总结"
  • **结果:**模型不知道要总结什么,输出了一段模糊的通用文本,没有任何有用信息。

✅ 好 Prompt

  • 输入:"请用 3 个要点总结以下会议纪要的核心决策,每个要点不超过 30 字:[会议纪要内容]"
  • **结果:**模型输出了 3 条清晰、精炼的决策要点,直接可用。

❌ 坏 Prompt

  • 输入:"这个数据对不对?"
  • **结果:**模型开始瞎猜,给出了一堆模棱两可的分析,没有结论。

✅ 好 Prompt

  • 输入:"以下是用户订单数据,请检查金额列是否存在负数或零值,存在则列出行号和具体值:[数据表]"
  • **结果:**模型精准列出了问题行,格式清晰。

3.3 Few-shot:给模型"看样学样"

有时候光用文字描述任务还不够,最有效的方式是直接给模型看几个例子——这叫 Few-shot Prompting。就像你培训新员工时,与其说一堆规则,不如直接给他看三个范例。

示例

Few-shot 示例:情感分类任务

请判断以下评论的情感倾向(正面/负面/中性)。

示例1:
评论:"这个产品太好用了,强烈推荐!"
情感:正面

示例2:
评论:"物流太慢了,等了一周才到。"
情感:负面

示例3:
评论:"包装还行,产品一般般。"
情感:中性

现在请判断:
评论:"价格虽然贵了点,但质量确实没话说。"
情感:

通过提供 3 个示例,模型能精确理解你要的输出格式和判断标准。如果不给示例(Zero-shot),模型可能输出一大段分析而不是简洁的分类结果。

3.4 为什么 Prompt 改一个词结果就完全不同

大模型生成内容的方式是"预测下一个最可能的 Token"。Prompt 里每一个词都会影响模型对后续内容的概率判断。一个词的变化,可能导致模型走上完全不同的"概率路径"。

示例

真实案例:

Prompt模型输出倾向
"请 简要 描述量子计算"输出 2~3 句话的概述
"请 详细 描述量子计算"输出一篇 500+ 字的长文
"请 用小学生能懂的方式 描述量子计算"输出充满类比和简单词汇的解释
"请用 学术论文 的风格描述量子计算"输出充满专业术语和引用格式的文本
仅仅改了几个修饰词,输出的长度、风格、深度完全不同。这就是为什么 AI 测试中 Prompt 的稳定性和鲁棒性是一个重要的测试维度。

对测试的启示

在测试 AI 产品时,你需要验证:用户换一种说法问同样的问题,系统还能正确回答吗?用户加了一个无关的词,系统会不会跑偏?这就是 Prompt 鲁棒性测试——后面的课程会详细展开。

第4章:幻觉——大模型最大的"bug"

4.1 什么是幻觉

如果大模型有一个最让人头疼的问题,那一定是幻觉(Hallucination)。简单说就是:模型一本正经地胡说八道。 用学生考试来类比最好理解:一个学生遇到不会的题,不写"不知道",而是编了一个看起来很像正确答案的答案交上去。关键是他自己不知道自己在编——他觉得自己写的就是对的。大模型的幻觉也是如此:它不是故意骗你,而是它的"生成机制"决定了它必须输出点什么,即使它其实不知道答案。

为什么幻觉比普通 bug 更危险

普通软件的 bug 通常会报错或崩溃——用户知道出问题了。但大模型的幻觉看起来完全正常:语法通顺、逻辑自洽、格式漂亮——唯一的问题是内容是错的。这对测试工作的挑战是巨大的。

4.2 三种幻觉类型

类型定义类比危险等级
事实性幻觉编造不存在的事实、数据、引用学生在论文里编了一个不存在的参考文献极高
忠实性幻觉偏离用户给出的上下文或文档内容让你总结文章A的内容,结果混入了文章B的观点
推理性幻觉推理过程出错,得出错误结论数学题每一步都写了,但第三步算错了

4.3 每种类型的真实例子

示例

事实性幻觉: 问:"《红楼梦》的作者生于哪一年?" 模型回答:"曹雪芹生于 1724 年 6 月 15 日,这在《清史稿》中有明确记载。" 事实:曹雪芹的确切生年至今学界仍有争议(约 1715~1724 年),而且《清史稿》中并无此记载。模型编造了一个精确日期和来源,让人以为这是确定的事实。

示例

忠实性幻觉: 你给模型一份产品说明书,让它回答:"这个产品支持哪些操作系统?"说明书里只写了"支持 Windows 和 macOS"。 模型回答:"该产品支持 Windows、macOS 和 Linux 系统。" 模型凭自己的"常识"添加了 Linux,但这不是文档里的内容。在企业级应用中,这种"善意的补充"可能造成严重误导。

示例

推理性幻觉: 问:"一个水池有两个进水管,A管每小时灌3吨,B管每小时灌5吨。同时打开两个管,4小时后水池里有多少水?" 模型回答:"A管4小时灌水 3×4=12 吨,B管4小时灌水 5×4=25 吨,总共 12+25=37 吨。" 推理过程的第二步 5×4 算成了 25(应该是 20),导致最终答案错误。模型的推理格式很规范,但计算出错了。

4.4 为什么幻觉无法完全消除

很多人会问:既然幻觉这么严重,为什么不修好它?答案是:幻觉是大模型工作原理的"副产品",不是一个可以打补丁修复的 bug。

  • **生成机制决定了它必须输出:**大模型是"预测下一个 Token"的机器,它没有"说不知道"的天然能力——必须经过专门训练才能学会拒绝。
  • **训练数据里本身就有错误:**互联网上的信息不全是对的,模型学到了错误的"知识"。
  • **模型不具备真正的"理解":**它学到的是文本模式和概率关系,不是概念和因果。它知道"北京是中国的首都",但它不"理解"什么是首都。

⚠️ 对测试的直接影响

既然幻觉无法完全消除,那么 AI 测试的核心任务之一就不是"确保零幻觉",而是:衡量幻觉的频率、类型和严重程度,并确保产品在幻觉发生时有合理的兜底机制(如标注信息来源、提示"此回答仅供参考"等)。

第5章:Transformer——大模型的"大脑结构"(简明版)

5.1 不需要懂数学,用邮局来理解

如果让你理解大模型的核心架构 Transformer,最好的方式不是看公式,而是想象一个"超级智能邮局":

📮 邮局分拣类比

想象你经营一个邮局,每天收到大量信件。每封信上都写着收件人地址、寄件人信息和正文内容。你的工作是理解每封信的内容,然后决定该怎么回复。

  • **拆信(Token化):**把收到的信拆成一个个小片段
  • **贴标签(编码):**给每个片段贴上"含义标签"——这个词是名词还是动词?是正面还是负面?和前面哪个词关系最近?
  • **注意力分拣(Attention):**这是最关键的一步——邮局的"超级分拣员"会同时看所有的片段,判断哪些片段之间有重要关联。比如"小明昨天去了北京,觉得很开心"——分拣员知道"他"指的是"小明",而不是"北京"。
  • **写回信(生成):**基于对信件的理解,一个字一个字地写出回复

5.2 核心流程

大模型处理你的每一次提问,本质上经历以下流程:

输入文本 → Token 化 切成小片段 → 编码器理解含义 注意力机制找关联 → 解码器逐个生成 预测下一个 Token → 输出文本

5.3 为什么是"自回归"的

你有没有注意到,ChatGPT 回答问题时是一个字一个字"蹦"出来的,而不是一下子给你完整答案?这不是为了做动画效果,而是因为大模型的生成方式就是 自回归(Autoregressive)

  1. 模型看到你的输入,预测第 1 个输出 Token
  2. 然后把第 1 个 Token 加入输入,预测第 2 个 Token
  3. 然后把第 1、2 个 Token 都加入输入,预测第 3 个 Token
  4. 如此循环,直到输出结束标记或达到长度上限

输入:"中国的首都是" → 预测:"北" → 预测:"京" → 预测:"。" → 预测:[结束]

这意味着每一个 Token 的生成都依赖前面所有 Token。如果第一个词生成错了,后面可能越跑越偏——就像多米诺骨牌一样。

5.4 为什么会"编"——概率预测,不是查数据库

很多人以为大模型"知道"答案,像搜索引擎一样从数据库里查出来。但实际上,大模型是一个概率预测机器:它根据前面的所有文本,计算"下一个 Token 最可能是什么",然后挑一个概率高的输出。

搜索引擎:有一个索引数据库,用户搜什么就去库里找匹配结果。找不到就说"没有结果"。 **特点:**不会编造,但可能找不到。 大模型:没有数据库,只有从训练数据中学到的"概率模式"。给定前文,预测最可能的后续文本。 **特点:**永远会给出回答,但可能编造。

这就是幻觉的根本原因

因为模型的工作方式是"预测最可能的下一个词",而不是"查数据库确认事实"。所以当模型不确定答案时,它不会留空,而是会生成一个概率上最合理但事实上可能是错的内容。

第6章:训练→微调→对齐——模型是怎么"学会"的

6.1 三个阶段概览

一个大模型从"什么都不会"到"能和人正常对话",通常要经历三个阶段。每个阶段解决不同的问题,也会引入不同类型的风险:

阶段一:预训练 读互联网所有文本 → 阶段二:微调(SFT) 学会做特定任务 → 阶段三:对齐(RLHF) 学会安全和有用

6.2 阶段一:预训练——"读遍天下书"

预训练就是让模型读海量文本。多大的量呢?GPT-5 / Gemini 3 Pro 这一代模型的训练数据估计在 30~50 万亿 Token 量级(GPT-4 当年约为 13 万亿)——相当于把整个公开互联网的文本读了好几遍,再加上大量合成数据和代码语料。 预训练阶段的核心任务很简单:给定前面的文本,预测下一个 Token 是什么。通过反复做这个任务数万亿次,模型学会了语言的语法、常识、逻辑模式、甚至部分推理能力。 但预训练完的模型还不好用——它只会"续写文本",不会"回答问题"。你问它"北京的天气怎么样",它可能会续写成一篇天气预报格式的文章,而不是简洁回答。

6.3 阶段二:微调(SFT)——"学会做事"

微调(Supervised Fine-Tuning)就是用人工标注的"问题-回答"数据,教模型学会正确地完成特定任务。这就像一个读了无数书的学者,需要经过岗前培训才能成为一个合格的客服。

示例

微调数据的样子:

json
{
  "instruction": "请将以下英文翻译成中文",
  "input": "The weather is beautiful today.",
  "output": "今天天气很好。"
}

成千上万条这样的标注数据,让模型学会按照指令格式来做事。

6.4 阶段三:对齐(RLHF)——"学会做人"

对齐(Alignment)是最后一步,目的是让模型的行为符合人类的期望和价值观。最常用的方法叫 RLHF(Reinforcement Learning from Human Feedback),即基于人类反馈的强化学习。 简单说就是:让人类评判员给模型的多个回答打分,模型从中学习"什么样的回答更受欢迎"。通过这个阶段,模型学会了:

  • 拒绝回答有害内容(如教人做炸弹)
  • 承认自己不确定的事情
  • 更礼貌、更有帮助地回答
  • 避免输出歧视性、偏见性内容

6.5 测试为什么要关心这三个阶段

阶段可能引入的问题测试关注点
预训练训练数据里的错误知识、过时信息、偏见事实性幻觉、知识时效性、文化偏见
微调标注数据质量不高、任务理解偏差指令遵循度、格式一致性、边缘 case 处理
对齐过度安全(拒绝回答合理问题)、对齐不足(仍可绕过安全限制)安全边界测试、越狱攻击测试、过度拒绝测试

每个阶段都有不同类型的 bug

预训练阶段的 bug 通常是"知识错误";微调阶段的 bug 通常是"行为错误";对齐阶段的 bug 通常是"安全漏洞"或"过度保守"。理解这三个阶段,你才能在测试时有针对性地设计测试场景。

6.6 Temperature 和 Top-p:控制"创造力"的旋钮

大模型在生成每一个 Token 时,实际上是从一组候选词中按概率选一个。TemperatureTop-p 就是控制"怎么选"的两个参数。你可以把它理解成抛骰子的方式

🎲 抛骰子类比

  • **Temperature = 0:**骰子被固定了,永远落在概率最高的那一面。输出最确定、最保守。
  • **Temperature = 0.7:**骰子正常抛,高概率的面更容易朝上,但偶尔也会出现低概率的面。输出比较自然、有变化。
  • **Temperature = 1.5:**骰子被施了魔法,低概率的面也经常朝上。输出非常"有创意",但也更容易出错。
参数效果适用场景
Temperature0完全确定性输出,每次相同输入得到相同输出数据提取、分类、事实问答
0.7平衡创造力和准确性一般对话、内容生成
1.0~1.5高创造力,输出多样但可能不靠谱创意写作、头脑风暴
Top-p0.1只从概率最高的 10% 候选词中选严格场景,减少随机性
0.9从概率最高的 90% 候选词中选一般使用
1.0从所有候选词中选(不裁剪)最大多样性

⚠️ 对测试的影响

当 Temperature > 0 时,同样的输入每次可能得到不同的输出。这意味着 AI 测试不能像传统测试那样只跑一次就下结论。你可能需要同一个用例跑 10 次甚至 100 次,统计通过率和输出分布。这是 AI 测试和传统测试的根本区别之一。

第7章:大模型测试和传统软件测试的区别

7.1 八项核心差异

如果你之前做的是传统软件测试(Web 测试、App 测试、接口测试),那你需要在心态上做一个重大转变。因为大模型测试的"游戏规则"和传统测试有很多根本性的不同:

#对比维度传统软件测试大模型测试
1确定性同样的输入 → 同样的输出(确定性)同样的输入 → 每次输出可能不同(概率性)
2输入输出输入格式固定(表单、JSON),输出格式固定输入是自然语言(无限可能),输出是自由文本
3对错判定对就是对,错就是错(二元判定)好/差/还行/基本可以(程度判定)
4回归稳定性代码不改,测试结果稳定模型不改,测试结果也可能变化
5测试用例可以枚举所有分支输入空间无穷大,只能抽样
6Bug 复现步骤清晰,100% 可复现有时复现不了(概率性 bug)
7评判标准和需求文档对比需要人类评估或另一个 AI 评估
8测试成本主要是人力和时间还需要考虑 API 调用费用(Token 费)

7.2 为什么不能用传统的 assert True/False

在传统测试里,你会写这样的断言:

assert response.status_code == 200
assert response.json()["order_id"] is not None
assert response.json()["amount"] == 199.00

这些断言是"精确的"——要么完全匹配,要么不匹配。但大模型的输出是自然语言,你没法用精确匹配来判断。

示例

假设你让模型总结一段文字,以下三个输出都是"正确的":

  • "该文章主要讨论了全球气候变化对农业的影响。"
  • "文章分析了气候变暖如何影响全球粮食产量。"
  • "本文聚焦于气候变化与农业生产之间的关系。" 这三个答案表述完全不同,但含义都是对的。你无法用 assert output == "标准答案" 来判断。

7.3 从"对错思维"到"评分思维"

AI 测试的核心范式转变是:从二元判定(对/错)转向连续评分(0~5 分或百分制)

传统思维AI 测试思维
通过 / 不通过5 分 / 4 分 / 3 分 / 2 分 / 1 分
和标准答案完全匹配从多个维度打分:准确性、完整性、相关性、安全性……
一次测试就能定论多次测试取统计结果(平均分、通过率、方差……)
人工肉眼就能判断可能需要 AI 帮忙评判(LLM-as-Judge)

LLM-as-Judge:用 AI 评判 AI

当测试量级上去后(成千上万条用例),人工逐条评判不现实。一种常见做法是用另一个大模型来充当"评委"——这就是 LLM-as-Judge。当然,"评委模型"自身的可靠性也需要验证,这是后面课程会深入讲解的内容。

7.4 传统测试流程 vs AI 测试流程

传统测试流程:传统测试流程 需求评审 → 编写用例 → 执行测试 → 判定结果(通过/失败) → 提交 Bug AI 测试流程:AI 测试流程 设计评测维度和评分标准 → 构建测试数据集 → 批量调用模型获取输出 → 多维度评分(人工 + AI 评委) → 统计分析(通过率/平均分/方差) → 输出评测报告,驱动优化

📖 小结

传统测试的终点是"Bug 修完了",AI 测试的终点是"评分达标了"。传统测试是一个精确的二元判定过程,AI 测试是一个统计学驱动的质量评估过程。理解这个根本区别,是进入 AI 测试领域的第一步。

第8章:课堂练习与答案

使用方式

建议先独立完成下面 3 组练习,再对照后面的参考答案。答案部分刻意保留了"要点式讲解",方便学员先自己组织语言,再检查有没有漏掉关键点。

课堂练习

练习一:概念理解 请用自己的话回答以下问题(不要复制粘贴课文):

  1. 大模型和搜索引擎的本质区别是什么?为什么大模型会"编造"答案而搜索引擎不会?
  2. 请解释 Token 和"字"的区别。为什么同一句话用中文比英文消耗更多 Token?
  3. Temperature 参数设置为 0 和设置为 1.0 时,模型的行为有什么不同?在做"客服问答"和"创意写作"这两个场景下,你分别推荐用什么值?为什么?

课堂练习

练习二:幻觉识别 以下三段"模型输出"中,分别包含了什么类型的幻觉?请指出问题并说明属于哪种类型(事实性/忠实性/推理性):

  1. 问:"请根据以下产品描述回答:该手机电池容量多少?"文档写的是 4500mAh。模型回答:"该手机配备 5000mAh 大电池,支持 120W 快充。"
  2. 问:"李白是哪个朝代的诗人?"模型回答:"李白是唐朝著名诗人,生于公元 701 年 3 月 28 日,卒于公元 762 年 12 月 13 日。"
  3. 问:"小明有 15 个苹果,给了小红 7 个,又买了 3 个,现在有多少?"模型回答:"15 - 7 = 8,8 + 3 = 12。小明现在有 12 个苹果。"(正确答案是 11)

课堂练习

练习三:思维转变 假设你负责测试一个 AI 客服产品,用户问"你们的退货政策是什么?",模型需要根据知识库中的退货政策文档来回答。请思考:

  1. 你会设计哪些评测维度?(至少 3 个)
  2. 为什么不能只跑一次测试就下结论?
  3. 如果你要跑 500 条测试用例,人工逐条评判太慢了,你会怎么解决?

8.1 参考答案要点

练习一:概念理解

  1. **大模型 vs 搜索引擎:**搜索引擎的核心是"检索已有信息",本质上是在索引库里找结果;找不到时可以直接返回"没有结果"。大模型的核心是"根据概率生成下一个 Token",本质上是在续写最可能的内容,所以当它知识不足或上下文不够时,也可能生成一个看起来合理、但实际上不正确的答案。
  2. **Token vs 字:**Token 是模型内部使用的最小处理单位,不等于汉字,也不等于自然语言里的"词"。同一句话中文通常比英文更耗 Token,是因为很多模型的词表对英文更友好,英文常见词更容易整词编码,而中文往往会被切成更细的片段。
  3. Temperature 的影响:Temperature=0 时,模型更倾向选择概率最高的词,输出更稳定、保守,适合客服问答、信息抽取、分类等场景;Temperature=1.0 时,模型更容易采样到低概率词,输出更发散、更有创造性,但也更容易波动和出错,适合创意写作、头脑风暴。客服问答通常建议 0~0.3;创意写作可用 0.8~1.0,核心原因是前者追求稳定和一致,后者追求多样性和表达空间。

练习二:幻觉识别

  1. 第 1 题属于忠实性幻觉。题目已经给出了明确文档,文档里只有 4500mAh,模型却回答成 5000mAh,还额外补了 120W 快充。问题不只是"答错了",更关键是它偏离了用户提供的上下文,把文档里没有的信息当成事实说了出来。
  2. **第 2 题属于事实性幻觉。**李白是唐代诗人这一点没问题,但模型进一步给出了精确到月日的生卒日期。对于这类历史人物,过于精确又缺乏可靠来源的信息本身就是风险信号。模型把不确定的信息包装成确定事实,这正是事实性幻觉的典型表现。
  3. **第 3 题属于推理性幻觉。**这道题的正确计算应为 15 - 7 + 3 = 11。模型虽然写出了看似完整的步骤,但最终计算结果错了,属于推理链条中间或结果出现错误,而不是上下文偏离或事实编造。

练习三:思维转变

  1. **可设计的评测维度:**至少可以包括准确性(退货规则有没有答对)、忠实性(是否严格依据知识库,不乱补充)、完整性(是否漏掉时效、条件、例外项)、相关性(有没有答非所问)、安全性/合规性(是否给出违规承诺)、稳定性(同问多次回答是否波动过大)。如果产品支持引用来源,还可以加"引用是否正确"这个维度。
  2. **不能只跑一次的原因:**AI 输出具有概率性,同一个问题多次运行可能不一样;如果背后还有 RAG 检索链路,召回结果、上下文拼接和解码过程都可能带来波动。只跑一次只能看到某一次表现,看不到整体通过率、平均质量和失败分布。
  3. **500 条用例的处理方式:**比较成熟的做法是先建立 Golden Set 和明确评分标准,再批量调用模型跑全量测试;随后用 LLM-as-Judge + 人工抽样复核 的方式提效。也就是说,先让模型评委按统一 rubric 给分,再抽取高风险、低分和边界样本做人工校准,这样既能提速,也能控制评判偏差。