资源简介

知识图谱实战案例完全剖析(附完整源码和数据集)Python与Neo4j的集成

资源截图

代码片段和文件信息

# -*- coding: utf-8 -*-
#author:zhangziliang04@sina.com
import aiml
import ossys
from py2neo import GraphNodeRelationship
#备注:这是演示程序,主要用来演示功能的调用关系,宗旨在于跑通,可以理解成,通用意义上的Helloword,而非工程实践
#检索知识图谱
def kgquery( input):
    # 连接数据库
    test_graph = Graph(“http://localhost:7474“ username=“neo4j“ password=“zhangzl“)
    # 查找节点
    find_code_1 = test_graph.find_one(“歌手“ property_key=“name“ property_value= input)
    return find_code_1

if __name__ == ‘__main__‘:
    #切换到语料库所在工作目录
    mybot_path = ‘./resource‘
    os.chdir(mybot_path)
    #
    mybot = aiml.Kernel()
    mybot.learn(“startup.xml“)
    mybot.respond(‘load jackson‘)
    #处理响应
    while True:
        input_message = raw_input(“Enter your message >> “)
        if len(input_message) > 60:
            print mybot.respond(“input is too long > 60“)
            continue
        elif input_message.strip() == ‘‘:
            print mybot.respond(“空“)
            continue

        if input_message == ‘q‘:
            exit()
        else:
            response = mybot.respond(input_message)
            if response == ““:
                ans = mybot.respond(‘找不到答案‘)
                print ans
            #通过知识图谱查询
            elif response[0] == ‘#‘:
                if response.__contains__(“neo4j“):
                    #获取用户输入的变量
                    res = response.split(‘:‘)
                    #实体
                    entity = str(res[1]).replace(“ “““)
                    #属性
                    attr = str(res[2]).replace(“ “““)
                    print entity+‘<---->‘+attr
                    ans = kgquery(entity)
                    print ans
                # 匹配不到模版,通用查询
                elif response.__contains__(“NoMatchingTemplate“):
                    print “NoMatchingTemplate“
                    print “搜索引擎查询,此功能暂不支持“

                #多答案选项选择的策略:
                if len(ans) == 0:
                    ans = mybot.respond(‘找不到答案‘)
                    print ‘Jackson:‘ + ans
                elif len(ans) >1 and  type(ans) == list:
                    print “不确定候选答案“
                    print ‘Jackson: ‘
                    for a in ans:
                        print a.encode(“utf8“)
                else:
                    print ans
            # 匹配模版
            else:
                print ‘Jackson:‘ + response

        #print mybot.respond(raw_input(“Enter your message >> “))

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        459  2018-01-15 18:28  源码2\kg\code\.idea\code.iml

     文件        200  2018-01-15 18:28  源码2\kg\code\.idea\encodings.xml

     文件        228  2018-01-15 18:28  源码2\kg\code\.idea\inspectionProfiles\profiles_settings.xml

     文件        212  2018-01-15 18:28  源码2\kg\code\.idea\misc.xml

     文件        260  2018-01-15 18:28  源码2\kg\code\.idea\modules.xml

     文件      27935  2018-01-18 08:08  源码2\kg\code\.idea\workspace.xml

     文件         46  2018-01-15 18:52  源码2\kg\code\Readme.txt

     文件       2773  2018-01-16 10:56  源码2\kg\code\src\Jackson.py

     文件      32802  2017-01-05 23:24  源码2\kg\code\src\resource\alice.aiml

     文件        665  2018-01-15 21:59  源码2\kg\code\src\resource\basic_chat.aiml

     文件      41968  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\ai.aiml

     文件      32802  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\alice.aiml

     文件       2441  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\astrology.aiml

     文件     407214  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\atomic.aiml

     文件      94417  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\biography.aiml

     文件     434764  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\bot.aiml

     文件       7777  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\bot_profile.aiml

     文件     165320  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\client.aiml

     文件      31111  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\client_profile.aiml

     文件      22108  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\computers.aiml

     文件       1765  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\continuation.aiml

     文件       4265  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\date.aiml

     文件     668020  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\default.aiml

     文件       5258  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\drugs.aiml

     文件      15537  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\emotion.aiml

     文件       5550  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\food.aiml

     文件     165156  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\geography.aiml

     文件      10476  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\gossip.aiml

     文件       1787  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\history.aiml

     文件      11655  2017-01-05 23:24  源码2\kg\code\src\resource\en\alice\humor.aiml

............此处省略869个文件信息

评论

共有 条评论