如何用知识图谱+医疗问答对合成推理数据?兼看Deep Research的两个复刻实现拆解

一、基于知识图谱+医疗问答对合成推理数据思路MedReason

基于知识图谱+问答对合成推理数据工作。《MedReason: Eliciting Factual Medical Reasoning Steps in LLMs via Knowledge Graphs》,(https://github.com/UCSC-VLAA/MedReason,https://huggingface.co/collections/UCSC-VLAA/medreason,https://arxiv.org/pdf/2504.00993),一个很工程性的论文,从学术角度上,是个不错的思路,可看看:

图片

实现思路很简单,步骤如下:

图片

1、从医疗数据集中提取问答对,然后使用LLM提取问答中的实体

数据这块直接收集的开源数据集,如MedQA、MedMCQA、PubmedQA等,实体抽取这一步用llm提示prompt做;

图片

2、将这些实体映射到医疗知识图谱中的相应节点

这一步经过三个步骤,一个是Exact Match精确匹配,一个是相似度匹配Similarity Match,相似度阈值>0.85,然后最终再送LLM去做rerank做最终选择,prompt如下:

图片

这一步也是通过写prompt送llm,找到相关的:

图片

3、识别知识图谱中连接问答实体的所有推理路径,并指导LLM剪枝不相关的路径

里面有个细节,为了避免过度思考,所以就使用shortest paths算法找到所有的path路径,但是路径有很多,所以让llm去做剪枝,写prompt送llm进行推理

图片

4、最终的推理路径作为结构化数据来源,指导LLM生成医学上基于事实的CoT解释。

图片

但是,难点是如何保证形成的推理数据是正确的,并且与结果有明显的指向性。所以有了第5步,推理数据过滤,方式是基于生成的推理path去获取答案来后验,并且去除答案不对的,如下的prompt:

图片

虽然,这一步骤,成功的将45K数据降低到了32K,但是,这个工作假设性很强,路径导致了答案,大模型用了路径,且人相信这种解释。所以,这类工作切的可解释性的点,思想很粗暴,是个工程性论文。

整个流程,具象化就是如下:

图片

从技术上来讲,整个路线的核心是剪枝不相关的路径,因为问题和答案都已知了,也就是说,问题中的实体跟答案中的实体都是已知的,只需要找到所有的可能路径,然后去除不相关的路径就行了,这个很工程化,亮点在于处理流程,还是比较依赖llm

这个工作后续的方向,可以往下走:做归因分析,而不是现在的这个纯工程化流水线,一个readme就能说清楚的工作。还有个一个更大的使用障碍:在真实场景中,并不能有对应的kg,这回使得这种方案的泛化性很差。

此外,图谱中的path,本身是有跳跃性的,这个很容易让幻觉钻空子。所以,这个其实是高度假设性的,很难真实奏效;工作的漏洞很多的;有个causalrag,里面提到个思路很好,就是kg中的是相关,而不是causal

二、再看Deep Research的两个复刻实现流程

同样还是Deep Research的复刻,再来看看对应的实现,有两个工作,一个是u14app-deep-research,一个是deepresearch-local,重点看实现流程。

2、Local Deep Research

Deepresearch的另一个复刻版本,地址在:https://github.com/LearningCircuit/local-deep-research,特点是有两种研究模式。

一种是快速摘要,快速得出结果(30秒-3分钟),包含关键信息和引用,适合快速探索和回答简单问题,支持并行使用多个搜索引擎,在相关情况下可以包含表格和结构化信息;

一种是详细报告模式,进行包含结构化章节、目录和深入探索的全面分析,创建结构合理的专业级报告,为每个章节单独进行研究,以确保全面覆盖,在各章节之间整合信息,实现连贯分析,包含引用和参考跟踪。

我们来看下实现,对应的报告生成逻辑在:https://gitcode.com/gh_mirrors/lo/local-deep-research/blob/main/src/local_deep_research/report_generator.py,流程分为三个步骤:

图片

确定报告结构:调用 _determine_report_structure 方法,分析初始发现的内容,确定报告的结构(包括章节和子章节)。->研究并生成各章节内容:调用 _research_and_generate_sections 方法,针对每个章节和子章节进行研究并生成内容。->格式化最终报告:调用 _format_final_report 方法,将章节内容和目录结构组合成最终的报告格式。

更详细的流程如下,可以看看数据流的具体走向:

图片

其中有个点比较重要,就是调整迭代深度,例如1次迭代快速回答事实性问题(约30秒);2-3次迭代需要深入探索的复杂主题(2-3分钟);3-5次迭代进行全面研究并进行后续调查(5分钟以上)

另外就是集成的数据集,包括维基百科、arXiv、PubMed、SemanticScholar等学术资源,以及SearXNG、BraveSearch、SerpAPI(用于谷歌结果)等网络自资源。

图片

这里面提到的数据集访问方式、不同数据集的比较,对于我们做AI搜索,以及学术领域的,都可以直接借鉴,挺好的资源

2、u14app-deep-research

这个项目的主要差异性性是快速,地址在:https://github.com/u14app/deep-research,官方的图太大,显示不清,如下:

图片

实现流程思路并不复杂,流程从“研究主题”开始,逐步展开为输入主题、思考、提出想法等步骤,即:输入研究主题->使用本地研究资源(可选)->开始思考(或重新思考)

然后是提出的想法,系统根据用户的研究主题提出问题以确认研究方向->回答系统问题(可选)->撰写研究计划(或重新撰写研究计划)->系统输出研究计划->开始深入研究(或重新研究)->系统生成搜索引擎结果页面(SERP)查询

在“信息收集”阶段,分为**“初步研究”和“深入研究”**,并详细描述了数据收集和要点提取的过程。

初步研究步骤为:开始第一轮数据收集->根据SERP查询检索本地研究资源->从本地研究资源中提取与SERP查询相关的学习要点->根据SERP查询从互联网收集信息->从互联网上收集的材料中提取与SERP查询相关的学习要点->完成第一轮信息收集

深入研究(此过程可以重复),步骤为:提出研究建议(可选)->开始新一轮信息收集(过程与初步研究相同)

最终,流程可以进入“写作请求”,生成报告并选择是否重新生成报告。实现步骤为:写作请求(可选)->将所有研究材料总结为一份全面的Markdown报告->包含所有来源和参考文献->以清晰易读的格式组织信息->重新生成研究报告(可选)

根据上述流程,可以整理成mermaid流程图,如下:

图片

从上面这个流程图来看,因为有了许多的可选项,所以可以选择快速版本跟深度版本。

最近喜欢上了mermaid,其实还是蛮清晰的,一目了然,比较适合梳理流程

总结

本文主要介绍了基于知识图谱+医疗问答对合成推理数据思路MedReason,可以看到其作为一个数据工程中做的流程设计。另外,还是流程设计上,我们看了两个Deep Research的两个复刻实现流程,仔细体会,都是很有收获的。

最后的最后

感谢你们的阅读和喜欢,作为一位在一线互联网行业奋斗多年的老兵,我深知在这个瞬息万变的技术领域中,持续学习和进步的重要性。

为了帮助更多热爱技术、渴望成长的朋友,我特别整理了一份涵盖大模型领域的宝贵资料集。

这些资料不仅是我多年积累的心血结晶,也是我在行业一线实战经验的总结。

这些学习资料不仅深入浅出,而且非常实用,让大家系统而高效地掌握AI大模型的各个知识点。如果你愿意花时间沉下心来学习,相信它们一定能为你提供实质性的帮助。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

大模型知识脑图

为了成为更好的 AI大模型 开发者,这里为大家提供了总的路线图。它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

经典书籍阅读

阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。

在这里插入图片描述

实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

在这里插入图片描述

面试资料

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下

在这里插入图片描述

640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值