基于RAG架构搭建医疗智能问答系统
LLM大语言模型的出现,让许多系统或产品都有了更大的构建空间。这篇文章介绍了自己基于主流的RAG架构搭建一个医学智能问答系统的过程,一起来看看本文的梳理和解读。医疗智能问答是一个比较经典的医疗应用场景,在该场景下用户首先在对话系统中描述自己的症状,然后问答系统会根据输入的信息回复初步的医学建议。传统实现方法如规则引擎和知识图谱等由于缺乏对语境和语义的深层理解,导致无法处理过于复杂的问题。
LLM大语言模型的出现,让许多系统或产品都有了更大的构建空间。这篇文章介绍了自己基于主流的RAG架构搭建一个医学智能问答系统的过程,一起来看看本文的梳理和解读。
医疗智能问答是一个比较经典的医疗应用场景,在该场景下用户首先在对话系统中描述自己的症状,然后问答系统会根据输入的信息回复初步的医学建议。
传统实现方法如规则引擎和知识图谱等由于缺乏对语境和语义的深层理解,导致无法处理过于复杂的问题。随着大语言模型(LLM)的出现,医疗智能问答系统处理更加复杂的语境以及更加准确的结果输出有望实现,所以笔者决定尝试基于当前主流的RAG架构搭建一个医学智能问答系统。
一、产品目标
打造一个基于智能问答系统的“数字全科医生”
这里“全科医生”不是“全能医生”的意思,全科医生一般是指在基层医疗机构(如社区卫生服务中心、乡村诊所等)工作的医生,全科医生通常承担着基层的基础医疗服务,笔者对这个系统的定位是可以提供一些初步的诊断、患者教育和科普功能,而不是用它提供治疗方案(能力边界)。
具体可以拆分以下几个子目标:
1.能根据用户输入的信息,初步诊断是否存在病理性的因素以及可能的病因;
2.能提供非治疗方案的建议,如生活方式干预、引导去医院做进一步的检查等;
3.尽量降低错误率,做到“宁缺毋滥”;
4.尽量避免提供直接的用药方案指导或者治疗方案。
我给大家准备了一份全套的《AI大模型零基础入门+进阶学习资源包》,包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。😝有需要的小伙伴,可以VX扫描下方二维码免费领取🆓
二、RAG架构及其工作流程
RAG(Retrieval Augmented Generation)通常翻译为检索增强生成,所以它的核心是“检索”,用户在使用LLM回答问题之前先“检索”外挂知识库的信息,然后将检索到的信息提交给LLM,LLM在“学会”匹配的知识库的内容之后再去生成回答,这样就可以有效减少LLM“幻觉”现象。
RAG工作流程大致如下:
第一步:创建知识库
1.首先要对获取的数据做基础的清洗保证质量;
2.然后系统对数据进行“分块”(Chunk)处理,通常较小的文本片段可以使RAG系统更快、更准确地发现相关上下文;
3.再进一步就是将这些Chunks转换成计算机可以理解的数据也就是向量化(Embedding);
4.最后将获取的向量信息存储在向量数据库(Vector DB)中备用。
第二步:检索信息
当用户输入问题时,首先会对输入的“问题”向量化,然后在向量数据库中查询匹配的结果,通过排序规则对结果进行再次排序(Rerank),最后返回最匹配的结果。
第三步:生成结果
系统将匹配的Chunks数据通过设计好的提示(Promopt)模板传递给LLM,LLM基于基于输入的Chunks润色加工后返回问题的答案。
PS:这里只是简单的介绍一下RAG架构的工作流程,实际项目中每一步都包含很多优化策略和配置参数,比如Chunk的大小选择,Embedding模型的选择以及Rerank的规则等,在后面介绍模型优化环节时,将会结合具体问题分享自己的优化思路。
三、基于FastGPT搭建基础问答系统
FastGPT是一个开源的、基于 LLM 的知识库问答系统,相对于langflow,我们可以方便的查看模型各个环节的运行数据(比如知识库的引用情况、token使用等),也支持支持可视化工作流编排,比较适合做调试和扩展应用。
1. 在线搭建
FastGPT提供了线上直接使用的方式,使用流程比较简单,大致分为4步:
1.账号注册登录;
2.创建自己的知识库;
3.创建自己的应用;
4.选择应用关联的数据库。
建议大家自行到官网查看操作手册,非常容易上手,访问地址如下:https://fastgpt.run
以上一个使用示例,我们可以查看每一次对话引用的知识库内容、上下文信息以及运行时间等。
但是需要注意的是,模型的调用都是需要收费的,虽然注册后就会赠送5块钱的额度,但是基本也只够体验一下,要搭建一个完整的项目是远远不够的,所以前期尽量先用小样本数据创建知识库(Embedding也是要花钱的)体验整个流程。
2. 本地部署
FastGpt也提供了多种本地部署的方法,推荐使用 docker-compose 进行部署,官方文档如下
https://doc.fastgpt.in/docs/development/docker/, 需要一点编程基础,大部分步骤跟着文档操作就没有问题。
在FastGPT中我们需要用到2个模型,分别是LLM和Embedding model,FastGPT默认采用的是LLM是chagGPT,Embedding model是openAI的Embedding-2,这两个模型调用都是要收费的,我们可以用更便宜的国产大模型替换使用。
现在基座大模型正处于激烈竞争阶段,平台都会送一些赠送token额度,建议大家如果只是想自己尝试做一个demo可以采取这种低成本的方式,FastGPT也提供了通过接入OneAPI的方式来实现对不同大模型的支持。
这里选用的LLM是ChatGLM,Embedding model是M3E,大概的操作的方法是首先在one API平台分别创建国产LLM和Embedding的模型渠道;
然后在FastGPT的配置文件加入我们要使用的模型,示例如下:
“qaModels”: [
{
“model”: “gpt-3.5-turbo-16k”,
“name”: “GPT35-16k”,
“maxContext”: 16000,
“maxResponse”: 16000,
“inputPrice”: 0,
“outputPrice”: 0
},
//新增chatglm
{
“model”: “chatglm_pro”,
“name”: “GLM”,
“maxContext”: 16000,
“maxResponse”: 16000,
“inputPrice”: 0,
“outputPrice”: 0
}
],
最后,更新运行就可以在界面上选择我们添加的模型来使用了。
当然,由于篇幅有限,这边没有介绍非常详细的部署细节上,这边强烈建议没有任何编程经验产品同学先使用在线的环境去体验整个应用流程,毕竟发掘工具的价值、寻找好的应用场景才是我们核心能力。
如何学习AI大模型 ?
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,故此将并将重要的AI大模型资料。包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。【保证100%免费】🆓
对于0基础小白入门:
如果你是零基础小白,想快速入门大模型是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。
😝有需要的小伙伴,可以VX扫描下方二维码免费领取🆓
👉1.大模型入门学习思维导图👈
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过AI大模型的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。(全套教程扫描领取哈)
👉2.AGI大模型配套视频👈
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。
👉3.大模型实际应用报告合集👈
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(全套教程扫描领取哈)
👉4.大模型落地应用案例PPT👈
光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(全套教程扫描领取哈)
👉5.大模型经典学习电子书👈
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。(全套教程扫描领取哈)
👉6.大模型面试题&答案👈
截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。(全套教程扫描领取哈)
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习
这份完整版的 AI 大模型学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓
更多推荐
所有评论(0)