项目概述

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智能小助手)

公众号二维码

Local Deep Research - AI驱动的深度研究助手的更多相关文章

  1. AI面试必备/深度学习100问1-50题答案解析

    AI面试必备/深度学习100问1-50题答案解析 2018年09月04日 15:42:07 刀客123 阅读数 2020更多 分类专栏: 机器学习   转载:https://blog.csdn.net ...

  2. 微软发布云端基因服务:推动AI驱动的精准医疗

    微软发布云端基因服务:推动AI驱动的精准医疗 2018年03月07日 00:00:00 微软研究院AI头条 阅读数:117    版权声明:本文为博主原创文章,未经博主允许不得转载. https:// ...

  3. AI驱动的超分辨技术落地实践

    近年来,随着深度学习技术的快速发展,基于AI的超分辨技术在图像恢复和图像增强领域呈现出广阔的应用前景,受到了学术界和工业界的关注和重视.但是,在RTC视频领域中,很多AI算法并不能满足实际场景下的应用 ...

  4. [AI开发]将深度学习技术应用到实际项目

    本文介绍如何将基于深度学习的目标检测算法应用到具体的项目开发中,体现深度学习技术在实际生产中的价值,算是AI算法的一个落地实现.本文算法部分可以参见前面几篇博客: [AI开发]Python+Tenso ...

  5. 认识:人工智能AI 机器学习 ML 深度学习DL

    人工智能 人工智能(Artificial Intelligence),英文缩写为AI.它是研究.开发用于模拟.延伸和扩展人的智能的理论.方法.技术及应用系统的一门新的技术科学. 人工智能是对人的意识. ...

  6. 迈入 8K 时代,AI 驱动超高清 “视” 界到来

    2021 年,超高清迈入 "8K" 时代.超高清视频将带来全新视听体验,但超高清生产在内容生产层面也面临着超高清存量少.生产设备更新换代慢.制作周期成倍增加的困境.在 7 月 10 ...

  7. NPC AI驱动最基本过程

    NPC AI驱动最基本过程 NPCmgr中比较重要的是加载NPC和一个NPCAI的一个指针 他利用map那个线程的定时到底做了啥呢 void NPCmgr::npcAITimer() { time_t ...

  8. Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.1

    3.Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.1 http://blog.csdn.net/sunbow0 ...

  9. Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.2

    3.Spark MLlib Deep Learning Convolution Neural Network(深度学习-卷积神经网络)3.2 http://blog.csdn.net/sunbow0 ...

  10. Spark MLlib Deep Learning Convolution Neural Network (深度学习-卷积神经网络)3.3

    3.Spark MLlib Deep Learning Convolution Neural Network(深度学习-卷积神经网络)3.3 http://blog.csdn.net/sunbow0 ...

随机推荐

  1. WSGI、Starlette、Uvicorn 与 Gunicorn 核心介绍及使用指南

    WSGI.Starlette.Uvicorn 与 Gunicorn 的核心介绍及使用指南 一.技术定位与核心差异 WSGI(Web Server Gateway Interface) • 定义:传统的 ...

  2. 0x01 基础算法

    目录 基础算法 排序 快速排序 归并排序 二分 整数二分 浮点数二分 高精度 输入输出 高精度加法 高精度减法 高精度乘法 高精度除法 前缀和 差分 双指针算法 位运算 离散化 区间合并 基础算法 排 ...

  3. [笔记]通过命令行连接MySQL数据库服务器的几种方式总结如下

    通过命令行连接MySQL数据库服务器的几种方式总结如下: 1.连接本地数据库,用户名为"root",密码"123456"(注意:"-p"和& ...

  4. 关于:js使用$.parseJSON字符串转json对象报错Uncaught SyntaxError- Unexpected token o in JSON at position 1

    今天使用js使用$.parseJSON字符串转json对象报错Uncaught SyntaxError- Unexpected token o in JSON at position 1,一直找不到原 ...

  5. WebSocket连接

    启动类增加注解并进行Bean注入 @EnableWebSocket @Bean public ServerEndpointExporter serverEndpointExporter() { ret ...

  6. centos 7.9下载地址

    http://isoredirect.centos.org/centos/7/isos/x86_64/ In order to conserve the limited bandwidth avail ...

  7. XXL-MQ v1.3.0 | 分布式消息队列

    Release Notes 1.[增强]消费者分组属性 "group" 支持为空,为空时自动赋值UUID,方便实现多分组广播消费: 2.[增强]海量数据堆积:消息数据存储在DB中, ...

  8. HarmonyOS NEXT开发教程:加速web页面访问

    在日常app开发中,访问web页面是很常见的功能,在鸿蒙系统中有多种方案来加速web页面的访问,提升用户体验. 首先,可以在Web组件的onAppear方法中对要加载的页面进行预链接,比如: Web( ...

  9. C#窗体磁吸屏幕的两种实现方案 - 开源研究系列文章

    以前在大学的时候模仿Winamp的磁吸效果编写过一个类库,用于在应用中多个窗体的相互磁吸效果.因为此效果应用不多,但是窗体磁吸屏幕边缘的效果倒是比较实用,于是就用C#来实现窗体磁吸屏幕边缘的代码,这里 ...

  10. 微软开源bitnet b1.58大模型,应用效果测评(问答、知识、数学、逻辑、分析)

    微软开源bitnet b1.58大模型,应用效果测评(问答.知识.数学.逻辑.分析) 目       录 1.     前言... 2 2.     应用部署... 2 3.     应用效果... ...