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

news2024/12/30 0:51:20

前言

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.coloradmin.cn/o/1179811.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

客户案例 | 思腾合力助力深度图灵生成式AI应用平台建设

近年来,娱乐行业发展迅猛,市场容量不断扩大。从娱乐产业发展来看,用户对于娱乐内容和体验的需求不断攀升,如何将生成式AI更好的应用于照片修复、创意摄影、漫画创作、图片生成等场景中是对娱乐行业各科技公司的挑战和考验&#xf…

SSM之spring注解式缓存redis->redis整合,redis的注解式开发及应用场景,redis的击穿穿透雪崩

redis整合redis的注解式开发及应用场景redis的击穿穿透雪崩 1.redis整合 mysql整合 pom配置; String-fmybatis.xml --> mybatis.cfg.xml: 包扫描; 注册了一个jdbc.properties(url/password/username/...); 配置数据源(数据库连…

如何给PDF文件设置打印限制?

有些朋友制作完pdf文件,不想其他人打印出来进行使用,该如何设置? 想要限制PDF文件的打印功能,想要限制PDF文件打印清晰度,都可以通过设置限制编辑来达到目的。 打开PDF编辑器,找到设置限制编辑的界面&…

mvn: Downloading from pluginRepository

场景 maven 项目打包 mvn package 报git地址错误(有换新的git地址) 检查了下 settting.xml的配置没问题。是新的git地址。 处理: 用命令: mvn -X [DEBUG] Message styles: debug info warning error success failure stron…

内网渗透-代理Socks协议+路由不出网+后渗透通讯+CS-MSF控制上线

一、网络通讯-MSF&CS-路由添加&节点建立 前提:已获取目标的一台主机权限 目的:渗透并获取该内网中其他主机的权限。 但是发现目标内网其他主机没有网络,怎么办? 方法一:将渗透测试工具上传到已经获取权限的内网…

【蓝桥杯选拔赛真题12】C++数位递增数 青少年组蓝桥杯C++选拔赛真题 STEMA比赛真题解析

目录 C/C++数位递增数 一、题目要求 1、编程实现 2、输入输出 二、算法分析

nvm 解决不同项目需要使用的node版本不一致、nvm版本管理

第一步、卸载电脑上已安装的node 如果电脑没有安装node,可以跳过第一步,直接进入第二步。 1.1 1.2 1.3 打开电脑的这个路径 C:\Users\admin\AppData\Roaming,没有卸载node之前是有npm这个缓存目录的,卸载之后在C:\Users\admin\…

护眼灯作用大吗?五款没有危害的护眼台灯推荐

可以肯定的是,护眼灯一般可以达到护眼的效果。 看书和写字时,光线应适度,不宜过强或过暗,护眼灯光线较柔和,通常并不刺眼,眼球容易适应,可以防止光线过强或过暗导致的用眼疲劳。如果平时生活中…

Awesome-Selfhosted:互联网常见服务开源平替 | 开源日报 No.68

awesome-selfhosted/awesome-selfhosted Stars: 137.7k License: NOASSERTION Awesome-Selfhosted 是一个列出了可以在自己的服务器上托管的免费软件网络服务和 Web 应用程序列表。 以下是该项目的主要功能: 提供各种类型 (如分析、备份、博客平台等) 的开源软件…

Java Spring Boot----ruoyi项目部署 前后端分离

nginx服务器部署java服务器部署db服务器部署配置打包环境配置前端打包环境(java服务器)配置后端打包环境获取代码 前端代码打包后端代码打包项目上线前端项目上线后端项目上线 将jar包传送到后端服务器导入初始化数据 ip主机名服务名称192.168.20.138ngi…

常用的电子邮件服务提供商有哪些?

当我们讨论常用的电子邮件服务时,可以根据国内和国外进行分类观察。以下是一些常见的国内和国外电子邮件服务。 什么是国外邮箱和国内邮箱? 国外邮箱是指在国外注册和使用的电子邮箱,而国内邮箱则是在国内注册和使用的电子邮箱。 国外邮箱是指…

新潮的3D人像手办定制业务,你也想试试吗?(建模技术篇)

针对这段时间大家比较好奇的3D人像摄影馆火热现状,我们在上一篇文章中讲述了目前3D打印技术已经成熟的状态,也介绍了制作真人模型之前的步骤,也就是数据获取的过程。今天我们继续挖掘这个生意的下一个环节:如何制作真人3D模型。 真…

Kali Linux渗透测试的艺术

Kali Linux(Kali)是专门用于渗透测试的Linux操作系统,它由BackTrack 发展而来。在整合了IWHAX、WHOPPIX 和Auditor 这3 种渗透测试专用Live Linux 之后,BackTrack正式改名为Kali Linux。 BackTrack是相当著名的Linux发行版本。在…

Python机器学习算法入门教程(第三部分)

接着Python机器学习算法入门教程(第二部分),继续展开描述。 十三、sklearn实现KNN分类算法 Pyhthon Sklearn 机器学习库提供了 neighbors 模块,该模块下提供了 KNN 算法的常用方法,如下所示: 类方法说明…

viple入门(二)

(1)与并活动 与并活动把2个及以上多个数据流输入合并,需要等待所有数据输入流到达与并活动后,才会执行与并活动之后的程序。 当两个输入流数据(12,25)都达到了与并活动,使得first的值为12且sec…

1100*C. Division by Two and Permutation(全排列数学)

Problem - 1624C - Codeforces 解析&#xff1a; 贪心&#xff0c;将每个数除到第一个没有出现的数字就停止。 #include<bits/stdc.h> using namespace std; #define int long long const int N2e55; int n,x,f[N]; void solve(){scanf("%lld",&n);memset…

支持向量机 (SVM):初学者指南

照片由 Unsplash上的 vackground.com提供 一、说明 SVM&#xff08;支持向量机&#xff09;简单而优雅用于分类和回归的监督机器学习方法。该算法试图找到一个超平面&#xff0c;将数据分为不同的类&#xff0c;并具有尽可能最大的边距。本篇我们将介绍如果最大边距不存在的时候…

【Python基础】史上最全||一篇博客搞懂Python面向对象编程(封装、继承、多态)

Python面向对象编程 1.面向对象概念介绍1) 面相过程 —— 怎么做&#xff1f;2&#xff09;面向对象 谁来做 2.类和对象2.1类2.2对象2.3类和对象的关系2.4类的设计2.5面向对象设计案例 士兵类设计2.6身份运算符 3.私有属性和私有方法3.1. 应用场景及定义方式 4.继承、多态重写父…

(免费领源码)C# 恒星科普网站49762-计算机毕业设计项目选题推荐

目 录 摘要 1 绪论 1.1 研究背景 1.2研究内容 1.3ASP.NET框架介绍 1.4论文结构与章节安排 2 恒星科普网站分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据流程 3.3.2 业务流程 2.3 系统功能分析 2.3.1数据增加流程 2.3.2数据修改流程 2.3.3数据删除流程 2.4 …

求质数(线性筛法)

//求质数线性筛法 #include<iostream> using namespace std; const int N 1e6 9; int n, cnt, primes[N]; bool st[N];int main() {ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);cin >> n;//n只会被最小质因子筛掉//外层从2~n迭代&#xff0c;因为这毕竟算…