医疗管理系统八股文

介绍一下你的项目架构?

2023-10 ⾄ 2023-12

这个项目整体采用前后端分离架构。

后端基于:

  • Spring Boot
  • MyBatis
  • Redis
  • MySQL
  • XXL-Job

构建业务服务。

前端包含:

  • 若依管理后台
  • UniApp医护端
  • UniApp患者端

AI智能体部分采用:

  • Ollama本地开源模型
  • 阿里百炼大模型服务

结合RAG知识库增强和Function Calling实现业务Agent。

为什么采用Ollama+阿里百炼混合模型?

OLLAMA 隐私安全 ollama方便

阿里百炼混合模型 springAI AALBB 适配阿里百链 适配RAG 工作流 等复杂操作

如何判断请求走本地模型还是云模型?

什么是Agent?和普通Chat有什么区别?

chat无外部能力

agent可以自主思考的AI

记忆

RAG

工具

多AGENT

任务调度 -并发,重复

汇合

用户输入

↓

任务规划

↓

调用工具

↓

执行任务

↓

总结结果

Function Calling是什么?

Function Calling让大模型可以调用后端定义好的业务函数。

发送信息,携带工具

大模型 返回工具

工具调用路由调用对应工具,得到结果,组装得到回答

你的挂号Agent流程?

用户输入

|

Agent理解意图

|

判断是否需要工具

|

调用Function

|

查询医生信息

|

查询排班

|

创建预约

|

返回结果

queryDepartment() queryDoctor() querySchedule() createAppointment()

为什么需要RAG?

上下文无法满足,需要减轻上下文

RAG通过外部知识库增强。-知识库过滤命中、

医疗知识库:

复制代码
疾病指南
药品说明
医院规则

用户:

"糖尿病饮食注意什么"

流程:

问题向量化

↓

检索相关知识

↓

拼接Prompt

↓

LLM回答

RAG具体流程?

离线阶段:

医疗文档

|

文本切片

|

Embedding模型(文本意图理解)

|

生成向量

|

保存向量数据库
用户问题 | Embedding

| 向量检索 |

TopK相关内容

| Prompt增强

| LLM生成

为什么需要文本切片?

数据太长,匹配精确度下降,切片后进行向量化(向量模型)

问题匹配精度下降。

所以:

例如:

10000字文档

切:

500~1000字chunk。

每个chunk生成独立向量。

如何提高RAG准确率?

回复优化 -增加命中

es优化 再次增加命令

选取好用的向量模型

AI自行判断是否足够

重排序

XXL-Job如何实现RAG增量更新?

每天定时任务扫描数据。

相关推荐
CV工程师丁Sir1 小时前
ArkWeb 手记 04|DevTools 调试与缓存清理
java·spring·缓存·harmonyos
Sarvartha8 小时前
final 关键字
java·开发语言
2601_952047798 小时前
单一策略深度教程:用轻易云把集成任务的报错实时推送到钉钉机器人
java·机器人·钉钉
数据狐(Datafox)9 小时前
淘宝图片搜索 API 落地实战:基于以图搜货搭建跨境电商选品系统
java·大数据·微服务
Escalating_xu10 小时前
【C 语言】数据在内存中的存储:补码、大小端、整型陷阱与 IEEE 754 全解析
java·c语言·网络
灯澜忆梦11 小时前
【面向对象编程C++】| 基础语法
java·c++·算法
一个风轻云淡11 小时前
GCC 和 GDB命令简单解读
java·linux·前端
省钱兄--zs11 小时前
西安24小时自助健身房解决方案实战:系统开发与部署全流程指南
java·spring boot·系统架构·intellij-idea·需求分析