引用管理
Citation Management
学术引用ID生成、引用链追踪、报告内联引用自动插入
子问题
1.全局引用ID生成与管理
2.工具调用到引用的映射追踪
3.并发安全的引用写入
4.报告中自动插入内联引用
5.引用编号的延迟映射与论文去重
6.中断恢复后引用计数器的正确续接
7.多阶段引用系统的独立管理(Research vs Solve)
各项目的解法1 solutions
Signals
横向对比
| 维度 | DeepTutor |
|---|---|
| ID格式 | 双格式:PLAN-XX(规划)+ CIT-X-XX(研究),从ID可反推阶段和block |
| 并发安全 | asyncio.Lock + AsyncCitationManagerWrapper 包装器 |
| 去重机制 | 论文按 title+first_author 去重,其他类型不去重 |
| 引用渲染 | build_ref_number_map 延迟映射 + [[N]](#ref-N) 可点击链接 + 后处理验证 |
| 持久化 | 每次 add_citation 自动保存 JSON,含计数器状态,支持中断恢复 |
| 多工具适配 | 按 tool_type 分派5种提取器(RAG/Web/Paper/Code/Generic),保留各类型元数据 |
最佳实践
1.CitationManager统一管理全局引用ID
2.asyncio.Lock保证并发安全
3.ToolTrace记录完整的工具调用引用链
4.延迟构建ref_number_map确保报告编号连续
5.JSON持久化含计数器状态支持中断恢复
6.AsyncWrapper模式将同步管理器适配为并发安全版本