Thanks to visit codestin.com
Credit goes to github.com

Skip to content

🎯 告别低效读论文,AI 帮你快速理解科研前沿。Resophy 是一个基于 HTML 的 AI 论文阅读器。包含 1. 🤖 AI 翻译 + AI 解析,快速拆解论文结构、核心贡献与实验结论。2. 🚀 Daily arXiv 智能推荐,快速筛选当日你感兴趣的论文,减少信息噪音,加速前沿获取。3.🛠️ Vibe Coding Oriented,对 coding agent 极度友好,支持快速二次开发与个性化定制 。4.⚡ 支持 Zotero 导入,快速迁移,打造一个真正「懂你」的论文阅读器。

License

Notifications You must be signed in to change notification settings

ZeningLin/Resophy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stars Forks Open Issues Issue Resolution Pull Requests Platform Support UV Installation License

English | 简体中文 | 安装文档

Resophy 所有代码都采用 Cusor (Sonnet 4.5/Auto) 生成,人工校验的方式搭建


12.11.1.mp4

Resophy

在如今信息爆炸的时代,科研人员面对海量的论文,常常感到疲惫不堪。如何快速获取精华、理解前沿成果,成了每个研究者的痛点。Resophy 诞生的初衷就是要让你告别低效的论文阅读,赋能科研者,让读论文变得更高效、更智能📚⚡。

Resophy 是一个完全开源、Vibe Coding 导向的现代论文阅读器,它通过简洁的技术栈(HTML + JavaScript + Python Flask)和 AI 功能,帮助你快速理解论文的核心内容🤖💡。从自动翻译到论文解析,从智能推荐到一键导入 Zotero,Resophy 一站式解决你的论文阅读需求📑✨。最重要的是,你可以随时通过 Vibe Coding 的方式自定义功能,打造成专属于你的论文助手🎨🛠️。

🚀 核心功能


目录


1. 安装

Resophy 采用前后端分离的架构
  1. 主服务(Resophy Core):HTML + JavaScript + Python Flask 后端服务,提供论文管理、分类、搜索等核心功能
  2. AI 服务 包括:
    • LLM 服务器:用于 AI 翻译、解读和 arXiv 论文分析的 LLM 推理服务(可选,支持本地部署或远程 API)
    • MinerU 服务器:用于 PDF 到 Markdown 解析的文档解析服务(可选,用于 AI 功能)

Resophy 使用 uv 进行依赖管理,支持分离部署架构。你可以将 Resophy 主服务和 AI 服务器部署在不同的机器上。安装和配置说明,请参考:

系统 文档
Windows / Mac / Linux 安装文档

2. 快速上手

在这一节,我们简要介绍一些 Resophy 的使用方法

2.1 ⚙️ 第一步,进行初始配置

第一步,设置参数以及从 Zotero 进行论文迁移
配置模块 位置 主要功能 使用方法
📸 用户设置 设置界面 → "User" 标签页 • 头像上传
• 用户名设置
• 阅读热力图颜色主题
• 最近阅读记录
1. 点击界面右上角头像
2. 进入 "User" 标签页
3. 上传头像、设置用户名、选择颜色
4. 设置自动保存
🤖 Agentic 设置 设置界面 → "Agentic" 标签页 • LLM API 配置(模型名、URL、密钥)
• MinerU 服务器配置
• AI 解读提示词自定义
1. 进入 "Agentic" 标签页
2. 配置 LLM API 和 MinerU 地址
3. (可选)自定义提示词
4. 测试连接并保存
📰 Daily arXiv 设置界面 → "Daily arXiv" 标签页 • arXiv 分区配置(cs.CV、cs.AI 等)
• 抓取设置(保留天数、检查间隔)
• 关键词列表(用于智能分类)
• 机构配置
1. 进入 "Daily arXiv" 标签页
2. 添加 arXiv 分区
3. 配置抓取参数和关键词
4. (可选)添加自定义机构
5. 保存设置
📥 Zotero 导入 设置界面 → "Import" 标签页 • 目标目录选择
• RDF 文件拖拽上传
• 导入进度显示
• 导入结果统计
1. 在 Zotero 中导出为 RDF 格式
2. 进入 "Import" 标签页
3. (可选)选择目标目录
4. 拖拽 RDF 文件上传
5. 查看导入进度和结果
展开详细介绍

📸 用户设置(User Settings)

功能详情

  • 头像上传:点击头像区域上传自定义头像,支持预览和裁剪
  • 用户名设置:输入用户名(默认:Paper Reader)
  • 阅读热力图颜色:选择颜色主题(绿色/蓝色/玫瑰粉),用于可视化每日阅读时间
  • 最近阅读记录:显示最近阅读的论文列表,快速访问历史记录

🤖 Agentic 设置(AI 功能配置)

功能详情

  • LLM API 配置
    • Model Name:输入模型名称(如:Qwen3-4B-Instruct-2507
    • Base URL:输入 API 地址(本地:http://0.0.0.0:6002/v1 或远程 API)
    • API Key:输入访问密钥
    • 测试按钮:验证 API 连接
  • MinerU 服务器配置:输入服务器地址(如:http://0.0.0.0:6001),用于 PDF 解析
  • AI 解读提示词:大型文本编辑器,可自定义 System Prompt,控制 AI 解读生成风格

用途:统一的 AI 功能配置,用于翻译、解读、Daily arXiv 等所有 AI 功能

📰 Daily arXiv 设置

功能详情

  • arXiv 分区配置:添加/删除分区标签(cs.CV、cs.AI 等),提供常用分区快捷按钮
  • 抓取设置:论文保留天数(1-30 天)、检查间隔(5-60 分钟)
  • 关键词列表:添加关键词标签,设置最多关键词数(1-3),用于 AI 自动分类
  • 机构配置:添加自定义机构,支持编辑缩写和全称变体

📥 从 Zotero 导入

功能详情

  • 目标目录选择:下拉菜单选择导入位置(可选,默认根目录)
  • 文件上传区域:大型拖拽上传区,支持拖拽 .rdf 文件
  • 导入进度显示:进度条、状态文本、取消按钮
  • 导入结果统计:成功/失败/跳过/重复数量

使用步骤

  1. 在 Zotero 中导出文献库为 RDF 格式
  2. 在 Resophy 设置界面进入 "Import" 标签页
  3. (可选)选择目标目录
  4. 拖拽 RDF 文件到上传区域
  5. 系统自动解析并导入论文,显示导入进度和结果

2.2 基本操作

查看基本操作
操作模块 主要功能 使用方法
📚 论文管理 • 上传论文(拖拽 PDF 或输入 arXiv URL)
• 分类管理(创建/重命名/删除分类,移动论文)
• 全文搜索(标题、作者、摘要)
1. 拖拽 PDF 到上传区域或输入 arXiv URL
2. 左侧分类树管理分类结构
3. 顶部搜索框进行全文搜索
📖 论文查看 • 查看论文详情
• PDF 阅读器
• 自动记录阅读时间
1. 点击论文卡片进入详情页
2. 查看元数据和摘要
3. 点击 "查看 PDF" 打开阅读器
✏️ 元数据管理 • 编辑论文信息(标题、作者、摘要等)
• 添加备注和标签
• 管理 BibTeX 引用
• 设置链接(GitHub、主页)
1. 进入论文详情页
2. 点击 "编辑" 按钮
3. 修改信息并保存
📈 阅读历史 • 自动记录阅读时间
• 阅读热力图(可视化每日阅读统计)
• 最近阅读记录
在用户设置中查看阅读热力图和最近阅读列表
📥 导出功能 • 导出论文库为 JSON 格式
• 包含元数据和分类结构
1. 进入设置界面
2. 选择导出范围
3. 下载 JSON 文件

📝 论文元数据自动获取

当上传论文时(通过 arXiv URL 或拖拽 PDF),系统会自动获取论文元数据:

  1. 通过 arXiv API 获取基本信息

    • 调用 arXiv API 获取论文的标题(title)、作者(authors)、摘要(abstract)、年份(year)等信息
    • 下载 PDF 文件
  2. 通过 DBLP API 获取 BibTeX

    • 使用论文标题和作者信息调用 DBLP API
    • 尝试获取更准确的 BibTeX 引用格式
    • 如果 DBLP 获取成功,则使用 DBLP 的 BibTeX;否则使用 arXiv 的 BibTeX
  3. 拖拽上传 PDF 的处理流程

    • 系统会尝试从文件名或 PDF 元数据中提取 arXiv ID
    • 如果找到 arXiv ID,则调用 arXiv API 获取信息
    • 后台异步调用 DBLP API 更新 BibTeX

2.3. AI 翻译

查看 AI 翻译

实现方式

Resophy 的 AI 翻译功能使用 Babeldoc 工具实现 PDF 双语翻译:

  1. 调用 babeldoc

    • 传入配置的 LLM API 信息(模型、URL、密钥)
  2. 翻译流程

    • babeldoc 读取原始 PDF 文件
    • 调用 LLM API 进行翻译(支持 OpenAI 兼容接口)
    • 生成双语对照 PDF(.zh.dual.pdf),原版和中文翻译并排显示

使用方法

  1. 在主界面选择一篇论文
  2. 点击 "AI 翻译" 按钮
  3. 系统后台执行翻译任务
  4. 翻译完成后可在论文详情页查看双语 PDF

2.4 AI 解读

查看 AI 解读

实现方式

Resophy 的 AI 解读功能采用两步流程,深度分析论文内容:

  1. PDF 解析为 Markdown

    • 使用 MinerU 工具将 PDF 解析为结构化 Markdown
    • 连接到配置的 MinerU 服务器(支持 vLLM 部署)
    • 保留图片、表格等元素,生成高质量的 Markdown 文档
  2. LLM 深度解读

    • 使用 openai 库调用 LLM API(支持 OpenAI 兼容接口)
    • 将 Markdown 内容作为输入,结合自定义 System Prompt
    • LLM 生成结构化解读报告(摘要、方法、实验、结论等)
    • 支持自定义提示词,控制解读风格和内容格式

使用方法

  1. 选择一篇论文,点击 "AI 解读" 按钮
  2. 系统启动后台任务:
    • 第一步:MinerU 解析 PDF 为 Markdown
    • 第二步:LLM 深度分析并生成解读报告
  3. 在 "解读任务" 页面查看进度和日志
  4. 解读完成后,点击论文进入解读视图查看详细分析

2.5. Daily arXiv

查看 Daily arXiv 功能

实现方式

Daily arXiv 功能自动爬取最新 arXiv 论文,并使用 AI 进行智能分析和筛选:

  1. 论文爬取

    • 使用 arxiv Python 库爬取指定分区的论文
    • 支持定时自动检查(可配置检查间隔)
    • 按日期和分区组织论文
  2. AI 功能应用

    a. 机构信息提取

    • 使用 openai 库调用 LLM API
    • 从 PDF 第一页文本中提取机构名称(affiliations)
    • 提取机构所在国家(countries)
    • 提取项目主页(homepage)和 GitHub 仓库 URL
    • 支持机构名称标准化和缩写识别

    b. 摘要总结和关键词提取

    • 使用 openai 库调用 LLM API
    • 从论文英文摘要生成中文总结(100-200 字)
    • 从预设关键词列表中选择最能代表论文类型的关键词(1-3 个)
    • 关键词用于后续的智能筛选和分类
  3. 智能筛选

    • 根据配置的关键词列表筛选论文
    • 根据机构信息筛选论文
    • 支持自定义机构映射和标准化
  4. 后台任务

    • 定时自动检查新论文(可配置间隔)
    • 后台下载 PDF 文件
    • 异步执行 AI 分析任务
    • 自动清理过期论文(可配置保留天数)

使用方法

  1. 在设置中配置 arXiv 分区(如 cs.CV、cs.AI)
  2. 设置关键词列表和筛选条件
  3. 点击 "Daily arXiv" 按钮获取今日论文
  4. 系统自动爬取、下载、分析论文
  5. 浏览匹配的论文列表,批量导入到阅读列表

3. 💻 Vibe Coding

Resophy 采用 Vibe Coding 的开发理念,这意味着你可以通过自然语言与 AI Coding Agent 对话,轻松自定义和扩展功能。无需深入了解复杂的代码结构,只需描述你的需求,AI 就能帮你实现。

vibecoding1.mp4
点击观看 Vibe Coding 演示视频

🚀 开始 Vibe Coding

使用 Vibe Coding 自定义功能非常简单,只需两步:

第一步:让 AI 理解代码库

在与 Coding Agent 对话时,首先输入以下 prompt:

请理解这个论文阅读平台的功能

这个 prompt 会让 AI 自动分析整个代码库的结构、功能和实现方式,建立对项目的全面理解。AI 会:

  • 分析项目架构(前端 HTML/JS + 后端 Flask)
  • 理解核心功能模块(论文管理、AI 翻译、AI 解读、Daily arXiv 等)
  • 熟悉代码组织方式(路由、工具函数、数据模型等)
  • 掌握现有的代码风格和设计模式

第二步:描述你的需求

当 AI 理解代码库后,你就可以直接描述想要实现的功能了。例如:

示例 1:添加黑夜模式

请为我添加一个黑夜模式,在右上角加入一个按钮,点击后切换到黑夜模式,方便我在光线较暗的情况下读论文

示例 2:添加论文标签功能

我想添加一个论文标签功能,可以为每篇论文添加多个标签,并且可以根据标签筛选论文

示例 3:导出为 BibTeX

请添加一个功能,可以将选中的论文导出为 BibTeX 格式的文件

示例 4:自定义快捷键

我想添加键盘快捷键,比如按 'j' 和 'k' 键可以在论文列表中上下导航

📁 项目结构

了解项目结构有助于你更好地描述需求。Resophy 采用清晰的分层架构:

Resophy/
├── app.py                    # Flask 应用入口,路由注册
├── resophy/
│   ├── core/                 # 核心数据模型
│   │   ├── base_paper.py     # 论文数据模型
│   │   ├── paper_store.py    # 论文存储管理
│   │   └── search_index.py   # 全文搜索索引
│   ├── routes/               # 路由处理
│   │   ├── basic_routes/     # 基础功能路由(论文操作、分类、搜索等)
│   │   └── agent_routes/     # AI 功能路由(翻译、解读)
│   └── tools/                 # 工具函数
│       ├── basic_tools/      # 基础工具(arXiv、PDF 处理、分类管理等)
│       └── agent_tools/      # AI 工具(翻译、解读)
├── templates/                 # HTML 模板
│   ├── index.html           # 主界面
│   ├── pdf_viewer.html      # PDF 阅读器
│   └── analysis_viewer.html # AI 解读查看器
├── static/
│   ├── css/
│   │   └── style.css        # 样式文件
│   └── js/
│       └── app.js           # 前端 JavaScript
└── papers/                   # 论文存储目录(用户数据)

关键概念

  • 路由(Routes):处理 HTTP 请求,定义 API 端点
  • 工具函数(Tools):封装业务逻辑,可被路由调用
  • 数据模型(Core):定义数据结构(如 Paper 类)
  • 前端(Templates + Static):用户界面和交互逻辑

💡 编写 Prompt 的技巧

为了让 AI 更好地理解你的需求,建议在 prompt 中包含:

  1. 功能描述:清晰说明要实现什么功能
  2. 交互方式:描述用户如何操作(点击按钮、快捷键、菜单等)
  3. 界面位置:指定功能在界面的哪个位置(右上角、侧边栏、论文卡片等)
  4. 数据存储:是否需要保存用户偏好(如黑夜模式开关)
  5. 特殊要求:如有特殊样式、动画效果等需求,一并说明

好的 Prompt 示例

请为我添加一个黑夜模式功能:
1. 在右上角导航栏(头像按钮旁边)添加一个月亮图标按钮
2. 点击后切换到深色主题,图标变为太阳
3. 再次点击切换回浅色主题
4. 用户的偏好设置需要保存,刷新页面后自动恢复
5. 深色主题需要适配所有界面元素(导航栏、侧边栏、论文卡片、设置页面等)

🎨 自定义示例

以下是一些常见的自定义需求示例,你可以参考这些思路:

功能 Prompt 示例
主题定制 "请添加一个主题选择器,支持多种颜色主题(蓝色、绿色、紫色),用户可以在设置中选择"
导出功能 "添加一个功能,可以将论文列表导出为 CSV 文件,包含标题、作者、年份等信息"
批量操作 "实现批量标记功能,可以同时为多篇论文添加收藏标记或标签"
搜索增强 "增强搜索功能,支持按年份范围、作者、关键词组合搜索"
阅读统计 "添加阅读统计面板,显示总阅读时间、阅读论文数量、最常阅读的分类等"
快捷操作 "添加右键菜单,在论文卡片上右键可以快速执行翻译、解读、删除等操作"

⚠️ 注意事项

  1. 代码风格:AI 会自动遵循项目现有的代码风格,保持一致性
  2. 测试建议:添加新功能后,建议手动测试确保功能正常
  3. 兼容性:如果修改了核心功能,注意检查是否影响现有功能
  4. 数据备份:在添加可能影响数据的功能前,建议先备份 papers/ 目录

4. LICENSE

Resophy 采用 CC BY-NC 4.0 开源许可证,请参考 LICENSE 文件。

About

🎯 告别低效读论文,AI 帮你快速理解科研前沿。Resophy 是一个基于 HTML 的 AI 论文阅读器。包含 1. 🤖 AI 翻译 + AI 解析,快速拆解论文结构、核心贡献与实验结论。2. 🚀 Daily arXiv 智能推荐,快速筛选当日你感兴趣的论文,减少信息噪音,加速前沿获取。3.🛠️ Vibe Coding Oriented,对 coding agent 极度友好,支持快速二次开发与个性化定制 。4.⚡ 支持 Zotero 导入,快速迁移,打造一个真正「懂你」的论文阅读器。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 42.6%
  • JavaScript 39.6%
  • CSS 8.9%
  • HTML 8.9%