基于大模型的开源架构下的知识图谱构建
随着大模型的蓬勃发展,知识图谱的技术门槛日渐降低,之前提取知识关系是一个知识图谱的核心难点,即使构建的用户界面、业务流程、图数据存储、知识标记都非常完美,但是提取知识这块重中之重一直没有太优秀的解决方案。
目前各种大模型不断升级,智能不断提高,基于大模型实现的,开源架构的知识图谱变得操作性强,易落地,并且知识提取准确、高效。
本文重点介绍基于大模型构建的,开源架构的知识图谱实现思路。
整体的架构思路可以参考下图,
基于大模型的知识图谱构建思路
基于大模型构建知识图谱有如下的几个步骤,
1. 给大模型喂数据,让大模型提取知识关系
2. 获取知识关系,存储到图数据库
3. 通过WEB前端,展示知识图谱
步骤整体来说,相对比较简单,可以参考下图:
接下来,我们分别讲一下中间各个元素的实现方式,
1. 大模型
大模型可以采用外部大模型,比如OpenAI的ChatGPT、百度的文心一言、阿里的通义千问等等。
大模型也可以采用开源的大模型本地化部署,通常本地化部署采用ollama来部署,常见的大模型有Llama3、Phi-3等等。
2. 图数据库
图数据库不是指存储图片,而是存储图谱关系,一般是类似三元数据关系,A--(关系)-->B,常见的图数据库有Neo4J、Nebula Graph、GraphDB等等。
基本上大部分图数据库都可以满足知识图谱的存储,没有特别要求,我们可以选择其中任意一个,也可以选择市场占有率高社区支持更好的一种,比如Neo4J、Neula Graph。
3. Web展示
Web展示一般通过Javascript来实现,当然Neo4j也自带了Web的js界面,不过通过统一的开源的JS库会有更多应用和灵活定制,开源的JS经过对比了大量的图谱实现,我们重点推荐的有如下几个,
3.1 Graphvis
注意Graphvis而不是Graphviz,GraphVis是由原生JavaScript开发的一款交互式图数据可视化工具库,使用简单,性能高效,内置丰富的图布局和分析算法,有中文说明和示例,官网网址 http://www.graphvis.cn/
3.2 Cytoscape
Cytoscape是一款老牌的网络图谱展示库,尤其应用在网络关系拓扑、生物分子关系等方面,在科研领域里面有相当多的应用,社区支持也比较好。
3.3 Echarts
ECharts 是一个由百度团队开发的开源可视化库,ECharts 提供了丰富的图表类型,包括折线图、柱状图、饼图、散点图、雷达图、地图、K线图、仪表盘、热力图、平行坐标图、桑基图、漏斗图、箱型图等。
Echarts的优点是功能强大,缺点也是一样,功能多余强大,而不是专注做网络关系、拓扑关系的,所以略显臃肿。
结论
综上,通过上述架构,可以快速地搭建一个学科知识图谱,基于开源的框架架构优点是容易扩展和修改,当然缺点是选项难(可选项多),调试困难(出Bug解决需要专业人员),还有就是开发成本。
我们也通过Drupal CMS + 大模型 + 图数据库完整的实现了知识图谱,如有需要可以加作者微信获取详情。
创作不易,转载请注明出处!
更多Drupal CMS相关内容,请参考我们其他相关文章,
7、如何通过Drupal Rector来快速升级Drupal