news 2026/5/8 21:24:35

杏林集:智汇中医-阶段四

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
杏林集:智汇中医-阶段四

前言

本阶段聚焦于RAG知识库的落地。我们完成了中医古籍、现代文献、食疗等知识库的向量化构建,实现了基于语义的实时检索。每个Agent在执行前自动获取权威知识片段,有效杜绝了AI“杜撰”条文,为辨证、推荐提供了可溯源的依据,让诊疗结果更专业、可信。

全文将从项目架构、RAG 全流程、知识库构建、检索优化等方面,完整介绍系统设计与落地实现。


1. 项目概述

1.1 项目目标

  • 基于中医经典与教材,构建专业、安全、可解释的中医养生助手系统
  • 实现多智能体分工:古籍、辨证、现代文献、食疗建议、食疗安全审核、调养方案
  • 通过 RAG 解决大模型辨证错误、食疗禁忌不安全等问题

1.2 系统架构

本项目采用多智能体 +增强型 RAG 混合检索架构:

  • 前端:分步问诊、历史会话、诊疗报告、报告导出
  • 后端:多智能体调度、会话记忆、增强型RAG 检索、向量数据库
  • 知识库:中医古籍、十四五规划教材、中国药典、食疗食忌专籍

2. 核心技术:RAG 检索增强全流程

采用经典 RAG 架构 + 高级检索优化策略,并进行中医领域深度适配

2.1 文档加载与预处理(Loader 层)

为适配中医多类型文献,我们实现统一文档加载器:

  • 支持格式:TXT / JSON / MD / DOCX

  • 功能:文本清洗、编码自适应、噪音去除

文件识别:遍历knowledge目录,按文件后缀匹配专属处理函数

内容加载:兼容多编码 / 多库读取文件原始文本

文本清洗:去除页码、冗余换行、乱码、页眉页脚等噪音

智能分块:按文档类型(古籍txt / 教材md / 药典doc)做层级 / 长度 / 语义分块

结构化输出:生成统一格式的知识块(含标题、来源、原文、标签等)

统一封装:所有格式最终输出为List[Dict],适配后续向量化检索

各格式文件详细处理逻辑:

  1. JSON 文件(.json):已预处理好的标准知识文件,直接读取复用
  • 处理步骤:UTF-8 编码直接读取 JSON 数据

    兼容两种格式:单个 JSON 对象 / JSON 数组

    自动添加来源目录元数据,直接并入知识块列表

    无清洗、无分块,原样保留结构化知识

  • 适用场景:提前整理好的中医标准知识库、标注数据

  1. TXT 文件(.txt):中医古籍专用格式,纯文本无格式,需通用处理
  • 处理函数:load_txt_file + load_ancient_txt + clean_ancient_text + split_with_overlap

  • 处理步骤:

    多编码兼容读取:自动尝试utf-8/gbk/gb2312/gb18030/latin-1,解决古籍乱码问题

    古籍专属清洗:去除多余空格、连续换行、纯数字页码,保留原文结构

    安全固定长度分块:512 字符 / 块 + 128 字符重叠,在句号 / 换行处智能断句,防止死循环

    内存保护:最大分块数限制(500 块),避免溢出

    结构化输出:标注「古籍」标签,生成「书名 + 段落号」标题

  • 适用场景:专为古文优化,保留语义连贯性,兼容老旧编码文本

  1. Markdown 文件(.md):中医十四五规划教材专用格式,带层级标题结构
  • 处理函数:load_md_textbook + clean_textbook_text + 层级拆分函数

  • 处理步骤:通用 UTF-8 读取,去除 Markdown 标题标记(#)

    教材专属清洗:删除目录、页码、冗余空行,只保留正文内容

    四级智能层级分块:

    • 一级:按第X章切分
    • 二级:按第X节切分
    • 三级:按一、/(一)小节切分
    • 四级:按自然段落 + 1500 字符长度切分

    结构化输出:生成章节>节>小节(段落)层级标题,绑定教材来源、多维度标签

  • 关键特性:深度适配教材结构化内容,分块精准对应知识点,无格式冗余

  1. DOCX 文件(.docx)
  • 核心定位:《中国药典》专用格式,带规范段落结构的 Word 文档

  • 处理函数:load_yaodian_docx + parse_yaodian_entry + clean_yaodian_text

  • 处理步骤:

    依赖python-docx库读取段落文本

    药典专属清洗:去除分页符、断行字符,合并被切断的语句

    按单味药智能切分:识别「中文药名 + 拼音 + 拉丁名」固定格式,自动拆分每一味药

    字段精准解析:提取【来源】【性味与归经】【功能与主治】【用法与用量】等标准字段

    结构化输出:自动生成药名相关问题、白话解释、关键要点、禁忌标签(毒性 / 孕妇禁忌)

  • 关键特性:药典定制化解析,将非结构化 Word 转为标准化中药知识库

2.2 中医知识库构建(Knowledge 层)

项目构建多个领域知识库

  1. agent_ancient

  2. agent_diagnosis

  3. agent_food_therapy

  4. agent_food_inspection

  5. agent_literature

  6. agent_rehabilitation

为保证稳定构建,我们对大部头古籍做领域精简,仅保留领域相关内容。

2.3 混合检索策略(Retrieval 层)

为兼顾语义理解 + 关键词强匹配,我们使用:

  • 向量检索:BAAI/bge-base-zh-v1.5(本地部署),负责语义相似度匹配
  • 关键词检索:负责精准匹配食材名、古籍原文短语
  • MMR 多路召回:在向量检索基础上引入最大边际相关性(MMR)算法,平衡相关性与多样性,避免检索结果冗余重复

融合策略:向量召回 + BM25 召回 + MMR 多样性召回 → 三路结果融合去重 → 送入重排层

MMR 核心价值:防止多个相似古籍条目挤占前列,保证知识来源的丰富性

2.4 检索优化策略(Enhance 层)

  1. 查询改写

    口语提问 → 中医术语扩展

    例:多梦 → 不寐、多梦、卧不安、心脾两虚

  2. MMR 多样性重排

    在检索召回阶段引入MMR(Maximal Marginal Relevance)算法:

    • 核心公式:MMR=argmaxDi​∈R∖S​[λ⋅sim1​(Di​,Q)−(1−λ)⋅maxDj​∈S​sim2​(Di​,Dj​)]

    • λ 参数调优:λ=0.7 平衡相关性与多样性

    • 作用:在保证检索结果与查询相关的前提下,惩罚与已选结果高度相似的内容,强制引入新信息

    应用场景

    • 用户问"脾虚吃什么",传统检索返回10个"山药"相关结果;MMR 重排后返回:山药、莲子、茯苓、薏米、大枣等多样化食材

    • 古籍检索时,避免只返回《千金要方》的相似段落,强制引入《食疗本草》《饮膳正要》等不同来源

    3 .Rerank 精准重排

    模型:BAAI/bge-reranker-base

    作用:把最相关的证型、病因、食疗方、禁忌依据排到顶部,作为最终生成层的输入

    两阶段重排流程

    1. MMR 多样性重排:在召回阶段做多样性过滤

    2. Rerank 精准排序:对精简后的条目做深度相关性排序,输出 Top-10

3. 技术核心

三路召回 + 双重重排显著提升效果

  • 向量负责语义理解

  • BM25 负责精准匹配

  • MMR 多路召回负责保证结果多样性

  • MMR 重排负责消除冗余

  • Rerank负责最终精准排序

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/8 21:22:22

零基础学 Python 第一天|从环境搭建到基础语法,保姆级复盘

前言 纠结了很久,终于下定决心入门编程,首选 Python —— 身边很多程序员朋友都推荐,说它语法简洁、上手最快,即使是完全没有编程基础的新手,也能快速写出可运行的代码。今天是 Python 学习的第一天,从 0 到…

作者头像 李华
网站建设 2026/5/8 21:21:35

SpringBoot 国密 SM4 配置加密(工具类实现)

SpringBoot 国密 SM4 配置加密(工具类实现)前言一、核心依赖二、YML 配置文件(application.yml)三、国密 SM4 加密解密工具类(Sm4Utils)四、配置文件读取解密工具类(ApplicationConfigUtils&…

作者头像 李华
网站建设 2026/5/8 21:20:28

移动芯片行业生存法则:从四五千人团队规模看技术平台化竞争

1. 移动芯片行业的“人海战术”:一个被低估的生存门槛最近和几个还在半导体行业里摸爬滚打的老朋友聊天,话题又绕回了那个经典的问题:现在做手机芯片,到底得养多少人?这听起来像个管理学的课题,但实际干过的…

作者头像 李华
网站建设 2026/5/8 21:13:00

2026最权威的六大AI辅助论文网站解析与推荐

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 于当下的学术写作范围里头,AI工具已然变成了能够提高效率以及质量的关键辅助方式…

作者头像 李华
网站建设 2026/5/8 21:12:46

Pixel2Geo 厘米级定位,危化园区无感全域管控

Pixel2Geo 厘米级定位,危化园区无感全域管控 前言 危化园区高危场景复杂、管线密集、动火作业频繁、安全管控容错率极低,传统UWB、GPS、穿戴标签定位存在部署成本高、信号遮挡失效、跨相机断链、人员抵触管理等诸多局限,无法实现全域不间…

作者头像 李华
网站建设 2026/5/8 21:10:41

山东大学项目实训3——推荐算法引擎与地图 LBS 服务的深度集成

一、 进展概述 近两周,项目进入了最核心的业务逻辑开发期。我主要负责了“需求匹配与智能推荐智能体”的开发,并完成了高德地图 SDK 的深度集成。目前,系统已实现从结构化请求到具体服务点的精准映射,并能根据机场实时状态&#x…

作者头像 李华