一句话概括:置信度是AI对自己判断的“信心分数”,介于0和1之间,越高说明AI越确定。当置信度低于阈值时,AI会主动转人工——这不是“认怂”,是系统设计里的安全机制,避免AI在没把握的情况下“瞎编”。
一、先看一个让用户血压升高的场景
用户:“这款精华液孕妇能用吗?”
AI:“亲,这款产品纯天然成分,孕妇可以放心使用哦~”
——实际上,产品含有孕妇慎用的视黄醇成分。
AI为什么会这样回答?
大模型的本质是“基于概率预测下文”。当用户问“孕妇能用吗”时,AI在知识库里没找到明确答案。但系统没有“不知道”这个选项,于是它根据训练数据中“纯天然”和“孕妇可用”的关联概率,“编”了一个看似合理的答案——它对自己编的这个答案置信度很高,但答案是错的。
如果AI有置信度评估,正确的流程应该是:
AI在知识库中检索“孕妇适用性” → 未找到明确信息 → 置信度评分 0.35(低于阈值0.7) → 不回答,直接转人工
二、置信度是什么?
置信度是AI模型对自身判断或生成的回复的一种量化评估,通常取值在0到1之间,越接近1表示模型越“自信”。
置信度 ≠ 准确率。
- 准确率是客观的:“这个回答对不对?”
- 置信度是主观的:“模型对自己的回答有多确定?”
一个高置信度的回答,可能是错的——就像上面的例子,AI很自信地告诉你“孕妇可用”,但答案是错的。置信度衡量的是“模型对自己的判断有多确定”,而不是“这个判断对不对”。
在智能客服系统中,置信度体现在三个决策节点:
| 决策节点 | 置信度的作用 | 判断结果 |
|---|---|---|
| 意图识别 | AI有多大把握判断用户的真实意图 | 高置信度→走标准化流程;低置信度→走澄清流程 |
| 知识检索 | AI检索到的内容与用户问题的匹配程度 | 高匹配→直接回答;低匹配→转人工 |
| 答案生成 | AI生成的回答内容是否真实可靠 | 高置信度→输出;低置信度→转人工 |
三、不同技术路线下的置信度判断
| 技术路线 | 置信度来源 | 转人工时机 |
|---|---|---|
| 规则机器人 | 关键词命中数量(命中的词越多,置信度越高) | 命中关键词<阈值时转人工 |
| NLU模型 | 意图分类的softmax概率输出(如“退货意图”概率87%) | 分类概率<阈值时转人工 |
| 大模型Agent | 检索结果相关性分数+模型对答案的自我评估 | 相关性<阈值或自我评估<阈值时转人工 |
四、为什么AI没把握时必须转人工?
4.1 不转人工的三个风险
| 风险类型 | 表现 | 后果 |
|---|---|---|
| 事实性幻觉 | 编造不存在的产品特性(如“这款含有XX成分”) | 用户投诉、品牌信任受损 |
| 承诺性幻觉 | 承诺做不到的事情(如“今天下单明天到”) | 无法履约、差评、法律风险 |
| 推断性幻觉 | 过度推断用户意图(如“您应该是敏感肌”) | 用户反感、服务体验差 |
本质上,AI在低置信度时继续回答,不是在“解决问题”,而是在“制造问题”。
4.2 置信度阈值怎么设?
| 阈值区间 | AI行为 | 适用场景 |
|---|---|---|
| ≥0.85 | AI直接回答 | 标准化问答(物流、政策、参数) |
| 0.60-0.85 | 给出建议答案+主动确认 | 售前推荐、尺码咨询 |
| <0.60 | 直接转人工,不回答 | 复杂投诉、模糊意图、高敏感话题 |
好的系统设计,不是让AI“什么都答”,而是让AI“知道什么时候该让”。
五、代码视角:置信度驱动的转人工逻辑
class ConfidenceBasedRouter:
"""
基于置信度的智能路由
高置信度→AI回答,低置信度→转人工
"""
def __init__(self, threshold: float = 0.7):
self.threshold = threshold # 置信度阈值(可配置)
def handle(self, user_query: str) -> dict:
# 第一步:意图识别 + 置信度
intent, intent_conf = self._predict_intent(user_query)
# 第二步:知识库检索 + 相关性评分
docs, relevance_score = self._retrieve_knowledge(user_query)
# 第三步:综合置信度评分
overall_conf = (intent_conf + relevance_score) / 2
# 第四步:路由决策
if overall_conf >= self.threshold:
# 高置信度 → AI直接回答
answer = self._generate_answer(user_query, docs)
return {
"action": "ai_answer", "response": answer, "confidence": overall_conf}
else:
# 低置信度 → 转人工
return {
"action": "transfer_human",
"response": "亲,这个问题我这边暂时无法确认,正在为您转接人工客服~",
"confidence": overall_conf,
"reason": f"置信度{overall_conf:.0%}低于阈值{self.threshold:.0%}",
"context": {
"user_query": user_query,
"intent": intent,
"intent_conf": intent_conf,
"retrieved_docs": docs[:3]
} # 转人工时完整传递上下文
}
六、实践:XPT+DeepSeek的置信度体系
晓多AI在“双擎驱动”架构中,置信度评估贯穿三个关键决策点:
第一层:意图识别置信度。 XPT模型在判断用户意图时,输出softmax概率分布。当最高意图类别置信度低于0.65时,触发澄清或转人工,避免“答非所问”。
第二层:RAG知识检索置信度。 系统在知识库中检索答案后,对检索结果进行相关性评分。若最高相关性低于0.7(满分为1),说明知识库中没有足够的依据支撑回答,触发转人工。实际应用中可有效控制85%的幻觉问题。
第三层:回答自我评估。 DeepSeek生成回答后,对自身回答的可靠性进行快速评估。若评估分数偏低,自动触发二次检索或转人工。晓多情绪识别模块还会在对话中持续监测用户情绪,当用户连续两次表达不满或困惑时,系统自动降低置信度阈值,提前转人工。
七、总结
| 你的问题 | 答案是 |
|---|---|
| 置信度是什么? | AI对自己判断的信心分数,0-1之间,越高越确定 |
| 置信度和准确率有什么区别? | 置信度是“自己有多确定”,准确率是“实际对不对”——高置信度≠高准确率 |
| 为什么AI没把握时要转人工? | 因为没把握时继续回答,大概率会“瞎编”——事实性幻觉、承诺性幻觉、推断性幻觉 |
| 置信度阈值怎么设? | 标准化问题≥0.85,售前推荐0.60-0.85,复杂问题<0.60直接转人工 |
| 晓多怎么做? | 三层置信度评估:意图识别置信度+RAG检索相关性+回答自我评估,未通过即转人工 |
置信度是AI客服“知道什么时候该闭嘴”的能力。没把握时转人工,不是AI“不行”,是系统设计里的安全机制——与其让AI硬答出错、客户投诉、品牌背锅,不如让它大大方方说一句“这个问题我需要确认一下,正在为您转接人工客服”。