点燃智能洞察!LLMs与TigerGraph 深度融合,释放生成式AI的无限威力

LLMs与TigerGraph 深度融合,释放生成式AI的无限威力
生成式人工智能(Generative AI)和大语言模型(Large Language Models,LLMs)已经成为大家关注的焦点,它们可以帮助我们在互联网上获取各种信息。然而,企业在使用LLMs时面临一些问题。比如,他们如何向模型提问关于自己数据的问题?如果金融分析师想知道李雷的不同投资机会,或者医生想了解最适合韩梅梅的护理方案,他们应该怎么做?
这里有几个关键问题需要解决。首先,LLMs需要处理敏感数据,但我们不能将这些敏感信息包含在训练数据中,以免泄露。其次,LLMs在处理数据时有一定的限制。因为LLMs是基于神经网络的,它们只能处理有限数量的输入数据,也就是所谓的上下文长度。此外,像OpenAI这样的LLMs API提供商会根据用户的token使用量向企业收费,因此企业希望限制传递给模型的数据量,同时仍然获得高质量的结果。
那么,金融分析师或医生该如何获取他们需要的答案呢?这就需要LLMs从可靠的数据源中获取信息,并基于这些数据进行推理。也许有人会想,我们可以将李雷的账户报表或韩梅梅的临床记录都传递给模型,让它自己去分析,但实际上并不可行。

为了解决这个问题,我们可以利用高度可扩展、去重和关系丰富的外部数据源。LLMs可以通过调用这些数据源的API来获取所需的准确数据,而不是传递给模型所有的历史记录。这样既可以保证数据的安全性,又可以获得高质量的结果。

问答型 LLM Agent—图数据库通用架构
问答型 LLM Agent—图数据库通用架构
当谈到具有高度可扩展性、关系丰富且去重的数据源时,通常会想到图数据库。特别是TigerGraph具备超过数十TB的可扩展性,并且许多客户通过在TigerGraph图数据库内运行实体解析算法来去除重复数据。图数据库的结构与LLM Agent非常契合,因为它们都适用于处理关系丰富的数据。此外,TigerGraph还能够执行可扩展的图算法,用于解决一些关键问题,比如在数据库中查找实体的影响力或社群。那么,我们如何将TigerGraph的强大功能与这些LLM Agent结合起来呢?

► 使用LangChain将LLMs与TigerGraph集成

LangChain是一个Python库,可以将大语言模型(LLMs)如OpenAI的GPT模型和Google的BARD模型等与其他模型进行整合。将自然语言接口与图数据库(比如TigerGraph)连接起来有很多好处,因为agent的回答可以包含从数据库中获取的数据,确保模型具有最新的信息。这样可以减少模型回答错误的可能性,也就是所谓的幻觉。

在下面的演示中,我们将使用TigerGraph的Python驱动程序pyTigerGraph将LangChain集成进来。我们将构建各种LangChain工具,帮助LLMs从图数据库中更好地提取信息。如果想查看完整的代码,请访问下方链接查看notebook:https://github.com/tigergraph/graph-ml-notebooks/blob/main/applications/large_language_models/TigerGraph_LangChain_Demo.ipynb

► LangChain Tools

LangChain允许LLMs通过tools与”真实世界”进行交互。通过创建不同的LangChain工具,开发人员可以将各种数据源连接到LLMs的环境中,这样LLMs就能回答那些在它们的训练数据中没有具体答案的问题,从而减少错误回答的可能性。在附带的notebook中,您可以看到为与TigerGraph交互而构建的三个工具:MapQuestionToSchema、GenerateFunction和ExecuteFunction,它们帮助LLMs更好地理解和提取TigerGraph中的信息。

► LLM Agent工作流程

想象一下,LangChain就像是一个智能代理,它能够独立思考和执行一系列任务。在与数据库集成的情况下,无论用户问了什么问题,LLM Agent都会按照相同的步骤进行处理。
首先,LLM Agent使用MapQuestionToSchema工具将问题与图数据库的schema进行匹配。然后,再使用GenerateFunction工具将问题转换成数据库可以理解的函数调用。接下来,在ExecuteFunction工具中执行这个函数调用。数据库会返回一个包含信息的JSON响应,LLM Agent会解析这个响应并用自然语言表达出答案。这样,用户就能够以简单易懂的方式与LLM Agent进行交流,而LLM Agent则能够从数据库中获取准确的答案。
问答型 LLM Agent 与TigerGraph
问答型 LLM Agent 与TigerGraph
MapQuestionToSchema和GenerateFunction工具在执行过程中实际上使用了另一个LLM(语言模型)调用。MapQuestionToSchema工具会请求LLM帮助将用户的问题转化为使用标准的schema元素的形式。举个例子,如果数据库中有一个顶点类型叫做”Institution”,而用户问的是”有多少所大学?”,这个工具会将问题转化为”有多少个Institution顶点?”工具内部的LLM会自动将schema元素的同义词转换为它们的标准形式。GenerateFunction工具接着使用另一个LLM来创建pyTigerGraph函数调用。
继续上面的例子,问题”有多少个Institution顶点?”会被转化为”getVertexCount(“Institution”)”,这是用来统计图数据库中机构数量的有效pyTigerGraph函数调用。然后,这个输出会在ExecuteFunction工具中执行。

► 示例(问题及答案)

使用OGB MAG数据集,我们可以向LangChain agent提问关于数据的问题。Schema包括论文、作者、主题和机构的信息,其关系如下所示的schema中所示:
我们将从一些简单的问题开始,比如询问数据中有多少篇论文:
当安装更复杂的查询和算法后,我们可以开始询问更多有关实体在图中如何相互交互的问题。
我们甚至可以提出一个抽象的问题,比如最有影响力的论文是哪些?
Agent意识到可以使用PageRank查询,它是一种衡量影响力的指标。然后,agent就像处理其他查询一样,调用PageRank并返回结果!

► 小结

将LLMs(如ChatGPT)和TigerGraph集成,充分发挥了它们各自的优势:LLMs具有推理和自然语言能力,而TigerGraph提供了最新和丰富的数据表示。通过以图的方式表示数据,LLMs可以回答非常复杂和抽象的问题,比如找到最有影响力的研究论文,或者在金融图中发现欺诈行为。这种集成可以让业务分析师更加高效,并能获得更丰富的信息。本文的演示只是一个开始,敬请期待未来的更新,进一步提升自然语言和TigerGraph之间的连接。
想要亲自尝试吗?您可以先免费注册TigerGraph Cloud,然后将我们的Python库pyTigerGraph添加到您的服务器上。通过这些简单步骤,您就可以开始使用TigerGraph,并将其与其他工具集成,进行开发和分析。
欢迎点击下方的按钮,前往TigerGraph Cloud免费体验。

关于TigerGraph

TigerGraph是领先的图数据库和分析平台提供商。其强大的技术使组织能够利用互联数据进行高级分析和机器学习。TigerGraph有四个主要的价值主张:金融犯罪(揭示隐藏的犯罪网络);连接客户(将客户、产品和服务连接起来,优化个性化和推荐);敏捷运营(跨数据孤岛分析数据,加快跨部门决策);OEM(为合作伙伴的应用程序提供嵌入式TigerGraph引擎)。欢迎点击下方按钮,前往Tigergraph Cloud免费体验。

更多 “新闻”推荐: