DeepConf:基于置信度的深度思考方法
Deep Think with Confidence — 提升大语言模型推理效率与准确性的创新方法
lightbulb引言
DeepConf(Deep Think with Confidence)是由Meta AI与加州大学圣地亚哥分校联合提出的一种创新方法,旨在通过利用模型内部的置信度信号来显著提升大语言模型(LLM)在测试时的推理效率和性能。该方法不需要额外的模型训练或超参数调整,可以无缝集成到现有的服务框架中,在保持高质量推理的同时,大幅减少计算资源消耗。
psychology核心原理
DeepConf的核心思想是让大模型在推理过程中实时监控置信度,动态淘汰低置信度路径,并对高置信度路径进行加权投票,从而兼顾准确率与效率。具体原理包括:
- check_circle利用模型内部置信度信号评估每条推理路径的可靠性
- check_circle通过滑动窗口评估推理路径的整体置信度,特别关注最后几步的置信度
- check_circle记录推理链中最差的一步,如果中间有明显错误,则降低该路径的置信度
- check_circle基于置信度过滤低质量路径,并对高置信度路径进行加权投票
推理路径置信度可视化
低
高
低置信度路径(被淘汰)
高置信度路径(保留)
architecture系统架构
DeepConf支持两种工作模式,分别适用于不同的应用场景:
离线模式
在推理路径完全生成后,根据置信度筛选已完成的推理路径,然后根据质量对投票进行加权。这种方法能最大化提升答案的准确性。
Python伪代码
def offline_deepconf(paths, threshold=0.1): # 计算每条路径的置信度分数 confidence_scores = [calculate_confidence(p) for p in paths] # 筛选置信度最高的前90%路径 filtered_paths = [p for i, p in enumerate(paths) if confidence_scores[i] > np.percentile(confidence_scores, threshold*100)] # 基于置信度加权投票 weighted_votes = {} for p in filtered_paths: answer = extract_answer(p) confidence = calculate_confidence(p) weighted_votes[answer] = weighted_votes.get(answer, 0) + confidence # 返回得票最高的答案 return max(weighted_votes.items(), key=lambda x: x[1])[0]
在线模式
在推理过程中实时评估置信度,当置信度降至阈值以下时立即停止生成,避免浪费计算资源。这种方法能边走边筛选,提升效率甚至精度。
Python伪代码
def online_deepconf(model, prompt, stop_threshold): # 离线预热阶段 initial_paths = [model.generate(prompt) for _ in range(16)] confidence_scores = [calculate_confidence(p) for p in initial_paths] threshold = np.percentile(confidence_scores, stop_threshold*100) # 在线生成阶段 final_paths = [] for _ in range(num_paths): path = [] for token in model.generate_stream(prompt): path.append(token) # 实时计算当前路径的置信度 current_confidence = calculate_confidence(path) if current_confidence < threshold: break final_paths.append(path) return final_paths
insights设计思想
DeepConf的设计思想源于对大语言模型推理过程的深入理解:
- auto_awesome置信度作为关键指标:大语言模型在生成过程中实际上"知道"自己何时不确定,DeepConf充分利用这一内在信号
- auto_awesome实时监控与干预:不同于传统方法在完整生成后才评估置信度,DeepConf在生成过程中就捕捉推理错误
- auto_awesome平衡准确率与效率:通过动态过滤低置信度路径,既提高了最终答案的准确性,又减少了无效计算
- auto_awesome通用性与即插即用:无需额外训练或超参数调整,可无缝集成到现有框架中
trending_up性能表现
DeepConf在多个基准测试中展现出卓越的性能:
99.9%
AIME 2025准确率
84.7%
Token减少量
10%
平均准确率提升
- star在AIME 2025上达到99.9%的准确率(基线为97%)
- star在5个模型×5个数据集上实现普适性增益
- star在线模式在所有基准测试中节省33%-85%的token
- star使用GPT-OSS-120B. 在减少85%的token消耗下,仍达到97.9%的准确率✅
code技术实现
DeepConf的技术实现主要包括以下几个关键组件:
置信度评估方法
置信度计算
def calculate_confidence(path): # 1. 滑动窗口平均置信度 window_size = 5 window_confidences = [] for i in range(len(path) - window_size + 1): window = path[i:i+window_size] window_confidences.append(np.mean([token.confidence for token in window])) # 2. 最后几步的置信度权重更高 final_steps_weight = 0.4 final_confidence = np.mean(window_confidences[-int(len(window_confidences)*final_steps_weight):]) # 3. 记录最差的一步 worst_step = min([token.confidence for token in path]) # 4. 综合置信度分数 combined_confidence = 0.6 * final_confidence + 0.4 * (1 - worst_step) return combined_confidence
过滤与投票机制
过滤与加权投票
def filter_and_vote(paths, filter_percentile=0.1): # 计算每条路径的置信度 confidences = [calculate_confidence(p) for p in paths] # 确定过滤阈值 threshold = np.percentile(confidences, filter_percentile * 100) # 过滤低置信度路径 filtered_paths = [(p, c) for p, c in zip(paths, confidences) if c >= threshold] # 提取答案并加权投票 answer_votes = {} for path, confidence in filtered_paths: answer = extract_answer(path) if answer not in answer_votes: answer_votes[answer] = 0 answer_votes[answer] += confidence # 返回得票最高的答案 return max(answer_votes.items(), key=lambda x: x[1])[0]
apps应用场景
DeepConf适用于多种大语言模型和任务场景:
- check_circle_outline模型适用性:适用于从8B到120B参数规模的各种开源模型
- check_circle_outline数学推理:在AIME、HMMT等数学竞赛中表现出色
- check_circle_outline代码生成:提高代码生成任务的准确性和效率
- check_circle_outline逻辑推理:增强复杂逻辑问题的解决能力
- check_circle_outline资源受限环境:在计算资源有限的情况下提供高性能推理
DeepConf已成功集成到vLLM等推理框架中,仅需约50行代码即可实现完整功能,为实际应用提供了便捷的部署方案。