| 这个作业属于哪个课程 | 北航2026年春季软件工程 |
|---|---|
| 这个作业的要求在哪里 | [T.17] 团队项目:Beta 阶段发布说明 |
| 我在这个课程的目标是 | 体验完整软件开发流程,交付一款真正解决科研阅读痛点的软件产品 |
| 这个作业在哪个具体方面帮助我实现目标 | 完成 Beta 阶段发布说明 |
Scider 是一个智能学术论文管理辅助平台,面向科研人员与学生,提供论文检索、AI 解析、知识图谱可视化与个人文库管理等功能。
Beta 版本现已上线,在 Alpha 版本核心功能的基础上,新增了 PDF 内文字搜索、连续滚动浏览、文本高亮批注、要点对照阅读、富文本笔记、笔记导出、笔记与 PDF 联动、LLM 自动图结构生成与聚类、图谱编辑、AI 问答助手等丰富功能,所有核心功能均可免费使用,期待您的使用反馈!
- 在线体验:http://39.107.252.200
- 宣传网页:https://www.cnblogs.com/BBnomoney/p/20542987
1. 新功能和特性
1.1 PDF 内文字搜索
实现需求
在 PDF 阅读界面中,支持用户输入关键词搜索当前论文全文,高亮显示所有匹配位置,并支持在结果列表间逐条跳转。
应用场景
研一新生张同学正在阅读一篇关于 Transformer 的论文,想快速找到文中所有出现"attention mechanism"的位置。他在 PDF 阅读器的搜索框中输入关键词,系统立刻高亮显示所有匹配位置,并支持逐条跳转,几分钟内就完成了原本需要半小时的翻阅工作。
1.2 连续滚动浏览与页码定位
实现需求
PDF 阅读模式由逐页翻页改为垂直连续滚动浏览,切换页面时缩放比例保持不变;支持在页码输入框中输入目标页码,自动滚动到该页并将其定位在阅读界面视图中央。
应用场景
张同学在阅读一篇 30 页的论文时,导师建议他重点看第 15 页的实验部分。他在页码输入框中键入"15",PDF 立即滚动到该页并居中显示,全程不到一秒,阅读体验流畅连贯。
1.3 要点对照阅读
实现需求
在 PDF 阅读界面的右侧边栏中,并排显示 LLM 提取的四要素关键点(研究背景、研究方法、创新点、研究结论),实现正文阅读与核心要点的同步对照。
应用场景
张同学在阅读论文正文时,右侧边栏始终展示着 AI 提取的四要素。当他读到方法部分时,可以随时对照右侧的"研究方法"摘要,确认自己的理解是否正确,阅读与理解同步进行,效率大幅提升。
1.4 笔记列表与全文搜索
实现需求
每篇论文下支持创建多篇笔记,笔记按论文归集管理。
应用场景
张同学在阅读一篇论文时,边读边记录了多篇笔记,全部挂载在同一篇论文下。几天后回顾时,直接在论文详情页展开笔记列表,所有笔记按时间倒序排列,标题清晰展示,点击即看,围绕同一篇论文归集,不会与其他论文混淆,知识脉络一目了然。
1.5 富文本编辑器
实现需求
笔记编辑器支持 Markdown 语法渲染、LaTeX 数学公式(通过 katex 扩展)、图片粘贴自动上传至后端。
应用场景
张同学在记录一篇机器学习论文的笔记时,需要写下公式 $L(\theta) = -\mathbb{E}_{x \sim p}[\log p_\theta(x)]$。在富文本编辑器中输入 LaTeX 语法后,公式实时渲染为漂亮的数学表达式,同时他还粘贴了一张模型架构图,图片自动上传并嵌入笔记中。
1.6 笔记导出
实现需求
支持将笔记导出为 Markdown、TXT 或 PDF 格式的文件,方便用户在不同平台间迁移和使用笔记内容。
应用场景
张同学完成了文献调研,需要将所有论文笔记整理成一份综述报告。他选择将相关笔记导出为 PDF 格式,一键下载后直接作为报告附件提交给导师。
1.7 LLM 自动图结构生成与聚类
实现需求
基于文库中已确认的论文集合,调用大语言模型自动分析并生成图结构,包含基于研究主题/领域的自动聚类展示,以不同颜色区分不同研究簇。
应用场景
张同学上传了 5 篇关于"对比学习"的论文并确认了四要素。点击"生成图谱"后,系统自动将论文按"图像对比学习"、"文本对比学习"、"多模态对比学习"等主题聚类,不同颜色区分不同研究簇。张同学一眼看出该领域的研究热点分布,并发现了两个交叉方向的研究空白。
1.8 图谱编辑功能
实现需求
支持手动添加/删除节点、编辑节点属性、建立或删除节点间关系;删除节点时自动删除与该节点关联的所有边。
应用场景
张同学发现 AI 将一篇关于"CLIP"的论文误分到了"文本对比学习"簇,而实际上它应该属于"多模态对比学习"。他拖拽该节点到正确的簇中,并手动添加了一条与另一篇多模态论文的关联边,知识图谱更加准确,完全符合他的研究认知。
1.9 图谱导出
实现需求
支持将当前知识图谱视图导出为 PNG 或 SVG 格式的图片。
应用场景
张同学完成文献调研后,将整理好的知识图谱导出为 PNG 图片,插入到组会汇报的 PPT 中,清晰地展示了领域研究脉络,获得了导师的表扬。
1.10 AI 问答助手(PDF 场景)
实现需求
在 PDF 阅读界面,允许用户输入自然语言问题,系统基于当前论文全文及用户笔记内容,通过 RAG(检索增强生成)流程返回回答。
应用场景
张同学读到一篇 40 页的论文,对"对比损失函数的温度参数为什么选择 0.07"感到困惑。他在 AI 问答框中输入这个问题,系统基于论文全文生成了详细的回答,并引用了原文中的相关论述,张同学立刻理解了设计者的考量,省去了反复翻找的时间。
1.11 AI 问答助手(知识图谱场景)
实现需求
在知识图谱界面,允许用户输入自然语言问题,系统基于当前生成图谱内容与论文关联信息返回回答。
张同学看着生成的对比学习知识图谱,在问答框中输入"这个领域的主要研究方向有哪些?"系统分析图谱结构后回答:"主要分为图像对比学习、文本对比学习、多模态对比学习三个方向,其中文本对比学习方向最近两年发文量增长最快。..."知识图谱的价值被自然语言交互进一步放大。
2. 修复的缺陷
2.1 图谱交互修复
原有问题:Alpha 版本中,知识图谱在拖动节点时,信息弹窗与节点发生位置偏移,弹窗没有跟随节点移动。用户在拖拽整理图谱时,弹窗与节点分离,导致信息展示错乱,严重影响图谱的可读性和操作体验。
修复方式:重构弹窗定位逻辑,使用相对 Canvas 坐标定位,通过 getBoundingClientRect 计算节点位置并实时更新;绑定拖拽事件连续更新位置,结合 requestAnimationFrame 优化定位计算。新版本中弹窗紧密跟随节点移动,拖拽体验流畅精准。
2.2 上传流程中断修复
原有问题:上传重复 PDF 后,上传流程未能正确终止,前端 UI 状态未清理。用户误传重复文件后,界面仍显示"上传中"状态,无法继续操作,需要刷新页面才能恢复。
修复方式:前端使用 Pinia 管理上传状态,在组件 onUnmounted 中调用 uploadStore.clearState() 并执行 abortController?.abort()。后端 MD5 检测机制复用,重复文件上传时立即返回提示并清理前端状态。新版本中重复上传会明确提示"文件已存在",界面状态正常。
2.3 筛选逻辑修复
原有问题:"最近论文"筛选导致语义关联连线消失,力导向图的边数据绑定异常。用户切换筛选条件后,图谱中的论文节点之间的连线丢失,无法看到论文间的关联关系。
修复方式:采用 D3 的"enter-update-exit"模式重构力导向图边数据绑定,筛选后先清空旧边再绑定新数据集,确保无残留连线。新版本中切换筛选条件时,图谱节点和边的数据同步更新,关联关系始终可见。
2.4 前端单元测试补全
原有问题:Alpha 阶段前端缺乏系统性的单元测试,关键 Vue 组件(PDF 预览组件、知识图谱可视化组件、登录注册组件)的交互逻辑与渲染完整性未经自动化验证,存在潜在回归风险。
修复方式:使用 Vitest + Vue Test Utils 编写前端单元测试,Mock API 时使用 vi.mock 模拟 api/ 目录下的模块,异步组件测试配合 flushPromises 等待状态更新完成。
2.5 后端 API 集成测试补全
原有问题:Alpha 阶段后端 API 缺乏系统性集成测试,密码重置、JWT 刷新、LLM 图结构生成等关键接口的正确性依赖于人工验证。
修复方式:使用 pytest.mark.asyncio 装饰异步测试函数,通过 httpx.AsyncClient 发起请求,Mock 外部依赖时使用 AsyncMock。
3. 运行环境
本平台 Beta 阶段为 Web 应用,用户无需安装任何客户端软件,通过浏览器即可访问全部功能。
运行环境
| 操作系统 | 浏览器及版本 |
|---|---|
| macOS 14+ | Chrome 120+、Safari 17+、Firefox 120+、Edge 120+ |
| Windows 10/11 | Chrome 120+、Firefox 120+、Edge 120+ |
| Ubuntu 22.04 LTS | Chrome 120+ |
最低运行要求
- 浏览器需启用 JavaScript
- 屏幕分辨率不低于 1366×768(推荐 1920×1080)
- 需要能够正常访问以下域名:
api.semanticscholar.org(论文检索)dashscope.aliyuncs.com(阿里云通义千问 API)
4. 安装与使用方法
访问方式
本软件为 Web 应用,无需安装。直接在浏览器地址栏输入 http://39.107.252.200 即可访问。
注册方式
平台支持用户自行注册:
- 访问首页,点击右上角"开始使用"按钮
- 填写邮箱地址和密码(密码不少于 6 位)
- 点击"注册"完成账号创建
新用户入门流程
- 注册登录:使用邮箱和密码注册账号并登录系统
- 建立文库:进入"我的文库",创建文件夹搭建个人文献分类结构
- 上传论文:点击"上传 PDF"按钮,选择或拖拽 PDF 文件,等待后台解析
- 确认四要素:解析完成后点击论文卡片,在抽屉中查看并确认 AI 提取的四要素内容
- 探索知识图谱:上传多篇并确认状态的论文后,进入"知识图谱"页面生成图谱并交互探索
进阶功能
- PDF 内搜索:在 PDF 阅读器中输入关键词,高亮定位全文匹配位置
- 文本高亮批注:选中 PDF 中的文字进行高亮标记,标注永久保存
- 添加富文本笔记:在论文预览界面中点击"笔记"标签,支持 Markdown 和 LaTeX 公式
- 笔记与 PDF 联动:点击笔记中的批注标记,自动跳转到 PDF 对应位置
- AI 问答:在 PDF 阅读界面或知识图谱界面,输入自然语言问题获取智能回答
- 图谱导出:将知识图谱导出为 PNG 或 SVG 图片
5. 系统已知的问题和限制
已知问题
富文本编辑器在 Safari 浏览器中图片粘贴偶现失败
- 表现:使用 Safari 浏览器粘贴图片到笔记编辑器时,偶现上传失败
- 触发条件:Safari 浏览器版本较旧或系统权限限制
- 缓解方法:建议使用 Chrome 或 Edge 浏览器;或通过"上传图片"按钮代替粘贴
AI 四要素提取解析偶有偏差
- 表现:部分论文的 AI 提取内容存在不准确或信息不完整的情况
- 触发条件:论文格式不规范(如双栏排版、扫描件)或内容高度专业化
- 预计修复:持续优化 Prompt 工程与模型选择
功能限制
| 限制项 | 说明 |
|---|---|
| 单文件上传上限 | 50MB,超大型综述论文建议先压缩后上传 |
| 并发上传 | 同时上传 PDF 数量不超过 5 个,避免 Celery 任务队列积压 |
| 笔记长度 | 单篇笔记建议不超过 10000 字,过长内容可能影响编辑器性能 |
| AI 问答频率 | 受限于 LLM API 调用配额,建议合理控制问答频次 |
| 离线模式 | 论文搜索、AI 解析、知识图谱等核心功能依赖外部 API,无网络环境下仅可查看已上传的论文和笔记 |
| 数据批量导出 | 暂不支持批量导出论文元数据或笔记,后续版本计划加入 |
| 文件夹层级 | 当前仅支持单级文件夹操作,不支持嵌套子文件夹 |
6. 软件发布方式与发布地址
在线体验
直接在浏览器中访问 http://39.107.252.200 即可使用全部功能,无需安装任何软件。
宣传网页
Scider 项目宣传网页:https://www.cnblogs.com/BBnomoney/p/20542987
开源仓库
Scider 完全开源,可通过 GitHub 获取源码并自行部署:
git clone https://github.com/XiaCang/Scider.git
GitHub 仓库地址:https://github.com/XiaCang/Scider
团队博客
团队博客:https://www.cnblogs.com/BBnomoney
Scider —— 让学术阅读变得高效而深刻。
欢迎访问 http://39.107.252.200 体验 Beta 版本,也欢迎通过 GitHub Issue 或博客留言给我们反馈!