1. 项目背景与核心目标
这个项目源于我们在软件工程创新实训课程中的一次技术探索。当时我们注意到,老年群体在获取专业医疗知识时面临诸多困难:复杂的医学术语、冗长的诊疗指南、碎片化的信息来源。而市面上大多数健康助手要么过于简单(仅提供通用建议),要么过于专业(直接复制医学文献)。
我们的核心目标是构建一个能真正解决这个痛点的AI助手:
- 专业可信:基于权威医学资料生成回答
- 通俗易懂:将专业内容转化为老年人能理解的语言
- 可追溯:每个回答都能找到出处
- 低门槛:最终要通过语音交互降低使用难度
选择便秘知识作为切入点有两个原因:一是老年便秘发生率高但容易被忽视,二是相关医学指南结构清晰适合做技术验证。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 技术架构设计解析
2.1 整体工作流程
系统采用经典的RAG(Retrieval-Augmented Generation)架构,但针对医疗场景做了特殊优化:
-
文档预处理流水线:
- PDF解析 → 文本清洗 → 智能分块 → 向量化 → 持久化存储
- 特别处理了医学文献中的表格、图表注释等非连续文本
-
查询处理流程:
- 用户提问 → 向量检索 → 结果排序 → Prompt构建 → LLM生成 → 结果验证
- 设计了双重过滤机制确保检索结果相关性
2.2 关键组件选型
文档解析器选型对比:
| 工具 | 优点 | 缺点 | 选择理由 |
|---|---|---|---|
| PyMuPDF | 保留原始排版,提取精度高 | 需要处理特殊字符 | 医学文献格式复杂 |
| pdfplumber | 表格提取能力强 | 对扫描件支持差 | 不适用 |
| Apache Tika | 支持多种格式 | 需要J |
