它不是在读字,是在读一块块碎片
四关讲的是同一条路:文字先被切成 token 才进得了模型;它看到的全部东西叫 context,装不下就忘;让它干活靠 prompt,system 定人设、user 提需求;它没读过的资料,用 RAG 现喂。这张图不是课件原图,是按这条路自己画的。
四关,各留一句结论
实验是在 harness 里做的,这里只放结论同一个任务,两版提示词
A 是随手写的,B 是把要求说全的Prompt A · 直白版 很多人习惯这么写
帮我写一篇公众号推文,关于网络安全竞赛宣讲会,面向大学生,简短一点。
实际输出:三百多字,通篇「提升安全意识」,没有奖项,没有报名方式,最后还得自己重写一遍。
Prompt B · 结构化版 角色+任务+约束+格式
角色:高校学院宣传干事。任务:撰写公众号短推文正文,120–150 字。主题:网络安全竞赛线下宣讲会。受众:本科大一至大三。要求:沉稳有青春感、不要空话;突出红蓝对抗实战、国家级奖项、现场答疑;末尾一句话引导扫码报名;不要标题、不要表情符号。
实际输出:一百五十字上下,三段推进,三个重点都在,末尾一句扫码,基本能直接发。
11 个词,一个一个拆
重点看「易错点」,那是最容易搞混的地方。按关卡筛,可以对着地图看它在链路里的位置。
拆字:这句话是多少 token简化版分词器,常见词整块,其余按字切
真实分词器(BPE / SentencePiece)跟这里不完全一样:生僻字和 emoji 常被拆成几个字节碎片,这就是一个 emoji 可能算好几个 token 的原因。
只按资料说话的查询助手
人设写在 System Prompt 里,资料内嵌在网页里,分词、检索、上下文记账全在浏览器本地跑,不联网。它答完会告诉你用的是哪几篇。
大模型笔记助手
做完之后,剩下这些
几段记录:怎么来的、为什么长这样、哪里还没搞定。
这一页是怎么来的
作业要交一个小助手。做成能双击打开的网页:11 个词,加一个只查这 16 篇资料的助手。
为什么挑了「查资料」
问它「我们班今天留了什么作业」,它答得一本正经,一句真的都没有。把写着作业的 txt 丢过去再问,它立刻老实。这一前一后,比任何定义都更说明 RAG 是干什么的。
喂进去的 16 篇
11 篇对应 11 个词,另外 5 篇是实践:RAG 的六步流程、幻觉、和模型沟通的清单、省 token、11 词速查。全是我按课件重写的中文段落,直接写在 KB 里,没有外部文件,也不联网。
三个坑
- 第一版把整篇资料塞进 prompt,回答反而更飘。资料不是越多越好,检索没做对,塞进去的全是噪音。
- 「不要编造」写在提问里没用,写进 System Prompt 才稳。
- 窗口设成 4096 才看得见它丢消息;设大了什么都看不出来。
它不是真的大模型
回答是本地「检索 + 抽句子」,不是模型生成。好处是断网能用、不瞎编;坏处是句子有点硬。要接真模型,把 buildAnswer() 换成一次 API 调用,prompt 不用改。
换成别的主题
改三处:KB、PERSONA、标题。换成湘菜谱,人设就写「你是湘菜老师傅,只答菜谱里有的菜,说清做法和火候」。
杨皓文 / 202605486808 / 作业一《读懂它,和它好好说话》