项目概述
Local Deep Research (LDR) 是一个AI研究助手,专注于执行深度、迭代的研究任务。核心功能包括:
- 复杂问题分解:将复杂查询拆分为聚焦的子查询
- 多源并行搜索:同时搜索网络、学术论文和本地文档
- 信息验证:跨来源验证信息准确性
- 综合报告生成:创建带有规范引用的全面报告
核心特性
智能搜索策略
- 15+种搜索策略(包括并行搜索、自适应分解、约束引导等)
- 支持BrowseComp优化模式
- 动态约束满足跟踪
高级分析能力
- 双置信度评估(正/负证据分析)
- 多阶段候选发现
- 智能约束放松机制
知识管理
- 持久化研究成果存储
- 知识图谱构建
- 渐进式知识压缩
开发者友好
- 模块化架构设计
- 完整类型提示
- 可扩展的插件系统
安装指南
基础安装
git clone https://github.com/LearningCircuit/local-deep-research.git
cd local-deep-research
pdm install
依赖项
- Python 3.10+
- PDM 2.0+
- Ollama (可选,用于本地模型运行)
Docker部署
docker-compose -f docker-compose.ldr.yml up -d
使用示例
基础研究任务
from local_deep_research import get_advanced_search_system
search_system = get_advanced_search_system(strategy_name="iterdrag")
results = search_system.analyze_topic("量子计算在密码学中的应用现状")
基准测试
from local_deep_research.web.benchmark import run_benchmark
benchmark_results = run_benchmark(
model="gpt-4.1-mini",
strategy="focused-iteration",
questions=50
)
核心代码解析
自适应搜索策略
class AdaptiveDecompositionStrategy(BaseSearchStrategy):
"""
自适应分解策略,根据中间发现动态调整搜索方法
关键特性:
1. 动态步骤选择(约束提取→初始搜索→验证→优化)
2. 基于置信度的早期终止
3. 智能查询重构
"""
def __init__(self, model, search, max_steps=15):
self.model = model
self.search = search
self.max_steps = max_steps
self.current_step = 0
def execute_step(self, step_type, context):
"""执行单个自适应步骤"""
if step_type == StepType.CONSTRAINT_EXTRACTION:
return self._extract_constraints(context)
elif step_type == StepType.INITIAL_SEARCH:
return self._initial_search(context)
# ...其他步骤处理
双置信度检查器
class DualConfidenceChecker(BaseConstraintChecker):
"""
使用正/负/不确定三分数评估约束满足情况
评估逻辑:
- 正置信度 > 40% → 接受
- 负置信度 > 25% → 拒绝
- 不确定度 > 60% → 需要重新评估
"""
def check_candidate(self, candidate, constraints):
results = []
for constraint in constraints:
evidence = self._gather_evidence(candidate, constraint)
analysis = self._analyze_evidence(evidence)
score = (analysis.positive -
analysis.negative * self.negative_weight -
analysis.uncertainty * self.uncertainty_penalty)
results.append(ConstraintCheckResult(
constraint=constraint,
score=score,
evidence=evidence
))
return results
贡献指南
我们欢迎各种形式的贡献!请参阅贡献指南了解:
- 开发环境设置
- 代码风格要求
- PR提交流程
- 安全准则
许可证
本项目采用 Apache License 2.0 开源协议。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)
公众号二维码