知识图谱学习笔记05 Neo4j 图数据库查询

本文是知识图谱学习笔记的一部分,重点介绍了如何使用Cypher查询语言进行Neo4j图数据库操作,并探讨了基于知识图谱的问题系统——AnswerSearching框架,包括构造查询语句、转换问题、执行查询及生成答案的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

知识图谱学习笔记05 Neo4j 图数据库查询

Neo4j在前面的笔记中已简单介绍过,这里主要介绍Cypher和基于知识图谱的问题系统主题类AnswerSearing框架及相关代码
QASystemOnMedicalGraph

1. Cypher

Cypher是一个描述性的图形查询语言,允许不必编写图形结构的遍历代码对图形存储有表现力和效率的查询。Cypher目前还在发展,后续可持续学习~
Cypher的焦点在于从图中如何找回 (what to retrieve),而不是怎么去做哦,这使得在不对用户公布的实现细节里关心的是怎么优化查询。

2.基于知识图谱的问题系统 主体类 AnswerSearching框架

class AnswerSearching:
    def __init__(self):
        pass
    # 主要是根据不同的实体和意图构造cypher查询语句
    def question_parser(self, data):
        """
        主要是根据不同的实体和意图构造cypher查询语句
        :param data: {"Disease":[], "Alias":[], "Symptom":[], "Complication":[]}
        :return:
        """
        pass
    # 将问题转变为cypher查询语句
    def transfor_to_sql(self, label, entities, intent):
        """
        将问题转变为cypher查询语句
        :param label:实体标签
        :param entities:实体列表
        :param intent:查询意图
        :return:cypher查询语句
        """
        pass
    # 执行cypher查询,返回结果
    def searching(self, sqls):
        """
        执行cypher查询,返回结果
        :param sqls:
        :return:str
        """
        pass
    # 根据不同意图,返回不同模板的答案
    def answer_template(self, intent, answers):
        """
        根据不同意图,返回不同模板的答案
        :param intent: 查询意图
        :param answers: 知识图谱查询结果
        :return: str
        """
        pass

3. 代码分模块介绍

3.1 根据不同的实体和意图构造cypher查询语句

def question_parser(data):
        ""
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值