# AI 辅助功能规划 > 最后更新:2026-07-12 ## 一、定位与分级 ### 核心理念 按**用户投入度**分级——用得越深,价值越大,付费意愿越强。 | 层级 | 本质 | 用户投入 | 付费天花板 | |---|---|---|---| | Tier 1 AI 解读 | 一次性信息压缩 | 零(进来就看) | 免费/专业版 | | Tier 2 知识库 + RAG | 持续积累的结构化资产 | 收藏/上传即建库 | 专业版/团队版 | | Tier 3 个性化 AI | 主动助手,按需配置 | 设定研究方向/模板 | 团队版 | ### 与现有功能的关系 文献 `ai_summary` JSON 列已存在,但管道导入不生成,**全部 1.4M 基线文献 `ai_summary` 均为 NULL**。Tier 1 的核心是:有缓存直接展示,无缓存显示"生成 AI 解读"按钮,用户点击后调用 DeepSeek 并持久化到数据库。Tier 2 和 3 是全新功能,需要新建数据模型和服务。 ### 与评分系统的协同 评分系统解决**"哪篇值得读"**,AI 辅助解决**"读完后得到了什么"**。评分在前端排序层,AI 在内容展示层,互不依赖但互补——高分文献自动获得更深入的 AI 解读。 --- ## 二、Tier 1:AI 文献解读 ### 定位 **不改变用户习惯,进来就看。** 核心价值是省时间,降低文献阅读的认知负担。 ### 功能 | 功能 | 数据来源 | 当前状态 | |---|---|---| | 一句话总结(one-liner) | `ai_summary.summary` | 空(需按需生成) | | 结构化解读(背景/方法/结果/结论) | `ai_summary.sections` | 空(需按需生成) | | 中文翻译 | `ai_summary.translation` | 空(需按需生成) | | PICO 抽取 | `pico` 字段(population/intervention/comparison/outcome) | Meta 分析已有,前端未展示 | | 关键数据提取 | `ai_summary.tables`(样本量、HR、PFS/OS 等) | 后端无此格式,需新增输出模板 | ### 前端展示 在文献详情页新增「AI 解读」标签页,与「摘要」「全文」并列: ``` ┌──────────────────────────────────────────────┐ │ 摘要 │ AI 解读 │ 全文 ← 标签页切换 │ ├──────────────────────────────────────────────┤ │ │ │ 一句话总结 │ │ 这项 III 期研究显示 Amivantamab 联合化疗比化 │ │ 疗显著改善 PFS(9.2 vs 5.8 月),可能改变 │ │ EGFR Exon20ins 一线标准。 │ │ │ │ ── 研究背景 ── │ │ EGFR Exon20ins 对传统 TKI 不敏感... │ │ │ │ ── 关键数据 ── │ │ │ 指标 │ 试验组 │ 对照组 │ HR │ │ │ │ mPFS │ 9.2mo │ 5.8mo │ 0.58 │ │ │ │ 客观缓解率 │ 53% │ 29% │ │ │ │ │ 3级AE │ 42% │ 36% │ │ │ │ │ │ ── 临床意义 ── │ │ 首个针对 EGFR Exon20ins 一线 III 期数据, │ │ 已纳入 NCCN 指南推荐。 │ └──────────────────────────────────────────────┘ ``` ### 免费 vs 付费差异 | 功能 | 免费 | 专业版 | 团队版 | |---|---|---|---| | 一句话总结 | ✅ 每日前 5 篇 | ✅ 无限 | ✅ 无限 | | 结构化解读 | ❌ | ✅ | ✅ | | 关键数据表格 | ❌ | ✅ | ✅ | | 中文翻译 | ❌ | ✅ | ✅ | ### 执行 前端工作 + 调用已有后端 API。 - **有 `ai_summary` 的文献**(新管道导入后可能有)→ 直接渲染展示 - **无 `ai_summary` 的文献**(全部基线 1.4M 篇 + 管道未触发生成的)→ 显示「生成 AI 解读」按钮 - 用户点击 → 调 `POST /ai/generate/{pmid}` → DeepSeek 生成 → 写入 `ai_summary` JSON 列 → 返回前端展示 - 后续任何用户打开同篇文献 → 直接命中数据库 - **不做批量预生成、无定时任务、不改变管道导入逻辑** 这个按需生成用现有 `AiProviderConfig` 配置即可,**不依赖 embedding/ES**,只取 title+abstract → DeepSeek → 入库。 --- ## 三、Tier 2:知识库 + RAG ### 定位 **从"收藏夹"升级为"用户的第二个大脑"。** 用户收藏的文献、上传的文件、写的笔记,混合成一个可检索、可问答的个人知识库。 ### 3.1 核心原则:收藏即建库 用户不需要做任何额外操作。收藏一篇文章,自动进入知识库。知识库不是另一个页面,而是收藏功能的自然延伸。 ``` 用户点击收藏 ↓ 写入 user_favorite(已有表) ↓ 新增一条 knowledge_entry ↓ 异步 embedding(ARQ 任务) ↓ 写入 ES 向量索引 ``` ### 3.2 多源融合 知识库不只装文献,而是三类数据的混合: | 来源 | 进入方式 | 存储 | |---|---|---| | 平台文献 | 用户收藏/评分(自动) | 已有 DB + ES | | 用户笔记 | 在文献详情页写笔记(自动关联) | 已有 notes 表 | | 用户上传文件 | 手动上传 PDF/Word/PPT/Markdown | 对象存储 MinIO/COS | | 第三方文档 | 乐享集成/本地同步(预留接口) | 适配器模式 | 所有来源统一进入 `knowledge_entries` 表,统一 embedding,统一检索。 ### 3.3 RAG 问答 用户在知识库页面提问,基于自己的知识库回答: ``` 用户提问:EGFR 20ins 耐药机制有哪些? ↓ 1. query embedding(调 embedding 服务转为向量) ↓ 2. 向量检索(ES knn,过滤 tenant + user,top_k=8) ↓ 3. 召回结果 + metadata 拼入 prompt ↓ 4. DeepSeek 生成回答 + 标注引用来源 ``` 引用来源标注: ``` 回答: 目前针对 EGFR Exon20ins 的耐药机制主要包括... 参考文献: [1] Amivantamab in EGFR Exon20ins NSCLC... (PMID: 38712345) [2] Mobocertinib 耐药机制分析... (您收藏的文献) [3] 您整理的耐药机制笔记.docx (您上传的文件) ``` ### 3.4 知识图谱(分步实施) #### 设计说明 知识图谱不是 RAG 的前置依赖,而是在 RAG 有了用户和内容之后**自然长出**的增值特性。RAG 擅长"找相似文本",图谱擅长"看关系路径"——两者互补。 不存在时先不产生价值,与其急着做不如等用户有数据积累后再做。 #### Phase 1:共现关系图谱(最简单,有收藏数据即可跑) ``` 用户收藏了 100 篇文献 ↓ 后台 NER 提取药物、基因、疾病、研究类型等实体 ↓ 同一篇文献中出现的实体自动建立共现关系 ↓ 前端展示为"探索"视图:实体节点 + 关联线 ``` 用户看到的是: ``` [奥希替尼] ─── 出现在 12 篇收藏中 ─── [EGFR Exon19del] │ │ │ 出现在 5 篇收藏中 │ 出现在 8 篇收藏中 │ │ [Amivantamab] ─── 出现在 3 篇收藏中 ─── [EGFR Exon20ins] ``` 对用户的价值:**"我收藏的文献里,哪些概念是关联的?"**——帮助用户发现自己的知识盲区或研究热点。 #### Phase 2:外部知识融合(需要对接外部数据源) 将 PubChem、DrugBank、ClinicalTrials.gov 的结构化关系导入,叠加在用户图谱之上: ``` [奥希替尼] ── 靶向 ──→ [EGFR T790M] ← 权威层 (DrugBank) [奥希替尼] ── 获批适应症 ──→ [NSCLC] ← 权威层 [奥希替尼] ── 用户标注 ──→ [耐药机制笔记] ← 用户层 ``` 两层叠加:用户看到的不只是"哪些文献提到了奥希替尼",还包括"奥希替尼的靶点是什么、获批了哪些适应症"。 #### Phase 3:图谱问答(融合 RAG + Graph) 用户问"奥希替尼耐药后有哪些方案",系统先查图谱关系链: ``` [奥希替尼] ── 耐药后方案 ──→ [Amivantamab, 化疗, MET抑制剂...] ↓ 找到关联文献(每篇文献可能对应多个方案) ↓ RAG 检索具体数据(HR、PFS、OS) ↓ 回答:"奥希替尼耐药后可选方案包括:1) Amivantamab + 化疗(mPFS 9.2mo)..." ``` **这本质是 GraphRAG,但对当前阶段太远了。** Phase 1-2 足够先用起来。 ### 3.5 数据模型 ```python class KnowledgeEntry(Base): """知识库条目——收藏/上传/笔记的统一入口""" __tablename__ = "knowledge_entries" id: Mapped[uuid.UUID] = mapped_column(primary_key=True) tenant_id: Mapped[uuid.UUID] = mapped_column(ForeignKey("tenants.id")) user_id: Mapped[uuid.UUID] = mapped_column(ForeignKey("users.id")) entry_type: Mapped[str] # literature | note | file source_type: Mapped[str | None] # global_literature | user_note | upload source_id: Mapped[str | None] # pmid | note_id | upload_id chunk_text: Mapped[str] # 分块后的文本 chunk_index: Mapped[int] # 第几块(一篇文献可多块) metadata: Mapped[dict | None] # JSON,来源/页码/标签 embedding_id: Mapped[str | None] # ES doc id is_embedded: Mapped[bool] = mapped_column(default=False) created_at: Mapped[datetime] = mapped_column(server_default=func.now()) ``` ### 3.6 前端展示 知识库页面布局: ``` ┌──────────────────────────────────────────────────┐ │ 🔍 搜索知识库... 视图切换 │ ├──────────────────────────────────────────────────┤ │ 筛选: 全部 | 文献 | 笔记 | 上传文件 │ ├──────────────────────────────────────────────────┤ │ ┌────────────────────┐ ┌────────────────────┐ │ │ │ 📄 肺癌新辅助免疫 │ │ 📎 耐药机制笔记 │ │ │ │ 治疗III期研究... │ │ 上传 2026-07-11 │ │ │ │ 收藏 2026-07-10 │ │ 2页 · docx │ │ │ │ EGFR, 免疫治疗 │ │ │ │ │ └────────────────────┘ └────────────────────┘ │ │ ┌────────────────────────────────────────┐ │ │ │ 💬 问你的知识库... [发送] │ │ │ └────────────────────────────────────────┘ │ └──────────────────────────────────────────────────┘ ``` 同时保留现有 LibraryView(收藏夹管理),在其上加一个入口:"探索知识库"。 --- ## 四、Tier 3:个性化 AI ### 定位 **从"被动应答"到"主动理解"。** 用户告诉 AI 自己的研究方向,AI 据此调整所有解读的角度。 ### 4.1 研究方向配置 用户设定: ```json { "direction": "肺癌靶向治疗和耐药机制", "focus": ["EGFR突变", "耐药机制", "双抗"], "patient_population": "EGFR突变NSCLC患者", "preferred_therapy": ["靶向治疗", "ADC"], "avoid": ["基础研究", "cell line实验"] } ``` 设定后,Tier 1 和 Tier 2 的所有输出自动适配: | 场景 | 无研究方向时 | 有研究方向时 | |---|---|---| | AI 解读 | 标准结构化摘要 | 重点突出 EGFR 相关数据、耐药机制讨论 | | RAG 问答 | 泛泛回答 | 优先引用靶向治疗相关的收藏文献 | | 每日 Feed | 按评分排序 | 研究方向相关文献自动提升优先级 | ### 4.2 自定义 Prompt 模板(高阶) 用户可编写自己的 AI 解读模板: ``` 用户预设模板(免疫方向): "请重点分析:1) 肿瘤微环境相关数据(TIL、PD-L1、TMB) 2) 免疫相关不良事件(irAE)的发生率和处理 3) 生物标志物分析(如适用)" → 之后每次 AI 解读都按此模板执行 ``` 实现方式:prompt 模板不涉及后端改动,在 `AiProviderConfig` 的 prompt 字段中附加用户模板。每次调用 DeepSeek 时拼接。 ### 4.3 多模型选择 | 模型 | 用途 | 成本 | 适用层级 | |---|---|---|---| | DeepSeek(默认) | 日常解读、RAG 问答 | 低 | Tier 1+2 | | GPT-4o | 深度分析、复杂推理 | 高 | Tier 3 | | 本地模型(Ollama) | 敏感数据不经过外网 | 零 API 费用 | 团队版私有部署 | 用户可在设置中选择默认模型。不同模型走不同的 API Key 配置(`AiProviderConfig` 已有此设计)。 ### 4.4 免费 vs 付费差异 | 功能 | 免费 | 专业版 | 团队版 | |---|---|---|---| | 研究方向配置 | ❌ | ✅ 1 个方向 | ✅ 不限 | | AI 解读按方向适配 | ❌ | ✅ | ✅ | | 自定义 prompt 模板 | ❌ | ❌ | ✅(管理员设) | | 多模型选择 | ❌ | ❌ | ✅ | | 模型调用量配额 | 5 次/天 | 50 次/天 | 按需 | --- ## 五、执行顺序 ``` Phase 1 Tier 1 AI 解读前端 + 按需生成(合并原 Phase 1 + Phase 5) 读写:LiteratureDetailView.vue 新增 AI 解读标签页 + "生成"按钮 依赖:`ai_summary` JSON 列 + POST /ai/generate/{pmid} API(均有) 说明:无批量预生成,全部用户触发。不依赖 embedding/ES。 Phase 2 Tier 2 基础——收藏即入知识库 读写:knowledge_entries 表 + 收藏时自动插入 依赖:无(新增模型 + 简单逻辑) 注意:此阶段不上 embedding 和 RAG,只做"浏览我的知识库" Phase 3 Tier 2 增强——embedding + 全文搜索 读写:embedding 服务 + ES 向量索引 + ARQ 任务 依赖:需要部署 embedding 模型(bge-m3) 注意:此阶段仍不上 RAG Q&A,知识库可搜索即可 Phase 4 Tier 2 完成——RAG 问答 读写:POST /kb/ask API + 前端对话界面 依赖:Phase 3 完成后才可检索 Phase 5 知识图谱 Phase 1——共现关系图谱 读写:NER 抽取 + 实体-关系存储 + 前端探索视图 依赖:用户收藏达到一定量级(建议 500+ 条/租户) Phase 6 Tier 3 个性化 AI 读写:研究方向配置 UI + prompt 模板 + 模型选择 依赖:Tier 1+2 稳定运行,有活跃用户 Phase 7 Tier 2 用户上传文件 读写:文件上传 API + 解析(PDF/Word) + 入知识库 依赖:对象存储基础设施已就绪 Phase 8 知识图谱 Phase 2——外部知识融合 ... ``` ### 分阶段原则 - **Phase 1 可独立上线**——前端 + 调用已有 API,无外部依赖。基线文献全部无 AI 摘要,默认展示"生成"按钮 - **Phase 2-4 是 Tier 2 的三步走**——先不 embed 先可浏览,再可搜索,再可问答。**每一步都能独立上线,每一步都比上一步更有价值** - **Phase 5 不急于做**——等用户收藏量上来再做,不然图谱是空的 - **Phase 6+ 依赖活跃用户基础** --- ## 六、基础设施依赖 **Tier 1(AI 解读)无需新基础设施**——复用现有 DeepSeek API(`AiProviderConfig`)、`ai_summary` 字段、`POST /ai/generate/{pmid}` 端点。不依赖 embedding/ES。 以下为 Tier 2/3 及图谱所需的新组件: | 新组件 | 用途 | 用于 Tier | 可复用现有 | |---|---|---|---| | `knowledge_entries` 表 | 知识库条目 | Tier 2 | ❌ 新表 | | embedding 服务 | 文本→向量 | Tier 2+3 | ❌ 新部署 | | ES dense_vector 索引 | 向量存储 | Tier 2 | ✅ ES 已有 | | NER 抽取服务 | 实体识别 | 图谱 | ❌ 新服务 | | 对象存储(文件上传) | PDF/Word 存储 | Tier 2 | ✅ MinIO/COS 已有 | | 文件解析服务 | PDF→文本 | Tier 2 | ❌ 新模块 | **embedding 服务部署建议:** 用 `sentence-transformers` + `bge-m3` 模型,FastAPI 包装。单容器 2GB 内存,CPU 推理足够(每日 ~50 个收藏动作)。先部署一个最小实例,不够再加 GPU。 ```python # embedding_service.py(示意) from sentence_transformers import SentenceTransformer model = SentenceTransformer("BAAI/bge-m3") @app.post("/embed") async def embed(texts: list[str]): embeddings = model.encode(texts, normalize_embeddings=True) return {"embeddings": embeddings.tolist()} ``` --- ## 七、AI 辅助科研(未来方向) ### 7.1 定位与前提 > 从"帮医生省时间读文献"升级到"帮医生发现研究机会"。 > > 前三个 Tier 解决的是**信息过载**(Tier 1 → 省时间、Tier 2 → 建知识库、Tier 3 → 个性化),AI 辅助科研解决的是**知识到洞察的跨越**。 **关键判断:** AI 辅助科研不是独立产品,而是现有 73 万篇肿瘤文献数据库 + AI 能力之上的一层分析应用。不做垂直的"科研 AI 平台",而是让用户在看完文献后,自然产生下一步研究思路。 **前提条件(当前阶段不实现):** - 基线导入完成,数据库稳定在 100 万+ 篇文献 - ClinicalTrials.gov 集成完成([数据源计划](docs/05-数据源丰富计划.md)) - PubChem 或 DrugBank 集成完成 - 有活跃的付费用户基础(专业版/团队版) ### 7.2 功能矩阵 | 功能 | 核心能力 | 数据依赖 | 价值 | 复杂度 | |---|---|---|---|---| | 趋势扫描 | MeSH 标签时间序列分析 | 仅需现有数据库 | 发现热点/冷点 | 低 | | 空白分析 | 研究设计 × 癌种 × 药物交叉 | 现有 DB + ClinicalTrials | 发现未被充分研究的领域 | 中 | | 证据综合 | 系统性综述辅助(PRISMA 流程) | 现有 DB + 搜索 | 加速综述写作 | 中 | | 假设生成 | 跨领域关联推理 | 现有 DB + 外部知识库 | 新研究思路 | 高 | | 写作辅助 | 引用推荐 + 文献综述段落生成 | 现有 DB + RAG | 提高论文写作效率 | 中 | ### 7.3 功能详解 #### 7.3.1 趋势扫描(Research Trend Scout) **本质:** 把 MeSH 标签当成时间序列,看什么在增长、什么在衰退。 **数据基础:** 我们的数据库按年组织,每条文献有 MeSH 标签。统计每年每个标签下的文献数量,就能画出趋势线。 ``` 标签:双特异性抗体(Bispecific Antibodies) 2021: 12 篇 ████████ 2022: 28 篇 ██████████████████ 2023: 45 篇 ██████████████████████████████ 2024: 89 篇 ██████████████████████████████████████████████████████ 2025: 142 篇 ████████████████████████████████████████████████████████████████████████████████ 增长率: 2024→2025 = +59.6% 相关标签: ADC, CD3, DLL3, 血液肿瘤, 实体瘤 ``` **用户价值:** - 肿瘤科主任了解领域全貌:"今年肺癌免疫治疗还有哪些新方向?" - 研究生选题:"有什么快速增长但还不太卷的方向?" - MDT 团队规划:"我们科室应该关注哪些新技术?" **实现路径:** - 不需要新数据源,只用现有 `global_literature` + `global_literature_tags` - 按年统计每个标签的文献数 → 计算增长率(YoY, 3-year CAGR) - 标签间相关性分析(哪些标签经常同篇出现 → 发现研究热点群组) - 前端:趋势线图 + 热力图 + 标签关联网络 **复杂度评估:低。** 纯 SQL 聚合 + 前端图表。后端 100 行代码,前端可复用现有图表组件。 #### 7.3.2 空白分析(Research Gap Analyzer) **本质:** 已知某药物在某癌种有效,但同一机制在其他癌种是否被研究过? **典型场景:** - "免疫治疗在胰腺癌中为什么失败率高?有多少研究涉及?" - "ADC 药物在 HER2-low 乳腺癌之外,哪些癌种也有 HER2 低表达?" - "哪个癌种在 2026 年还没有 III 期 RCT 更新?" **数据基础:** - 现有数据库:文献总量 + 研究设计分类 + PICO - ClinicalTrials.gov(需集成):临床试验全景 - PubChem/DrugBank:药物-靶点关系 **分析维度交叉:** ``` NSCLC SCLC Breast Pancreatic CRC Gastric 免疫治疗 ████ ██ ███ ██ ██ ██ ADC ███ █ ████ █ █ █ CAR-T █ ███ ██ █ ██ █ 双抗 ██ █ ██ █ █ ██ T cell engager █ █ █ █ ██ █ 色阶: █=1-10篇 ██=11-50 ███=51-200 ████=200+ 空白 = 该领域几乎没有研究 = 潜在的研究方向 ``` **用户价值:** - 帮助研究者找到真正的研究空白(不是"没人做过"而是"有理论基础但没人做过") - 基金申请时用来论证"本研究填补了XX空白" - 科室科研规划时明确投入方向 **复杂度评估:中。** 主要是 ClinicalTrials.gov 的集成工作量。数据集成本身已在规划中(参考数据源丰富计划),分析逻辑本身不复杂。 #### 7.3.3 证据综合(Evidence Synthesis / AI Systematic Review) **本质:** 系统性综述是肿瘤学研究的核心方法。AI 不是替代研究者,而是把最机械的部分自动化。 **用户旅程:** ``` 研究者提出 PICOS 问题: "在 EGFR 20ins NSCLC 中,Amivantamab 对比化疗的疗效和安全性?" Step 1: AI 生成搜索策略 └→ 自动构造 PubMed 查询语句 └→ 推荐 MeSH 词 + 自由词组合 └→ 输出 PRISMA 流程图可用的搜索策略 Step 2: 检索 + 去重 └→ 在我们的数据库中搜索 + 可扩展到 PubMed └→ 自动去重(基于 PMID) Step 3: AI 筛选(Title/Abstract) └→ 对每篇文献判断是否符合纳入标准 └→ 输出:"纳入 12 篇 / 排除 48 篇 / 存疑 5 篇(需人工判断)" Step 4: 数据提取 └→ 从纳入文献提取:样本量、人群、干预、对照、结局 └→ 输出结构化证据表格 Step 5: 辅助合成 └→ 森林图草稿 └→ 异质性分析提示 └→ 证据质量评价(GRADE 辅助) ``` **与现有功能的关系:** - 搜索策略生成 → 复用现有搜索 API(`search_engine.py`) - 筛选 → 需要新的 AI 判断 pipeline - 数据提取 → 复用现有 PICO 抽取(`pico` 字段) - 导出 → 复用现有批量导出 **价值判断:** 这是 AI 辅助科研中**用户需求最强烈**的功能。每个肿瘤科研究生/年轻医生在写综述时都经历过"筛 3000 篇文献"的痛苦。但工程复杂度也最高。 **复杂度评估:中高。** 影响范围大(搜索 + 筛选 + 提取 + 合成),需要独立模块。建议从 Step 1-3(搜索策略 + 自动筛选)开始 MVP,确认用户买单再做 Step 4-5。 #### 7.3.4 假设生成(Hypothesis Generator) **本质:** 跨文献、跨癌种、跨药物的模式匹配——发现"这个药在那个癌种有效,同样的机制在另一个癌种可能也有效"。 **数据驱动 vs 模型驱动:** - **数据驱动(可行):** 找相同靶点的药在不同癌种的疗效差异。如果 Drug X 靶向靶点 T,在 Cancer A 有阳性 III 期数据,但在 Cancer B 只有病例报告,则 Cancer B 可能是研究空白 - **模型驱动(远期):** 让 AI 阅读大量文献后,"猜测"某个新组合可能有效。这需要更强大的推理能力和已知的知识图谱,当前阶段不建议做 **数据驱动的实现思路:** ``` 1. 从 PubChem/DrugBank 获取药物-靶点关系 2. 从文献中提取药物-癌种疗效数据 3. 交叉匹配: 药物 X → 靶点 T → 在 Cancer A 有效 药物 Y → 靶点 T → 在 Cancer B 有数据吗? 4. 输出假设: "Drug X 在 Cancer A 中显示 ORR 60%,机制是靶向 T。 Cancer C 也高度表达 T(来自文献 PMID: 12345), 但尚无 Drug X 在 Cancer C 的研究。 建议探索 Drug X 在 Cancer C 中的疗效。" ``` **复杂度评估:高。** 需要 PubChem 完整集成、药物-靶点命名标准化、实体对齐。这是最远离当前产品的能力。 #### 7.3.5 写作辅助(Writing Assistant) **本质:** 利用文献数据库 + AI,在用户写作时提供引用推荐和背景段落。 **功能:** - **智能引用推荐:** 用户在写"EGFR 突变在亚洲 NSCLC 患者中的发生率"时,AI 自动推荐最相关、最高引的 3-5 篇参考文献 - **文献综述段落生成:** "写一段关于 Amivantamab 临床开发历程的综述,引用关键研究" - **格式自动匹配:** 引文格式自动转为目标期刊格式 **实现方式:** - 引用推荐 → 基于搜索 API(已有)+ 评分排序(即将有) - 段落生成 → 基于 RAG(Tier 2 完成后的自然延伸) - 格式转换 → 已有导出模块 **复杂度评估:中。** Tier 2 的 RAG 完成后,写作辅助是上层应用。引用推荐最实用、最轻量,可以独立先行。 ### 7.4 与现有产品的关系 ``` 现有产品核心: 帮用户"发现"值得读的文献 │ Tier 1-3 AI 辅助: 帮用户"理解"已发现的文献 │ AI 辅助科研(本节): 帮用户"创造"新的知识 ``` 三者串起来,用户在每个环节都有价值: ``` 发现 → 已有能力(标签匹配 + Feed + 搜索 + 评分排序) ↓ 理解 → Tier 1-3(AI 解读 + 知识库 + 个性化) ↓ 创造 → AI 辅助科研(趋势 + 空白 + 综合 + 假设 + 写作) ``` **不冲突的地方:** - AI 辅助科研不改变 Feed/搜索/收藏等核心链路 - 是对"高级用户"(研究人员、研究生、PI)的增值功能 - 可作为独立的付费附加模块(按需付费或更高的订阅层级) ### 7.5 执行顺序与条件 ``` ┌─────────────────────────────────────────────────────┐ │ 条件:基线导入完成 + ClinicalTrials.gov 集成就绪 │ └─────────────────────────────────────────────────────┘ │ ▼ Phase A 趋势扫描(低复杂度,独立可用) 读写:后端趋势分析 API + 前端趋势图 数据:仅需现有数据库 工期:~1 周(后端 2 天 + 前端 3 天) Phase B 证据综合 MVP(搜索策略 + AI 筛选) 读写:AI 筛选 pipeline + PRISMA 流程管理 数据:现有 DB + DeepSeek 工期:~2 周 注意:验证用户是否愿意为"自动筛选"付费 ←─ 在此验证用户需求,再决定是否继续 ─→ Phase C 空白分析 读写:ClinicaTrials 集成 + 交叉分析 数据:ClinicalTrials.gov 完整导入后 工期:依赖数据集成进度 Phase D 写作辅助 读写:引用推荐 API + 段落生成 数据:Tier 2 RAG 完成后 工期:依赖 Tier 2 进度 Phase E 假设生成 读写:PubChem 集成 + 实体对齐 + 关联推理 数据:PubChem/DrugBank 完整导入后 工期:远期 ``` **核心判断:不做则已,要做就做 Phase A 先。** 趋势扫描基于现有数据,无外部依赖,是证明"AI 辅助科研"这个方向是否有用户买单的最小闭环。 ### 7.6 风险与取舍 | 风险 | 说明 | 缓解措施 | |---|---|---| | 用户不需要"科研辅助" | 可能目标用户(临床医生)只想看文献,不想做研究 | Phase A 先验证,不做大规模开发 | | 趋势扫描价值不够深 | 只是"统计图",用户看一眼就完了 | 结合空白分析才有深度,但走得太快可能做无用功 | | 证据综合做成了"学术不端"工具 | AI 写综述可能被滥用绕过真正的文献阅读 | 定位为"辅助"不是"替代",要求人工确认每一步 | | 数据量不够支撑有意义的趋势分析 | 73 万篇肿瘤文献对一个癌种细分后可能太少 | 先做粗粒度趋势(癌种级),细粒度(突变级)等基线完成后 | | 合规风险(AI 辅助科研的学术诚信) | 期刊可能不允许 AI 生成内容 | 所有 AI 输出标注"AI generated",引文必须人工验证 | --- ## 八、不做的改动 - **知识库不替代收藏夹**——收藏夹仍是"快速保存到列表",知识库是"自动积累可检索"。两者共存,收藏夹入口保留在 LibraryView - **不上 GraphRAG(当前阶段)**——Phase 1-2 的共现图谱已经足够提供"探索"体验,GraphRAG 的工程复杂度远高于收益,等用户量和数据量足够再说 - **不上 agents/workflow 编排**——Tier 3 的个性化只是 prompt 模板 + 模型选择,不做多 agent 编排 - **不重建文件预览**——上传的 PDF/Word 用对象存储的预览 URL 或用 iframe 嵌入,不做自建文档阅读器 - **不改变现有 Feed 引擎**——研究方向配置影响的是 AI 解读角度,不是 Feed 匹配逻辑 - **不做用户级 embedding 模型微调**——方向配置通过 prompt 工程实现,不训练模型