AstroResearch/docs/troubleshooting.md
Asfmq cd6af4f995 feat: 重构 PDF/文献检索同步机制、升级引力图交互与控制台 UI 样式
- [后端/PDF解析] 重构 MinerU PDF 解析流程:引入预签名两阶段直传机制,解决大文件 API 传输限制问题;支持轮询机制与本地 images 备用目录存储。
- [后端/同步与下载] 新增经典 ADS SCAN 扫描件 PDF 和 ADS_PDF 直接通道的下载逻辑;新增常用同步检索配置的持久化存储与去重管理 API。
- [后端/日志] 重构日志系统,支持控制台 pretty 输出与每日滚动文件日志(使用上海 +08:00 时区),引入 HTTP 路由请求链路追踪。
- [前端/引力图] 升级引用星系图 canvas 交互:支持平移拖拽与滚轮缩放,添加引力圈轨道装饰及未导入文献的半透明视觉区分。
- [前端/控制台] 统一重构为扁平高对比度浅色纯中文控制台样式;重新设计文献详情弹窗与状态进度条。
- [数据库] 新增 papers 表的 doctype 字段及 sync_queries 检索配置表。
2026-06-10 17:29:07 +08:00

3.9 KiB
Raw Blame History

AstroResearch Troubleshooting / 常见问题与排障指南

在使用 AstroResearch 过程中可能遇到的问题及排障步骤如下:


1. 文献下载相关问题 (Download Issues)

1.1 下载任务遇到 "检测到 Cloudflare / 人机验证页面"

  • 原因:部分出版商对频繁的自动化下载请求实施了高强度的 IP 拦截与 CF 校验。
  • 解决方法
    1. 系统目前已经实现每两次请求间随机延迟 maybe_delay() (500ms~2000ms),以防行为过于机械化。
    2. 若拦截频繁,可以尝试在本地配置代理;或者检查 .env 中的 LIBRARY_DIR 路径是否正确。
    3. 对于 ADS Link Gateway 路由,若跳转至 validate.perfdrive.com,下载器内置了解码 ssc 提取直链的策略,该过程自动进行,如果由于其加密机制变更导致提取失效,系统控制台会输出 warn 日志。

1.2 官方 HTML (arxiv.org/html) 下载返回 404

  • 原因arXiv 官方 HTML 正文服务仅在 2023年12月 之后提交的论文中默认提供。对于老文献,直接请求官方 HTML 会返回 404。
  • 解决机制AstroResearch 的 download_arxiv_html_with_fallback 会在官方 HTML 请求失败时,自动无缝降级回退ar5iv.labs.arxiv.org 服务进行拉取。

2. 文献解析与翻译问题 (Parse & Translation Issues)

2.1 翻译请求返回空或报错 "LLM API KEY Missing"

  • 原因:根目录下没有配置正确的 .env 文件,或者 LLM 提供的 Endpoint/Model 有误。
  • 排查步骤
    1. 确认项目根目录下存在 .env 且拥有 LLM_API_KEYLLM_API_BASE 配置。
    2. 使用终端运行 cargo run,检查启动日志中是否有关于读取环境配置的警告信息。

2.2 PDF 解析缺少图表或公式损坏

  • 原因PDF 格式本身不支持结构化语义。直接提取文本会丢失公式和图表。
  • 解决机制
    1. 如果文献有 HTML/ar5iv 格式,系统会自动优先基于 HTML 解析,保留完美的 LaTeX 公式。
    2. 若该文献只有 PDF 格式,系统自动降级调用本地或远程的 MinerU PDF 图文大模型解析。请确保本地 MinerU 解析服务已按照 API 格式运行并在 .env 中正确填入 MINERU_API_URL

3. 检索与显示问题 (Search & Display Issues)

3.1 无法通过特定的 arXiv ID 或 DOI 检索到已导入的文献

  • 原因:历史版本前端本地检索仅匹配了文献的标题、作者、摘要和 bibcode,未对 arxiv_iddoi 进行全局检测过滤。
  • 排障/解决:现已在馆藏过滤逻辑中追加了 arxiv_iddoi 的字段检索。如果遇到由于升级导致的缓存错乱,可点击顶部的 “重新同步馆藏” 刷新本地缓存状态。

3.2 文献详情页的 BIBCODE 与 ARXIV ID 显示完全相同的值(如均显示 '0710.0600'

  • 原因:当文献通过 arXiv 单独直接导入时,后端处理器无法预知其关联的 ADS Bibcode。为确保数据一致系统在 SQLite 中临时将 bibcodearxiv_id 均用 arXiv ID 填充,直到后续 ADS 元数据同步匹配成功将其“升级”。
  • 解决机制:前端已实现了防重与标识规整机制。如果检测到 bibcode === arxiv_id,卡片页将前缀格式化为 arXiv:xxxx.xxxx 形式,而文献元数据详情弹窗中 BIBCODE 则会直接优雅呈现为 “暂无” 状态,避免视觉歧义。

4. 数据库与运行环境问题 (Runtime & DB Issues)

4.1 启动提示 "Database Migration Failed"

  • 原因:本地 SQLite 数据库文件 astro_research.db 出现并发锁死或版本 schema 冲突。
  • 解决方法
    1. 备份并临时删除根目录下的 astro_research.db 数据库文件。
    2. 重新启动服务:cargo run,系统将重新执行 migrations/ 下的全部 SQL 迁移脚本以建立最新库结构。