AI Agent 智慧医院智能导诊就诊系统
项目简介:项目简介:基于医学知识库 RAG、向量检索、数据库驱动工具中心、Spring Boot + LangChain4j、Function Calling,实现文档切分与 Embedding 向量化、按库收窄的内存余弦 topK 检索、SSE 真流式多轮预问诊、数据库驱动 ReAct 分诊 Agent 多轮自主取证、工具注册表真开关与调用日志、科室医生查库核验、挂号乐观锁扣减、Agent 执行时间线与 AI 调用观测、就诊运营,覆盖从预问诊、智能分诊、在线挂号到接诊写病历与运营复盘的完整就诊闭环。
本项目覆盖的技术点
学完能答的面试题
学完这个项目,下面 24 道面试题你都能结合项目细节讲出来。题目在 AIGC 面试刷题网可以免费看。
is_red_flag 直接转急诊科,这条拦截写死在代码里。系统架构
一张图看清整个系统的分层与核心链路,点开可缩放查看细节。
- 1接入层:患者 + 管理端患者智能导诊、预问诊流式对话、查号源挂号;管理端维护科室医生排班、医学知识库、工具中心,看 Agent 时间线、调用观测和运营看板。
- 2医学知识库 RAG · 不装 PGVector知识片段向量化后存进 MySQL 普通表的文本列,按库收窄候选后在内存算余弦相似度取 TopK,一个 SQL 脚本就能初始化。
- 3工具中心:真开关、真数据
mcp_tool表按启用状态现查现建工具池,停用的工具模型下一次真的调不到;调用成功失败都写日志。 - 4多步 ReAct 分诊 Agent后端只交工具清单和循环上限,调几次、调哪几个由模型逐轮决定;每一步落
agent_step,前端时间线可回放。 - 5AI 输出先核验再落库推荐科室必须真实存在,推荐医生必须当天有可挂号排班,都由代码查库重算;命中危急征象直接转急诊科。
- 6分诊命中率统计推荐结果被拿去挂号就置为已挂号,看板按推荐科室统计「推荐了多少次、多少次真的挂了号」,管理员可据此在后台调整 Prompt 与症状标签权重。
- 7存储与观测底座MySQL 8 共 23 张表,向量也在里面;统一 AI 出口写
ai_usage_log,看板三组数字从业务表现场聚合,不建统计表。
技术栈
用到的框架、中间件和模型。
技术难点与解法
每一项优化都针对一个真实问题,讲清楚问题、做法和背后的原理。
01Agent 输出要可信,而不是「看起来对」
- 问题
- 模型会编造科室、推荐一个当天没出诊的医生,甚至漏掉危急征象。
- 做法
- AI 自由发挥和系统核验分层:推荐科室反查科室表,推荐医生反查当天排班余号,危急征象由症状标签库判定并直接转急诊,核验通过才落库。
- 原理
- 模型只负责「选科室 + 写依据」,页面展示的科室与医生都取查库结果,不采信模型原话。
02停用一个工具,模型要真的调不到
- 问题
- 界面上有个工具开关,代码里却写死了工具列表,关了也照样被调用。
- 做法
- 工具编码、说明、入参全在
mcp_tool表,每次运行按「启用」状态现查现建工具池;调用成功失败都写mcp_tool_call_log。 - 原理
- 管理页看到的,就是模型这一次能调到的。
03自主决策的过程不可见
- 问题
- 一次分诊调几次工具、调哪几个,每次都可能不同,出了问题不知道模型当时看到了什么。
- 做法
agent_run/agent_step/mcp_tool_call_log三张过程表加执行时间线页,再用ai_usage_log记录每次模型调用的 Token 和耗时。- 原理
- 每一步的工具、入参、返回、耗时都能回放,才能从结果一路反查到原因。
04怎么衡量 Agent 推荐得准不准
- 问题
- Agent 跑成功不等于推荐得对,推荐质量没有数字就没法调优。
- 做法
- 分诊结果被患者拿去挂号后置为「已挂号」,运营看板按推荐科室统计「推荐了多少次、多少次真的转成挂号」。
- 原理
- 把主观的推荐质量变成可以持续观察的命中率,作为调 Prompt 和症状标签权重的依据。
05不装向量库也能做 RAG
- 问题
- 为了向量检索单独装一套 PostgreSQL + PGVector,本地复现和运维成本都高。
- 做法
medical_chunk_vector用文本列存 1024 维向量,按知识库收窄候选后在内存算余弦相似度取 TopK。- 原理
- 中小规模下 MySQL 普通表够用,23 张表一个 SQL 脚本就能初始化;数据量大了再换专用向量库。
功能清单
按角色看这个系统都能做什么。
医院基础数据4 项
- 科室与医生管理维护科室、医生资料并开通医生账号
- 排班与号源管理维护医生排班和号源,支持排班日期一键顺延
- 患者档案查看与维护患者档案
AI 能力3 项
- AI 模型配置与 Prompt 模板聊天与向量模型配置,支持连通性测试
- 医学知识库文档上传解析、切片查看、向量化与相似度检索
- 工具中心工具注册、真启用开关、工具调用日志
统计与观测3 项
- 就诊运营看板挂号量、号源使用率、分诊推荐命中率,按科室 / 医生 / 推荐科室汇总
- Agent 执行时间线查看每次分诊的运行和步骤
- AI 调用观测按用途统计调用次数、成功率、Token 和耗时
页面截图
共 11 张真实运行截图,点击大图查看高清原图。
点击放大你将获得
购买后可以拿到的全部内容。
喂饭级学习教程23 章
从科室、医生、排班等医院基础数据讲起,到医学知识库、工具中心、预问诊、分诊 Agent 和运营看板,按开发顺序一章一章讲。
完整源码 + SQL23 张表
Spring Boot 后端 + Vue3 前端完整源码,一个 SQL 脚本初始化全部表和数据,向量也存在 MySQL 里。
配套面试文档
电梯陈述、架构与选型、SSE 流式、ReAct 分诊与工具中心深挖、高频面试题和难点包装,面试时照着讲。
环境安装文档
JDK、MySQL、Node.js、Maven 等开发环境的安装与配置。
项目运行文档
数据库初始化、前后端启动、模型配置,从零把项目跑起来。
常见问题
下单前最常被问到的几个问题。
这个项目是 Java 还是 Python?
后端是 Java(JDK 21 + Spring Boot 3.5 + LangChain4j),前端是 Vue3。
模型需要自己准备吗?
需要自己准备两个 API Key:DeepSeek 用于预问诊和分诊,阿里云百炼用于医学知识向量化,在管理端「AI 模型配置」里填入即可,改完立刻生效。模型都走接口调用,不需要显卡,也不用装向量数据库。
基础薄弱能学会吗?
教程是喂饭级的,从登录注册、统一返回这些工程底座讲起,每章都有验证步骤。基础不够的话,可以先按上面的「学习路径」从基础项目学起。
能写进简历、用作毕业设计吗?
可以,配套面试文档里有项目介绍、难点包装和高频追问,照着就能讲清楚。至于毕业设计,有小伙伴问过我,统一回答一下:AI 实战库板块的项目拿去做毕业设计,就四个字——降维打击。
源码能用于商业项目吗?
源码和教程本质上是给大家学习、提升技能的。如果需要商用,自己二次开发一下也没问题,但禁止原项目 + 教程转手倒卖。我是一个程序员,能看到你们学习我的教程提升能力,能听你们叫我一声大佬,挺幸福的!知足~
售后答疑
买完不是结束跟着教程学习,遇到问题不用自己硬扛。
- 购买前请观看完整功能演示视频和了解左侧项目信息
- 源码和教程资料属于虚拟产品,下单后不支持退款