我们很高兴向您介绍新的资源,用于您的GenAI应用:Neo4j GraphRAG 生态系统工具。这些开源工具使您能够轻松开始构建基于知识图谱的GenAI应用,这有助于提升响应质量和可解释性,并加速应用开发和普及。
GraphRAG结合检索增强生成(RAG)与知识图谱来解决LLM中的关键问题,如虚构事实和缺乏特定领域的上下文。知识图谱提供了帮助大型语言模型可靠地回答问题所需的上下文记忆,并作为复杂流程中的可信助手——与大多数仅提供文本片段的RAG解决方案不同,GraphRAG将结构化和半结构化信息融入检索过程。
什么是检索增强生成(RAG)? - 图数据库及分析 RAG是一种通过从外部数据源检索信息来增强LLM响应的技术 neo4j.com这些新工具将帮助你从非结构化的文本中创建知识图谱。你可以使用这个图谱,或者现有的图数据库,通过向量和图搜索来获取用于生成任务的相关信息。
你可以使用这些工具来快速启动GenAI开发,将这些工具集成到你自己的系统中,或作为构建你自己的自定义实现的参考模板。现在我们使用的是针对Python和Javascript的LangChain集成,你也可以用其他语言和框架来构建它们。
本文将介绍LLM知识图谱工具NeoConverse和GenAI框架集成情况的概况。
快速把原始文本变成知识网络如果你刚开始接触图技术,你可以使用知识图构建工具从熟悉的领域信息轻松构建图。而对于更有经验的图开发者,他们可能会用它来启动新项目。
你可以通过在线使用Graph Builder工具。 如果你没有 Neo4j 数据库环境,你可以申请一个免费的 Neo4j Aura 数据库。
除了提取源文档及其分块和嵌入来构建词汇图之外,图构建工具还提取实体及其关系的图结构,并将其与相关的分块连接起来。
为了查看答案背后的非结构化和结构化上下文数据,你可以查看并提问已摄取的数据。因为我们用GraphRAG在后台处理每个向量搜索结果,我们能够获取并提供相关实体给LLM以生成答案。
图构建器前端应用是一个使用Neo4j设计系统(通过Needle启动套件(由Neo4j提供))以及新发布的Neo4j可视化库的React应用程序。
后端使用了LangChain集成来进行与Neo4j的交互、提取知识图谱以及GraphRAG搜索功能,该功能结合了向量搜索和图检索查询。它用Python编写,并使用FastAPI在Google Cloud Run的容器中运行。或者,你可以使用Docker Compose本地运行它。
你可以在自己的代码中使用 LangChain 集成功能来构建知识图谱,如下所示:
from langchain_experimental.graph_transformers import LLMGraphTransformer
from langchain_openai import ChatOpenAI
from langchain_community.graphs import Neo4jGraph
# Neo4jGraph 是一个用于图数据存储和操作的数据库接口,这里用于构建和操作图数据。
graph = Neo4jGraph()
llm = ChatOpenAI(temperature=0, model_name="gpt-4o")
kg_transformer = LLMGraphTransformer(llm=llm,
allowed_nodes=["Person", "Country", "Company"],
allowed_relationships=["LOCATED_IN", "WORKED_AT"])
results = kg_transformer.convert_to_graph_documents(documents)
graph.add_graph_documents(results)
了解更多关于知识图谱构建器的内容,查找源代码并观看教程视频,请参阅我们的Graph Builder 文档页面。
更棒的是,自己试一试试试这个工具,用你自己的文件。
你也可以点击这里观看演示视频。
สเตะ自然语言询问您的图我们的NeoConverse工具利用现有知识图谱的结构,根据用户的提问生成Cypher图查询,并在Neo4j数据库上执行这些查询。这些查询结果被用来生成文本或图表形式的回答。
你可以试试在线试用NeoConverse。
这是NeoConverse的步骤:
- 用户选择数据集,并选择是否希望以文本或图表形式接收回复。
- 用户提出问题。
- 系统从数据库中提取模式,并结合用户的问题生成给大型语言模型(LLM)的提示。
- LLM 生成一个 Cypher 查询来执行数据库中的操作。
- 查询被验证并执行。
- 查询结果连同用户的问题一起发送给 LLM,并附有特定提示,要求生成markdown文本回复或图表库配置。
NeoConverse 流畅
NeoConverse 预配置了几个数据集来展示它的能力。对于每个数据集,你可以查看数据库架构以及示例查询(点击旁边的省略号按钮)。你也可以添加更多数据集到 NeoConverse,以连接到你自己的 Neo4j 数据库。
[NeoConverse UI](https://neoconverse.graphapp.io/ title="NeoConverse用户界面"),包含两个问题:一个需要文本回答的,另一个需要图表回答的。
要了解更多关于NeoConverse的内容,看看更多的视频、博客文章和GitHub仓库链接,可以浏览我们关于NeoConverse的页面。
使用您常用的LLM框架Neo4j与大多数开源GenAI生态系统库,如Python、JavaScript、Java和.NET等,无缝对接。
我们已经与LangChain Python(一个Python库)和LangChain JavaScript(一个JavaScript库)集成了,提供了向量搜索、图搜索、文本转Cypher,同时还有对话记忆、知识图谱构建、高级RAG模板等多种功能。
我们LlamaIndex的集成包括Cypher搜索、向量搜索、知识图谱的表示与构建,以及将文本转换为Cypher查询。最近,我们与LlamaIndex团队合作,对知识图谱集成进行了全面的更新,涉及了从构建到查询的整个过程。
对于Deepset的Haystack项目,我们收到了社区宝贵的贡献,其中包括向量搜索和Cypher查询功能,我们很快会添加更多功能支持。
在 Java 开发空间中,我们已将向量检索集成到 Spring AI 和 LangChain4j 中。我们还为 Semantik Kernel 的语义理解实现了 Neo4j 支持。最后,在 DSPy 中,我们添加了一个基于 Neo4j 的检索器模块,该模块利用了 Neo4j 的向量索引技术。
许多这些集成页面指向了相关的启动套件的实现方式,这些套件解释了如何在 Edgar SEC 文件数据集上构建 GraphRAG 应用。
提升你的技能以开发生成式AI和GraphRAG要进一步深入了解GraphRAG工具和GenAI生态系统,请查看我们的GenAI生态系统页面。
这些页面提供了更多关于Neo4j GenAI功能(如嵌入生成和向量查找)的详细信息,以及我们与Google(Vertex AI)、AWS(Bedrock)和Azure(OpenAI)的云原生GenAI整合的相关信息——还包括每个服务的视频教程。
你还将找到一些示例GenAI项目,包括GraphRAG演示、NeoConverse和知识图谱构建器的实际展示,解释这些工具的具体功能。
动手实践的机会也有提供。我们与 Deeplearning AI 合作了,推出了一门知识图课程,带你一步步构建图谱驱动的生成式AI应用程序。
知识图谱助力RAG,构建并使用知识图谱,以提升您的检索增强生成应用。增强RAG应用…www.deeplearning.ai我们也教生成AI开发,在我们免费的GraphAcademy课程中深入讲解。
Neo4j 免费的生成式 AI 课程(GenAI),由 GraphAcademy 提供,学习如何使用知识图谱和 Neo4j 构建生成式 AI 应用程序 graphacademy.neo4j.com我们刚刚进行了一次关于如何用Neo4j的GraphRAG生态系统工具启动你的GenAI开发的直播,提了很多有趣的问题——你可以在这里观看。
Neo4j | 使用 Neo4j 的 GraphRAG 生态系统快速上手 GenAI 开发的启动 Michael Hunger 产品创新和开发者策略负责人 热衷于软件 go.neo4j.com共同学习,写下你的评论
评论加载中...
作者其他优质文章