AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


知识图谱:langchain+neo4j+gpt-3.5-turbo-0125实现
发布日期:2024-05-08 04:34:47 浏览次数: 1938 来源:智知鱼之乐


1.使用 Neo4jGraph 类来初始化图数据库的操作对象,这将用于后续的图数据添加和查询。

graph = Neo4jGraph()后续在此对neo4j添加图数据:

graph.add_graph_documents(    graph_documents,    baseEntityLabel=True,    include_source=True)

2.文档切分

通过TokenTextSplitter 将文档内容切分为更小的片段,这有助于处理和分析。

3.转换文档

使用 LLMGraphTransformer 将切分后的文档转换成图形文档。

llm_transformer = LLMGraphTransformer(llm=llm)
graph_documents = llm_transformer.convert_to_graph_documents(documents)

4.使用jupyter打印输出图数据

widget = GraphWidget(graph = session.run(cypher).graph()) widget.node_label_mapping = 'id'display(widget)

查询到的一条neo4j图数据库的完整信息:

(贾宝玉--爱情关系--林黛玉)

源节点:

<record s="<Node" element_id="4:aacd41cc-95d0-49bb-a87d-7a6ad2fc8b8e:2" labels="frozenset({'Person'," '__entity__',="" '<="" span="">人物'}) properties={'id': '贾宝玉'}> 

关系: 

r=<relationship element_id="5:aacd41cc-95d0-49bb-a87d-7a6ad2fc8b8e:1152922604118474754" nodes="(<Node" labels="frozenset({'Person'," '__entity__',="" '<="" span="">人物'}) properties={'id': '贾宝玉'}>,<node element_id="4:aacd41cc-95d0-49bb-a87d-7a6ad2fc8b8e:3" labels="frozenset({'Person'," '__entity__',="" '<="" span="">人物'}) properties={'id': '林黛玉'}>) type='爱情关系' properties={}> 

目标节点:

t=<node element_id="4:aacd41cc-95d0-49bb-a87d-7a6ad2fc8b8e:3" labels="frozenset({'Person'," '__entity__',="" '<="" span="">人物'}) properties={'id': '林黛玉'}>>


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询