KAQG:一种用于生成难度可控问题的知识图谱的增强的RAG系统(论文大白话)
1. 论文背景
这篇文章主要解决的就是在教育领域通过教材去生成的实际考试的问题。论文中提到如果采用目前的RAG+LLM去生成问题最大的问题就是生成的问题难度不可控。所以它整体就采用了知识图谱+RAG+LLM去检索相关资料,然后生成针对特定学科的考试问题,并在生成问题的评估和系统架构设计上采取了优化。
2.系统架构
整体系统架构图
基于DDS-发布订阅模式的系统架构
从系统架构图上,可以看到整个系统主要涉及到以下几个模块:
1. KAQG-Retriever
这个模块主要就是检索器,第一个是负责将涉及到的多种异构的数据源(文本,pdf,图像,视频,音频)统一格式转化为文本。然后利用LLM从转化为文本中生成知识图谱,形式就是个三元组(首实体,关系,尾实体),用于后面的KAQG-Generator去生成考试问题。其次就是负责文档检索和调优。
2.KAQG-Generator
这个模块主要是利用知识图谱中结构化知识来生成问题,并对这些问题进行特定的评估。
备注:第二张图主要展现的就是多agent的一个模式,将数据抽取,问题生成和问题评估这些作为不同任务去交给不同的agent处理,同时图的最中间的还放了一个DDS-Publish-Subscribe-Bus,像kafaka一样来做数据订阅和分发的机制。
3.代码复现
官方代码:
https://github.com/mfshiu/kaqg
https://github.com/mfshiu/AgentFlow
个人魔改: