Files
AIclinicalresearch/docs/00-项目概述/产品需求文档(PRD).md
HaHafeng 66255368b7 feat(admin): Add user management and upgrade to module permission system
Features - User Management (Phase 4.1):
- Database: Add user_modules table for fine-grained module permissions
- Database: Add 4 user permissions (view/create/edit/delete) to role_permissions
- Backend: UserService (780 lines) - CRUD with tenant isolation
- Backend: UserController + UserRoutes (648 lines) - 13 API endpoints
- Backend: Batch import users from Excel
- Frontend: UserListPage (412 lines) - list/filter/search/pagination
- Frontend: UserFormPage (341 lines) - create/edit with module config
- Frontend: UserDetailPage (393 lines) - details/tenant/module management
- Frontend: 3 modal components (592 lines) - import/assign/configure
- API: GET/POST/PUT/DELETE /api/admin/users/* endpoints

Architecture Upgrade - Module Permission System:
- Backend: Add getUserModules() method in auth.service
- Backend: Login API returns modules array in user object
- Frontend: AuthContext adds hasModule() method
- Frontend: Navigation filters modules based on user.modules
- Frontend: RouteGuard checks requiredModule instead of requiredVersion
- Frontend: Remove deprecated version-based permission system
- UX: Only show accessible modules in navigation (clean UI)
- UX: Smart redirect after login (avoid 403 for regular users)

Fixes:
- Fix UTF-8 encoding corruption in ~100 docs files
- Fix pageSize type conversion in userService (String to Number)
- Fix authUser undefined error in TopNavigation
- Fix login redirect logic with role-based access check
- Update Git commit guidelines v1.2 with UTF-8 safety rules

Database Changes:
- CREATE TABLE user_modules (user_id, tenant_id, module_code, is_enabled)
- ADD UNIQUE CONSTRAINT (user_id, tenant_id, module_code)
- INSERT 4 permissions + role assignments
- UPDATE PUBLIC tenant with 8 module subscriptions

Technical:
- Backend: 5 new files (~2400 lines)
- Frontend: 10 new files (~2500 lines)
- Docs: 1 development record + 2 status updates + 1 guideline update
- Total: ~4900 lines of code

Status: User management 100% complete, module permission system operational
2026-01-16 13:42:10 +08:00

12 KiB
Raw Blame History

AI科研助手产品需求文档 (PRD)

版本: v1.0
创建日期: 2025-10-10
文档状态: 正式版


📋 目录

  1. 产品概述
  2. 功能需求详述
  3. 用户端功能
  4. 运营端/后台功能

1. 产品概述

1.1 产品简介

AI科研助手是一款专注于赋能临床及科研人员的智能化平台。它通过集成一系列基于大语言模型的AI智能体为科研工作者在从课题选择、方案设计、数据收集、论文撰写到最终发表的全流程中提供精准、高效、专业的AI辅助旨在解决科研过程中耗时耗力、信息壁垒、方法学门槛高等痛点全面提升科研工作的效率与质量。

1.2 目标用户

本平台的核心用户群体包括:

(1) 临床医生/科研人员

  • 需要在繁忙的临床工作之余,高效开展高质量科学研究的核心人群

(2) 在读硕/博士研究生

  • 在科研学习阶段,需要专业指导和高效工具来完成研究课题与毕业论文的学生

(3) 医药企业研发人员R&D

  • 从事新药研发、临床试验等工作,需要快速获取文献信息、设计研究方案的专业人士

1.3 产品目标

(1) 工具集覆盖

  • 打造一套覆盖临床研究核心流程的AI智能体工具集解决用户在选题、研究设计及论文写作阶段的关键需求

(2) 交互优化

  • 优化人机交互体验,确保用户可以低门槛、便捷地使用各项功能

(3) 行业领先

  • 发展成为科研领域内领先的一站式AI解决方案平台

(4) 未来规划

  • 后期考虑增加基于大规模1000篇以内文献的读取、识别、内容提取的工作

2. 功能需求详述 (Functional Requirements)

2.1 用户端功能

2.1.1 核心功能:项目/课题管理 (Context Persistence)

为解决用户需要反复输入背景信息的问题引入项目制管理确保AI对话的上下文连贯性。

基础功能:

(1) 项目创建与管理

  • 用户可以创建、编辑和删除不同的"项目"或"课题"

(2) 项目背景信息预设

  • 在每个项目中,用户可以预先填入该项目的核心背景信息

(3) 上下文自动关联

  • 在特定项目内发起的所有AI智能体对话都将自动继承该项目的背景信息

动态背景信息管理:

(1) 宏观编辑

  • 在项目主页,用户可通过点击编辑按钮,在弹出的模态框中对项目背景信息进行全面的、多行的编辑与修改

(2) 微观追加

  • 在项目内的对话中用户可将AI生成的关键回答如PICOS框架、核心结论等通过"固定"操作,一键追加到当前项目的背景信息中,实现项目信息的动态演进

2.1.2 核心功能AI智能体 (Agent)

AI智能体是产品的核心用户可以通过以下两种主要路径与智能体进行交互

交互路径:

1. 全局快速问答 (Global Quick Chat)

  • 用户可直接在主界面访问所有智能体,用于处理与特定项目无关的一次性问题

2. 项目内深度研究 (In-Project Deep Research)

  • 用户进入一个具体的"项目/课题"空间后调用智能体,所有对话将自动继承该项目的背景信息

(重点)智能体功能列表:

选题阶段

① 选题评价智能体

  • 功能描述: 从创新性、临床价值、科学性和可行性等维度对用户提出的临床问题进行全面评价并提供初步的SWOT分析
  • 输入: 用户输入的临床问题描述(自由文本),可关联项目背景
  • 输出: 结构化的评价报告,包含创新性、临床价值、科学性、可行性分析及综合建议

② 科学问题梳理智能体

  • 功能描述: 辅助用户将一个模糊或宽泛的研究想法,提炼成一个清晰、具体、可验证的科学问题
  • 输入: 一个初步的研究想法,如"研究肠道菌群与抑郁症的关系"
  • 输出: 多个精炼后的科学问题选项,供用户选择或参考
研究设计阶段

③ PICOS构建智能体

  • 功能描述: 引导用户按照PICOS原则来结构化地定义临床研究的核心要素
  • 输入: 引导式表单或自由文本描述的研究问题
  • 输出: 一个标准化的PICOS表格清晰列出各项具体内容

④ 观察指标设计智能体

  • 功能描述: 基于研究设计和因果关系,为用户的研究推荐合适的主要、次要及安全性观察指标集
  • 输入: 已确定的PICOS框架或研究问题
  • 输出: 包含具体指标、定义、测量方法建议的清单

⑤ CRF制定智能体

  • 功能描述: 基于研究方案和观察指标自动生成一份结构化、符合规范的病例报告表CRF框架
  • 输入: 研究方案、观察指标清单
  • 输出: 一份可下载的CRF框架草稿如Word/Excel格式

⑥ 样本量计算智能体

  • 功能描述: 根据研究类型、检验水准、把握度、效应量等核心参数,提供科学合理的样本量估算结果
  • 输入: 引导式表单输入研究设计、α、β、效应量等
  • 输出: 详细的样本量计算结果,包含公式、参数说明和最终建议样本量

⑦ 临床研究方案撰写智能体

  • 功能描述: 基于科学问题、PICOS等信息自动生成一份初步但结构完整的临床研究设计方案
  • 输入: 已确定的科学问题、PICOS、样本量等
  • 输出: 一份包含研究背景、目的、设计、流程等章节的Word文档初稿
论文阶段

⑧ 论文润色智能体

  • 功能描述: 针对用户上传的稿件,提供专业级的语言润色,修正语法、拼写和表达方式
  • 输入: 上传的论文稿件Word/Text目标期刊名称可选
  • 输出: 一份带修订标记的润色后文稿及修改摘要说明

⑨ 论文翻译智能体

  • 功能描述: 提供专业、精准的中英互译服务,特别针对医学科研领域的术语进行优化
  • 输入: 上传的论文稿件Word/Text选择源语言和目标语言
  • 输出: 翻译完成的稿件,保留原格式

⑩ 方法学评审智能体

  • 功能描述: 从研究问题、方案设计、实施可行性和临床意义等维度,对研究方案或论文进行全面的方法学评审
  • 输入: 上传的研究方案或论文稿件
  • 输出: 一份评审报告,分点列出方法学上的优点、潜在缺陷及改进建议

⑪ 期刊方法学评审智能体

  • 功能描述: 模拟期刊审稿人视角,针对投稿文章中可能存在的统计学、方法学问题进行提问和挑战
  • 输入: 上传的论文稿件,目标期刊
  • 输出: 一份模拟的"审稿意见",列出可能被挑战的问题点

⑫ 期刊稿约评审智能体

  • 功能描述: 依据目标期刊的投稿要求,自动检查文章在格式、字数、参考文献规范等方面是否符合标准
  • 输入: 上传的论文稿件,目标期刊的投稿指南
  • 输出: 一份格式审查报告,清晰列出所有不符合项和修改建议

在智能体对话中的重点功能:

(1) 模型即时切换

  • 在对话界面用户可随时通过下拉菜单切换当前对话所使用的大语言模型如Gemini, DeepSeek等以应对不同任务
  • 用户选择模型,后续对话由新选定的模型驱动

(2) 临时附件上传

  • 在对话输入框旁提供上传按钮支持用户上传临时文件如PDF, Word供AI进行一次性分析、总结或评审
  • 用户上传的单个文件
  • AI基于该附件内容进行回答

(3) 知识库融合对话

  • 在任何对话窗口中,用户可随时通过"@"操作调用个人知识库中的分类让AI优先基于所选内容回答
  • 示例:@骨质疏松专题
  • 输出:融合了私有知识和通用知识的回答

(4) 答案溯源与引用

  • 当AI回答引用自个人知识库时必须生成清晰、可点击的引用标记
  • 回答中包含指向源文档具体位置的引用

(5) 对话内追加背景

  • 在项目对话中提供将AI回答"固定"到项目背景的功能
  • 用户点击"固定"按钮
  • 该条回答被追加到项目描述中

(6) 历史对话管理

  • 自动保存所有对话记录,支持用户在独立的"历史记录"页面中进行查看、搜索和筛选

2.1.3 核心功能:个人知识库 (Personal Knowledge Base)

个人知识库是用户专属的、私密的知识管理中心。

(1) 层级化管理

  • 采用两级结构进行管理
  • 第一级: 知识库列表,用户可在此创建、编辑知识库分类
  • 第二级: 知识库详情页,用户点击某个知识库后,可查看和管理该库内的所有文件

(2) 文档上传与处理

  • 支持在知识库详情页上传多种格式的文档

(3) 文档处理状态透明化

  • 每份上传的文档都应有明确的状态标识
  • 状态:"处理中""已就绪""处理失败"

(4) 失败原因提示

  • 若文档处理失败,系统需向用户提供清晰的原因说明

(5) 在对话中使用

  • 用户在智能体问答过程中,可以基于创建的个人知识库来进行问答

2.1.4 核心功能:历史记录 (History)

提供一个独立的顶级功能入口,用于管理用户的所有对话。

(1) 统一列表

  • 按时间倒序展示用户所有的对话记录

(2) 来源标识

  • 每条记录都清晰标识其来源是"全局快速问答"还是具体的某个"项目"

(3) 搜索与筛选

  • 提供强大的搜索框
  • 支持按项目、智能体、日期范围进行筛选
  • 帮助用户快速定位历史对话

2.1.5 辅助功能 (Support)

(1) 快速上手

  • 在侧边栏提供独立入口
  • 点击后展示产品核心功能引导和使用教程

(2) 帮助中心

  • 在侧边栏提供独立入口
  • 点击后展示FAQ和详细的用户手册

2.2 运营端/后台功能

(1) 仪表盘

核心数据概览

  • 以图表形式展示关键运营指标
  • 指标包括:
    • 今日活跃用户
    • 7日活跃用户
    • 总用户数
    • 今日对话数等
  • 目的:方便运营人员快速了解产品状态

(2) 智能体管理

智能体列表

  • 以列表形式展示所有前端可用的AI智能体
  • 支持上下线操作

(3) 智能体配置

配置管理

  • 管理员可新增、编辑智能体
  • 配置项:名称、图标、描述、所属分类等

(4) Prompt管理

核心功能

  • 管理员可为每个智能体精细化地调试和优化其背后的系统级提示词System Prompt
  • 支持版本管理
  • 重要性: 这是保障智能体专业性的关键

(5) 模型管理

模型接入与配置

  • 管理后台接入的各类大语言模型如Gemini, DeepSeek
  • 可配置:
    • API密钥
    • 调用参数
    • 启用/禁用状态

(6) 用户管理

用户列表与检索

  • 查看所有用户信息
  • 信息包括ID、手机号/邮箱、注册时间、状态
  • 支持多条件搜索

账户详情与操作

  • 管理员可查看单个用户的详情
  • 可进行的操作:
    • 设置/延长试用期
    • 启用或禁用账户
    • 查看操作日志

(7) 数据统计

用户行为统计

  • 查看用户的登录历史记录(登录时间)
  • 各个核心功能的使用频次统计(如不同智能体)
  • 目的:帮助分析用户偏好和功能热度

(8) 对话管理

用户历史对话查看

  • ⚠️ 重要: 需建立严格的权限分级
  • 访问条件:
    • 只有在处理用户申诉或技术排障时
    • 由授权的高级管理员
    • 在获得审批后
    • 才能查看经过脱敏和屏蔽隐私信息的对话数据

安全与隐私强化

  • 所有查看行为必须记录在案,以备审计

附录

版本变更记录

版本 日期 变更内容 修改人
v1.0 2025-10-10 初始版本从TXT转换为MD格式 项目团队

相关文档


文档维护者: 产品经理
最后更新: 2025-10-10