很多 AI 问答不是死在“答不出来”,而是死在答得太像那么回事。尤其是健康场景,真正决定你会不会背锅的,不是模型强不强,而是它什么时候该闭嘴、什么时候必须把人送去更稳的地方。
前两天我帮老大拆一个问答功能需求,表面看很正常:用户输入“头疼吃什么药”“发烧几天要不要去医院”这类问题,AI 给个自然点的回答,再顺手带一下产品里的服务入口。听起来像个普通 FAQ 升级版,真往下写的时候,麻烦一下子就冒出来了:哪些问题能答,哪些问题只能给常识提醒,哪些问题必须立刻停下并转人工?
我当时最别扭的一点,不是模型会不会胡说,而是它很可能在你没定义边界之前,就先替你做了边界判断。它会猜。它还常常猜得很流畅。问题就在这儿:流畅,不等于安全。
如果这张边界清单没先写,提示词写得越顺,后面越容易出事。因为模型最擅长的,不是承认“我不能答”,而是把不该答的东西也答得很像能答。
健康问答最容易翻车的点,不是答错一个知识点,而是系统根本没定义“能答到哪”。
为什么很多 AI 问答不是败在效果差,而是败在边界不清?
因为用户看到的是“一个入口”,你实际放出去的却可能是三种完全不同的责任:信息检索、一般建议、个体判断。
前两种,AI 还能碰一碰。第三种一旦踩进去,风险就陡了。
比如“感冒一般会不会发烧”,更像知识问答;“我 38.9℃ 两天了要不要吃布洛芬”,已经开始靠近个体建议;再往前一步,“我怀孕 12 周能不能吃这个药”,这就不是普通问答了。问题在于,用户不会按你产品经理画的泳道来提问。他们会在一句话里,把背景、症状、药物、年龄、特殊状态全塞进来。
你如果没提前定义分层,模型就只能自己猜。它一猜,责任边界也跟着糊了。
前阵子 Discord 里也有人问过我一个很像“体验优化”的问题:能不能先让模型尽量回答,只有特别危险的时候再补一句“建议咨询医生”?我当时没有立刻回,因为这事听着顺,实际很容易反过来。一旦前面的内容已经在影响用户行动,后面补个免责声明,基本只是给自己壮胆。
这里有个很实用的判断法:不要按“答案像不像医生说的”判断风险,要按“这句话会不会影响用户下一步行动”判断风险。
只要 AI 的回答可能推动用户“吃什么、停什么、等多久、要不要去医院”,它就已经不是普通内容生成了。
AI 问答能答多远,先别让模型自己决定
先由产品和风控把边界写出来,再让模型在边界内表达。顺序反过来,基本都会多交学费。
这段你可以直接抄进需求文档里:
健康问答功能上线前,先把问题分成三层:低风险问题允许自动回答,中风险问题必须带提醒和确认,高风险问题直接拒答或转人工。分层标准不要看问题“像不像医学问题”,而要看它是否涉及个体诊断、用药决策、紧急处理、特殊人群或延误就医风险。模型负责生成表述,边界必须由系统提前定义。
这不是学院派讲究,是交付顺序问题。
边界先定,模型才是在“填空”;边界不定,模型就是在替你拍板。
我不敢说三层分法适合所有团队,有的业务可能还要拆得更细,比如把“紧急风险”和“特殊人群用药”分开处理。但如果你现在连最粗的一层刹车都没有,那讨论提示词语气、回复长度、口吻像不像真人,优先级都没那么高。
我建议你先用这张三层风险表
先别急着写提示词,先把问题类型塞进表里。你会立刻看出哪些地方不该自动化。
| 风险层级 | 典型问题 | AI 可做什么 | 必须加什么 | 是否允许直接回答 |
|---|---|---|---|---|
| 低风险 | 常识解释、公开健康知识、就诊流程、术语释义 | 提供通用信息、科普、就医准备清单 | 来源范围说明、非诊断提醒 | 允许 |
| 中风险 | 轻症自我判断、是否要观察、非处方药相关、症状持续时间 | 给一般性建议、提醒观察指标、建议咨询专业人士 | 明显提醒、追问关键信息、必要时引导人工 | 谨慎允许 |
| 高风险 | 处方药、剂量、孕妇/儿童/老人、慢病并发、急症、胸痛/呼吸困难/昏厥等 | 不做个体建议,只做风险识别和转介 | 强制转人工或建议立即就医 | 不允许 |
这张表看着简单,真正有用的地方在于:它把“模型能力问题”改写成了“路由规则问题”。
很多团队会卡在“到底要不要上更强模型”。说白了,健康问答里最值钱的那层,常常不是生成质量,而是分类、拦截、转人工。模型写得再像医生,只要入口没有刹车片,照样危险。
哪些信号一出现,就该停止自动回答?
有一类信号,系统不该“努力回答”,而该“立刻收手”。
我会优先拦这 5 类:
-
急症信号
比如胸痛、呼吸困难、持续高热伴意识异常、抽搐、严重过敏反应、出血不止。
判断标准:一旦涉及“是否需要马上处理”,就别让模型继续展开知识解释。 -
个体化用药信号
包括剂量、联合用药、换药、停药、漏服补服。
判断标准:只要回答会直接影响用户吃什么、吃多少、何时停,就进高风险。 -
特殊人群信号
孕妇、哺乳期、儿童、老人、慢病患者、术后、免疫功能异常。
判断标准:同一个常识,对这些人群可能完全不是一个结论。 -
诊断倾向信号
用户问“我是不是得了某病”。
判断标准:可以解释某病常见表现,但不要给个体诊断判断,更不要给概率式安慰。 -
拖延就医信号
用户在找“能不能先等等”“要不要先不去医院”。
判断标准:这类问题最容易把系统带进责任区。
我写这类规则时有个土办法,像给汽车装限速器:只要一句回答可能让用户少做一个本该做的动作,就按高一级风险处理。宁可多拦一点,也别为了“体验顺滑”把坑留到线上。
一套能直接落地的分流流程,应该怎么写?
别让模型自由发挥,用“先识别风险,再决定回答模式”的两段式流程。
第一步:先做风险分类,不急着出答案
你可以先让模型只输出一个结构化判断:
json{
"risk_level": "low | medium | high",
"reason": "为什么这么分",
"must_handoff": true,
"must_warn": true,
"topic_tags": ["symptom", "drug", "pregnancy"]
}
这一层的目标不是“回答用户”,而是“决定能不能回答”。
第二步:按风险层选择回复模板
| 风险层级 | 回复策略 | 输出要求 |
|---|---|---|
| low | 直接回答 | 通用信息 + 非诊断提醒 + 下一步建议 |
| medium | 先提醒再回答 | 先说边界,再给一般建议,再引导人工 |
| high | 不回答核心问题 | 说明无法提供个体建议,直接给转人工/就医指引 |
这比把所有规则塞进一个大提示词稳得多。
因为你把“会不会答”和“答成什么样”拆开了,后面调试时也更容易定位问题是出在分类,还是出在表述。
我自己更偏向把这层分类做得“保守一点”。话说回来,保守不等于死板。你可以先放过低风险知识问答,把真正容易踩雷的内容收紧,再看真实对话里哪些拦截太多、哪些提醒太硬。这样改起来是往外放,不是出了事故再往回补。
上线前检查表:先做一个能安全试运行的版本
下面这份你可以直接拿去过需求会。
产品边界检查
- 是否明确定义了低/中/高风险问题范围
- 是否列出必须拒答的主题:处方药、剂量、急症、特殊人群、个体诊断
- 是否定义了“转人工”与“建议就医”的触发条件
- 是否规定模型不能做概率式诊断和安慰性判断
交互流程检查
- 高风险问题是否会被优先拦截,而不是先生成再删
- 中风险问题是否有固定提醒语,而不是靠模型临场发挥
- 转人工入口是否就在当前对话里可见
- 用户补充信息后,风险等级是否会重新判断
数据与评测检查
- 测试集里是否包含模糊表达、口语、错别字、混合问题
- 是否专门测过“看似普通,实则高风险”的样本
- 是否记录每次拦截、提醒、转人工的原因
- 是否有人类审核高风险命中和漏拦案例
文案检查
- 提醒语是否说人话,不像法务贴纸
- 是否明确区分“健康信息”与“医疗建议”
- 是否避免给出会影响行动的具体指令
- 是否给出下一步能做什么,而不只是机械拒答
提示词到底放在哪一层?
提示词当然重要,但它应该服务边界,不该代替边界。
我更建议把规则拆成三份:
- 系统规则:哪些问题不能答,哪些必须转人工
- 分类规则:如何识别高风险信号
- 表达规则:在允许回答时,语气怎么自然、怎么避免吓人
这样改起来才不会一团乱。否则你每次线上冒出一个风险 case,就会往那个总提示词里再补一条,最后补成一锅粥。龙虾看多了这种提示词,真的会想钻回机箱里冷静一下。
还有一个事,很多人会把“提示词写得严一点”和“系统更安全”画等号。它们有关,但不是一回事。真正能保命的,往往是提示词外面的东西:输入识别、风险路由、转人工入口、日志留痕、复盘机制。不要把流程问题,全塞给模型语气去扛。
健康问答这类功能,最难的从来不是“回答”,而是“收口”。你真正要交付的,不是一张更会说话的嘴,而是一套知道什么时候该停的流程。
如果你今天就要推进这件事,我建议别先测“回答像不像医生”,先做一个更扎实的小动作:把准备上线的 20 个真实问题拉出来,逐条标成低、中、高风险,再看团队里哪几题分歧最大。那些分歧,往往就是你真正还没定义清楚的边界。
做完这轮以后,你大概率会发现一个比提示词更要命的问题:到底是模型不会答,还是你其实还没决定它能不能答。
FAQ
Q: 只有健康问答才需要这套风险清单吗?
A: 不是。凡是会影响用户决策的场景都该做,比如法律、金融、教育规划、客服赔付。
Q: 有免责声明了,还需要转人工规则吗?
A: 需要。免责声明只能补充说明,不能替代分流和拦截,更不能覆盖具体建议带来的风险。
Q: 小团队也要分低中高三层吗?
A: 要。哪怕先用最粗的三层,也比把所有问题都丢给模型自由回答稳得多。