嬴图 | LLM+Graph:大语言模型与图数据库技术的协同

前言

2022年11月以来,大语言模型席卷全球,在自然语言任务中表现卓越。尽管存在一系列伦理、安全等方面的担心,但各界对该技术的热情和关注并未减弱。

本文不谈智能伦理方面的问题,仅集中于Ulitpa嬴图在应用中的一些探索与实践,看看大模型+图技术 是如何相互辅助、互相促就的。当然,从最终的易用性和体验上来说,企业(客户)才是这两项技术在珠联璧合后的最终受益者!

01 大模型的局限性

先进的大语言模型(Large Language Model,以下简称大模型),如GPT系列,规模庞大,拥有数百甚至数千亿的参数,在许多复杂任务中展示出巨大的潜力。它们在大量的文本数据上经历了广泛的预训练(Pre-Training),这一过程会耗费大量资源和时间。 

很容易理解的是,模型的知识受限于它所训练的数据。训练数据都有一个截止日期(Cutoff Date)。例如,GPT-3.5是使用截止到2021年9月的数据进行训练的,GPT-4目前仅涵盖至2022年1月。跟进实时知识和全球事件对大模型来说是很大的挑战,而且成本相当可观。 

图片
图:ChatGPT截图

比起承认你提出的问题不在知识库中更糟的是,大模型会给出听起来十分肯定,但实际上并非事实的回应,也就是所谓的幻觉(Hallucination)。与此同时,大模型作为黑盒模型,它们以参数的形式隐式地表示知识。由于大模型生成的结果中没有包含任何来源或参考,我们很难解释或验证其可信度。这严重影响了大模型的应用,尤其是在医疗诊断、金融咨询和法律判断等高风险的场景中。另一个挑战在于,大模型是为了一般用途而训练的,企业专有、保密或敏感的未公开数据并不在它们的知识范围内。 

一种改善大模型性能的简单方法是提示工程(Prompt Engineering)。通过在提问时提供清晰的指示和背景信息,大模型可以生成更准确的回应。然而,为了获得最佳结果,这个过程可能需要一定的写作技巧和反复迭代,同时伴随着因文本长度增加而上升的成本。

图片

02 检索增强生成和微调

在将大模型引入业务环境时,出现了两种显著的技术:检索增强生成(Retrieval Augmented Generation)和微调(Fine-Tuning)。 

检索增强生成是一种将大模型与外部知识库检索相结合的一种框架。它从特定的外部数据库(区别于大模型的内部知识库)中检索出相关的文档,然后将这些文档与用户的输入一起传递给预训练的大模型,生成最终结果。 

典型的检索增强生成应用的策略是:

  • 将知识库中的文档按策略切分成较短的片段,为这些文本片段分别生成向量表示。

  • 运行期间,将用户的输入文本也嵌入为一个向量,将该向量与知识库的文本向量进行相似性比较后,检索出前N个(例如,前3个)相关文档。

  • 随后,大模型基于用户输入和相关文档生成最终结果。

图片
图:检索增强生成应用的基本工作流 

微调是指以一个预训练大模型为基础,使用特定数据集进一步训练模型调整其参数的过程。用于微调的数据集通常比预训练时所需的数据集小,但准备该数据集仍需大量的工作,并且必须与特定的任务目标(如问答、翻译和情感分析)保持一致。最终微调后的大模型会比预训练的大模型在特定任务中有更优秀的表现。 

图片
图:微调应用的基本工作流

检索增强生成和微调都能在一定程度上减轻预训练大模型的幻觉问题,同时使大模型更适配于企业。选择检索增强生成或微调取决于特定的场景,这两种技术也能够结合使用。但无论如何,为了充分发挥大模型的潜力,图技术是不容忽视的。

03 大模型也需要图能力

处理深度推理和关联任务时,大模型的限制更加明显。当我们提出一些大胆的问题时,经常会遇到有趣的情景。例如,Ultipa CEO 孙宇熙曾受到一次广播讨论的启发,提出了一个引人入胜的问题:东方著名征服者成吉思汗和西方卓越的科学家艾萨克·牛顿之间有什么联系? 【更多阅读:图数据库知识点2 | 图思维方式 / / 专访 | Ultipa 孙宇熙:从成吉思汗到牛顿再到图数据库】

ChatGPT 无法回答这个问题,因为“两者在历史上存在的时间和地理位置相隔很远”。

图片
图:大模型无法实现(或替代)图数据库的深层检索

但如果我们在一个百科知识图谱中进行检索(您可以使用维基百科进行此操作),搜索成吉思汗(节点)和艾萨克·牛顿(节点)之间的路径时,可以找到许多结果。以下是其中之一:成吉思汗发动了蒙古西征,间接导致了黑死病在欧洲的爆发。这场瘟疫在欧洲肆虐了几个世纪,影响了其发展。在伦敦大瘟疫爆发时,牛顿正值年少时,由于学校关闭,他被遣散到乡下,避免了瘟疫。 

这个关联成吉思汗和牛顿的4跳因果关系横跨东西方,跨越了400年的历史。通过图的深度穿透和因果关系搜索,生动地呈现在我们眼前。 

图片
图:成吉思汗与牛顿跨越400年东西时空的关联路径

现实世界的许多场景都可以用[1] 扩展阅读:文库 | 图数据库基础知识—壹来建模,包括金融网络、交通网络、供应链网络、社交网络、生物网络和各种知识图谱等。图因其互相连接、可追溯和明确的表示方式而久负盛名。许多问题其实都可以视为图的问题: 

  • 如何监控证券公司的交易和代理行为,避免因监管机构处罚使客户和股东遭受损失? 

  • 根据客户的帐户状况,哪种投资选项适合他们? 

  • 现有一系列光源,如何铺设电力传输线最为经济? 

  • 基于与我有类似观影行为的用户,有哪些电影推荐给我? 

  • 最近发生在缅甸的罢工将如何影响我们在伦敦的生产线? 

  • 如何在一片广阔的水域中放置传感器,才能及时检测到污染物? 

  • 如何根据蛋白质之间相互作用的强度将它们进行分组研究? 

这些分析和算法问题都超越了基于的文本查询或生成。虽然目前大模型在很多领域表现出色,但它们连面对基本的数学问题时都经常遇到困难,比如下面的最短路径问题。 

图片
图:ChatGPT截图

图片
图:最短路径在图中就非常清晰,即A→F→E,总长500米

我们要认识到,大模型原本并不是为了这些类型的任务而设计的。然而,在为业务目的构建智能系统时,解决这类问题的能力往往是不可或缺的。 

04 融合方案:大模型+图技术

许多研究人员已经认识到大模型图技术之间固有的互补性。通过结合大模型的文本理解能力和图的结构化推理能力,能够整体增强AI系统的功能性、智能性和可解释性。 

下面,我们将讨论Ultipa嬴图已经实现的两个应用,以展现大模型和图之间的相互增强关系。

使用大模型构建图 

将结构化数据,例如表格数据,转化为图的过程相对简单。通过设计适当的图模型(包括节点和边的类型和属性),就可以进行明确地映射和数据迁移。

然而,从非结构化的文本数据创建图则是一项复杂的任务,一般需要先进的自然语言处理技术协助,如命名实体识别、关系提取和语义解析等。但这些方法可能需要大量的规则或监督训练,性能也取决于训练数据的质量和数量。 

大模型在处理大规模非结构化文本数据中的实体发现、指代消解和关系提取方面表现出色,它们为自动化快速地构建图提供了令人兴奋的可能性,见下图。 

图片

Graph Extractor是专为从用户输入文本中提取实体和关系信息并直接可视化为图而设计的插件,见下图。 

图片

我们输入了一篇关于联觉(Synesthesia)和自闭症(Autism)之间遗传联系的文章——《A Genetic Link Between Synesthesia And Autism Has Just Been Revealed》[2] 来测试它的性能。在检查结果时我们发现,大模型提取的信息大部分都是准确的,然而整个图尽管不大,却存在7个连通分量,这可能导致信息流断裂。例如,核心的发现“(联觉) - [共享遗传根源] -> (自闭症)”与相关的研究“(研究人员) - [检查] -> (2,131对双胞胎)”是隔离开的。 

为了解决这个问题,或许我们可以对大模型进行一些标准实体和关系类型的微调或指导。例如,(@发现) - [@包含] -> (@现象),和(@研究) - [@支持] -> (@发现)。这种方法可以改善图的整体结构和可读性,确保相关信息得到适当的连接和呈现。 

图片
图:使用Graph Extractor提取出的图(截图来自Ultipa Manager)

  “图上 问 答  

图上问答旨在基于存储在图中的结构化事实来查找自然语言问题的答案。大模型能够充当自然语言问题与图数据之间的桥梁。 

ChatGraph插件能帮助用户以对话的方式与图数据进行互动。鉴于大模型能够很好地理解自然语言,我们利用它从自然语言问题中提取信息,并将问题转化为准确的UQL(Ultipa图查询语言)语句。 

图片

我们在一个电力网络中使用这个插件。我们输入问题:“如何能够连接KANAWHA和TAZEWELL这两个位置?”系统迅速使用AB路径查询[3]【详细阅读:Ultipa官网-文档-UQL-Query(查询)-Find paths(找路径)】检索了连接这两个位置的所有可行路径: 

图片

此外,我们提出另一个问题:“如何最有效率地从KANAWHA到TAZEWELL?” 系统识别这为最短路径问题,并迅速找到了该路径: 

图片

05 小结:展未来

在不断发展的信息技术领域,出现了两个强大的催化剂,从根本上改变了我们处理和分析数据的方法——大语言模型和图数据库。虽然大模型在理解和生成自然语言方面展示出了优秀的能力,但围绕它们的担忧和批评也使它们在严肃商业环境中的适用性蒙上了阴影。 

图以显式、明确和结构化的方式表示知识,大模型和图之间的协同合作有望减轻大模型的种种限制。在未来,这两种技术的整合有望发挥强大的优势,创造更多的商业价值。 【文/ Pearl C 、Jason Z】

图片

【1】图数据库; https://www.ultipa.cn/document/ultipa-graph-query-language/basic-concepts/v4.0

【2】https://www.sciencealert.com/a-genetic-link-between-synesthesia-and-autism-has-just-been-revealed.

【3】https://www.ultipa.com/document/ultipa-graph-query-language/a-to-b-path/v4.3

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/183505.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

01-单节点部署clickhouse及简单使用

1、下载rpm安装包: 官网:https://packages.clickhouse.com/rpm/stable/ clickhouse19.4版本之后只需下载3个rpm安装包,上传到节点目录即可 2、rpm包安装: 安装顺序为conmon->server->client 执行 rpm -ivh ./clickhouse-…

【深度学习 AIGC】stable diffusion webUI 使用过程,参数设置,教程,使用方法

文章目录 docker快速启动vae.ckpt或者.safetensorsCFG指数/CFG Scale面部修复/Restore facesRefinerTiled VAEClip Skipprompt提示词怎么写roop Upscaler visibility (if scale 1) docker快速启动 如果你想使用docker快速启动这个项目,你可以按下面这么操作&#…

(Git)git clone报错——SSL certificate problem: self signed certificate

(Git)git clone报错——SSL certificate problem: self signed certificate 克隆代码时报错 问题分析 提示信息为SSL认证失败,可以关闭SSL的认证。 公司bitbucket只支持https地址,需要client配置忽略https证书检验。 解决方法 在克隆前输入下边命令&…

Linux学习第35天:Linux LCD 驱动实验(二):星星之火可以燎原

Linux版本号4.1.15 芯片I.MX6ULL 大叔学Linux 品人间百味 思文短情长 三、LCD驱动程序编写 需要注意的地方: ①、 LCD 所使用的 IO 配置。 ②、 LCD 屏幕节点修改,修改相应的属性值,换成我们所使…

Spring Data Redis + RabbitMQ - 基于 string + hash 实现缓存,计数(高内聚)

目录 一、Spring Data Redis 1.1、缓存功能(分析) 1.2、案例实现 一、Spring Data Redis 1.1、缓存功能(分析) hash 类型存储缓存相比于 string 类型就有更多的更合适的使用场景. 例如,我有以下这样一个 UserInfo 信息 假设这样一个场景就是:万一只想获取其中某一个…

利用shp文件构建mask【MATLAB和ARCGIS】两种方法

1 ARCGIS (推荐!!!-速度很快) 利用Polygon to Raster 注意:由于我们想要的mask有效值是1,在进行转换的时候,注意设置转换字段【Value field】 【Value field】通过编辑shp文件属性表…

centos 7部署Mysql8.0主从

Mysql官网中关于部署主从的网址 环境准备: 搭建虚拟机和安装Mysql之前的文章中已经涉及,在此不再赘述。 主从IPMysql账号密码主192.168.213.4root/Root1234!从192.168.213.5root/Root1234! 1、主数据库设置 配置my.cnf 一般存放于/etc/。 主从配…

【git】TortoiseGit图标不显示 及 文件夹中.git文件夹不显示

(一)文件夹中.git文件夹不显示 在 文件夹选项-查看-高级设置 中, 将 隐藏文件和文件夹中的不显示,标记为“显示隐藏的文件、文件夹和驱动器” (二)TortoiseGit图标不显示 【情况一】是否有正确安装 Tort…

inne所属公司抢注“童年时光”商标仍被冻结

根据中国商标网查询,国家知识产权局已于2023年3月10日裁定,被告inne所属的南京童年时光生物技术有限公司注册的“童年时光”商标无效。随着这起保健品行业品牌资产争夺事件的发酵,更多的细节得到披露,至此,一个从“代理…

【软件STM32cubeIDE下H73xx配置串口uart1+中断接收/DMA收发+HAL库+简单数据解析-基础样例】

#【软件STM32cubeIDE下H73xx配置串口uart1中断接收/DMA收发HAL库简单数据解析-基础样例】 1、前言2、实验器件3-1、普通收发中断接收实验第一步:代码调试-基本配置(1)基本配置(3)时钟配置(4)保存…

shiro 框架使用学习

简介 Shiro安全框架是Apache提供的一个强大灵活的安全框架Shiro安全框架提供了认证、授权、企业会话管理、加密、缓存管理相关的功能,使用Shiro可以非常方便的完成项目的权限管理模块开发 Shiro的整体架构 1、Subject ​ Subject即主体(可以把当前用户…

微信小程序将后端返回的图片文件流解析显示导页面

说明 由于请求接口后端返回的图片格式不是一个完整的url,也不是其他直接能显示的图片格式,是一张图片 后端根据模板与二维码生成图片,返回二进制数据 返回为文件流的格式,用wx.request请求的时候,就自动解码成为了下面这样的数据数据格式,这样的数据没…

idea文件比对

idea文件比对 1.项目内的文件比对2.项目间的文件比对3. 剪切板对比4. 版本历史(不同分支和不同commit)对比 1.项目内的文件比对 在项目中选择好需要比对的文件(类),然后选择Compare Files Mac下的快捷键是Commandd, 这样的比对像是git冲突解决一样 …

STM32 GPIO 描述

一、GPIO功能描述 每个GPIO端口有两个32位配置寄存器(GPIOx_CRL,GPIOx_CRH) ,两个32位数据寄存器 (GPIOx_IDR和GPIOx_ODR) ,一个32位置位/复位寄存器(GPIOx_BSRR),一个16位复位寄存器(GPIOx_BRR)和一个32位锁定寄存器(GPIOx_LCKR…

Flutter:安装依赖报错doesn‘t support null safety

项目中需要引用http依赖,在pubspec.yaml文件中添加如下信息: 当同步时,报错信息如下: [myflutter] flutter pub upgrade Resolving dependencies... The current Dart SDK version is 3.1.3. Because myflutter depends on http &…

【leetcode】19.删除链表的倒数第 N 个结点

题目 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head [1,2,3,4,5], n 2 输出:[1,2,3,5] 示例 2: 输入:head [1], n 1 输出:[] 示例 3&a…

校园安防监控系统升级改造方案:如何实现设备利旧上云与AI视频识别感知?

一、背景与需求分析 随着现代安防监控科技的兴起和在各行各业的广泛应用,监控摄像头成为众所周知的产品,也为人类的工作生活提供了很大的便利。由于科技的发达,监控摄像头的升级换代也日益频繁。每年都有不计其数的摄像头被拆掉闲置&#xf…

R语言爬虫代码模版:技术原理与实践应用

目录 一、爬虫技术原理 二、R语言爬虫代码模板 三、实践应用与拓展 四、注意事项 总结 随着互联网的发展,网络爬虫已经成为获取网络数据的重要手段。R语言作为一门强大的数据分析工具,结合爬虫技术,可以让我们轻松地获取并分析网络数据。…

【网络】五中IO模型介绍 + 多路转接中select和poll服务器的简单编写

高级IO 前言正式开始前面的IO函数简单过一遍什么叫做低效的IO钓鱼的例子同步IO和异步IO五种IO模型阻塞IO非阻塞IO信号驱动多路转接异步IO 小结 代码演示非阻塞IO多路转接select介绍简易select服务器timeout 为 nullptrtimeout 为 {0, 0}timeout 为 {5, 0}调用accept select编写…

ACmix:卷积和self-attention的结合,YOLOv5改进之ACmix

目录 一、ACmix理论部分 二、代码 三、YOLOv5改进 ACC3 一、ACmix理论部分 论文地址:2111.14556.pdf (arxi