Skip to content

Deep Thought 代码库地图

最后更新:2026-05-27(Phase 1-5 完成,127 测试通过)

项目结构

deep-thought/
├── src/deep_thought/          # 源代码
│   ├── core/                  # 基础设施层
│   ├── models/                # ORM + Pydantic 模型
│   ├── stores/                # 数据访问层
│   ├── engines/               # 六大引擎
│   │   ├── narrative/         # 引擎1: 叙事发现
│   │   ├── data/              # 引擎2: 数据采集
│   │   ├── sentiment/         # 引擎3: 市场情绪
│   │   └── think_tank/        # 引擎4: 智库
│   ├── engines/mismatch/      # 引擎5: 错配检测 (Phase 6)
│   ├── engines/memory/        # 引擎6: 记忆系统 (Phase 7)
│   └── main.py                # 入口
├── tests/                     # 测试
├── defaults/                  # 默认配置模板
└── scripts/                   # 工具脚本

文件 ↔ 功能映射

基础设施层 (core/)

文件功能Phase
config.pySettings 类,YAML 配置加载,~/.deep-thought/ 数据目录管理1
core/db.pypgembed 嵌入式 PostgreSQL 连接管理,init_db/shutdown_db/get_session1
core/event_bus.py异步 EventBus(pub/sub)+ DBEventStore 持久化,Event 模型1
core/llm.pyLLMClient 封装 LiteLLM,generate/generate_json,多 provider 路由,重试1

模型层 (models/)

文件功能Phase
models/enums.py16 个业务枚举:NarrativeStatus, MacroRegime, TrendDirection, DataSource 等1
models/orm.py13 个 SQLAlchemy ORM 表:EventRow, NarrativeRow, JudgmentRow 等1
models/narrative.py叙事 Pydantic 模型:NewsArticle, NarrativeProposition, MatchResult, ExtractionResult2

数据访问层 (stores/)

文件功能Phase
stores/narrative_store.py叙事 CRUD + pgvector 语义搜索 + 边关系 + 按状态查询1+2
stores/indicator_store.py指标快照 CRUD:save/get_latest/get_history1
stores/sentiment_store.py情绪快照 CRUD:save/get_latest1
stores/judgment_store.py判断 CRUD + mismatch 保存 + 验证附加1

引擎1: 叙事发现 (engines/narrative/)

文件功能Phase
__init__.pyNarrativeDiscoveryEngine 编排器:提取→匹配→创建/更新→状态评估2
extractor.pyNarrativeExtractor — LLM 从新闻提取结构化叙事命题2
matcher.pyNarrativeMatcher(pgvector 三档匹配)+ EmbeddingProvider2
state_machine.pyNarrativeStateMachine — candidate→active→fading→archived + rejected2
merge_split.pyMergeSplitDetector — 语义聚类合并 + 情绪分化分裂检测2
feed_reader.pyFeedReader — RSS feed 解析 + HTML 清理 + URL 去重2

引擎2: 数据采集 (engines/data/)

文件功能Phase
__init__.pyDataCollectionEngine 编排器:并行采集 + 降级 + 快照存储 + 异常检测3
providers/__init__.pyDataProvider Protocol + IndicatorValue/DataRequest/DataResponse 模型3
providers/binance.pyBinanceProvider(ccxt async):资金费率、持仓量、成交量、大单比例3
calculator.pyIndicatorCalculator — Z-score、百分位、趋势、异常标记3
scheduler.pyDataScheduler — APScheduler 分频率采集调度3

引擎3: 市场情绪 (engines/sentiment/)

文件功能Phase
__init__.py情绪模型(Retail/Media/Institutional/Snapshot)+ 极端检测(check_extreme)4
retail.pyRetailSentimentCollector — alternative.me Fear & Greed API4
media.pyMediaSentimentCollector — LLM 新闻标题批量打分4
engine.pySentimentEngine 编排器:并行采集 + 极端检测 + 快照存储4

引擎4: 智库 (engines/think_tank/)

文件功能Phase
__init__.py数据模型:PersonaConfig, PersonaJudgment, AnalysisContext, DebateChallenge, JudgmentSynthesis5
persona_manager.pyPersonaManager — 加载配置/同步 DB/版本管理/权重查询5
analyzer.pyPersonaAnalyzer — 单个 Persona LLM 独立分析,结构化输出5
debate.pyDebateEngine — 分歧检测 + 单轮质疑-回应辩论5
ensemble.pyEnsembleSynthesizer — 加权投票 + 共识度 + 场景合并5
engine.pyThinkTankEngine 编排器:加载→并行分析→辩论→合成→存储5

入口与脚本

文件功能Phase
main.py应用入口:加载配置、初始化 DB/EventBus/LLM、等待关闭信号1
scripts/init_deep_thought.py初始化脚本:创建数据目录、复制默认配置、创建表1

配置模板 (defaults/)

文件功能Phase
settings.yaml多 provider LLM 配置、task_models 路由1
personas.yamlPersona 启用/禁用、per-persona 模型分配1
data_sources.yamlAPI key 模板(Binance/OpenBB/IBKR/Longbridge)1

测试 (tests/)

文件测试数覆盖范围Phase
tests/unit/test_config.py6Settings 加载、目录创建、模型路由1
tests/unit/test_enums.py5枚举值、str 继承1
tests/unit/test_event_bus.py4pub/sub、错误隔离1
tests/unit/test_llm.py3模型解析、task/persona 路由1
tests/integration/test_db.py2pgembed + ORM CRUD1
tests/unit/test_narrative_models.py7Pydantic 校验、边界值2
tests/unit/test_state_machine.py10全部状态转换 + 边界2
tests/unit/test_merge_split.py6cosine similarity、聚类、std2
tests/unit/test_feed_reader.py3FeedSource、HTML 清理2
tests/integration/test_narrative_engine.py8完整 pipeline(mock LLM + real DB)2
tests/unit/test_data_calculator.py18Z-score、百分位、趋势、异常、enrich3
tests/unit/test_data_providers.py8IndicatorValue/DataRequest/DataResponse3
tests/integration/test_data_engine.py7引擎集成(存储/事件/降级/超时/异常)3
tests/unit/test_sentiment_models.py14模型构造/校验/嵌套访问/极端检测4
tests/integration/test_sentiment_engine.py7引擎集成(存储/事件/极端/降级)4
tests/unit/test_think_tank.py19模型/ensemble 合成/辩论逻辑5
tests/integration/test_think_tank_engine.py4引擎集成(完整 pipeline)5
总计127

引擎间数据流

新闻 RSS ──→ 叙事发现 ──→ narrative_events

Binance API ──→ 数据采集 ──→ indicator_snapshots

Fear&Greed + LLM ──→ 情绪引擎 ──→ sentiment_snapshots


                    智库(Persona 分析 + 辩论)


                         judgments


                    错配检测 (Phase 6)


                      mismatch_scores

待实现

引擎Phase状态
错配检测 + 合成层6待开发
自动化运行 + 记忆系统7待开发
OpenBB 数据源3+计划内跳过
社交媒体情绪4计划内跳过
IBKR/Longbridge3+计划内跳过

基于 VitePress 构建