【Mac 实战】简单知识图谱搭建步骤详解(Neo4j + py2neo)

【Mac 实战】简单知识图谱搭建步骤详解(Neo4j + py2neo)

目录

一、Neo4j图数据库

1、neo4j 安装 - mac brew版

2、neo4j 快速入门

3、neo4j 基本操作

(1)增操作

(2)查操作

(3)改操作

(4)删操作

4、安装py2neo

二、数据预处理

1、数据清洗

2、知识建模

(1)识别实体

(2)识别实体属性

(3)识别关系

三、搭建知识图谱


博主的数据集是用的自己的数据集,大家练习时可以在网上找一个数据量小的数据集练手。

一、Neo4j图数据库

        Neo4j 是一个高性能的、原生的图数据库。它不采用传统的行和列的表格结构,而是使用节点关系的图结构来存储和管理数据。

1、neo4j 安装 - mac brew版

(1)安装neo4j

安装了Homebrew直接在终端输入以下命令即可



安装后,Neo4j 浏览器可通过 http://localhost:7474 访问。





(2)登录neo4j



【1】在登录页面填写信息:Connect URL:输入 neo4j://localhost:7687Authentication type:保持为 "Username / Password"Username:输入 neo4jPassword:首次连接时输入默认密码 neo4j点击蓝色的 Connect​ 按钮



【2】首次连接成功后,系统会强制要求修改默认密码:当前密码:neo4j设置一个新的安全密码(请务必记住)



【3】测试连接

连接成功后,在顶部的命令行中输入 Cypher 查询语句,例如:

2、neo4j 快速入门

【1】我们点击左边栏的星星图标,在Example Graphs中选择Movie Graph,点击运行,就会弹出一个关于电影图谱的教程





【2】创建图谱

点击灰色代码框,创建图谱的代码会自动复制到代码框



点击运行,即可看到创建的电影图谱





【3】查找

下面是一些关于查找的语句:查找名叫Tom Hanks的演员查找标题为Cloud Atlas的电影查找10个人查找在20世纪90年代上映的电影







【4】询问



后续还有一些查询语句教程不一一列举了,感兴趣的同学可以自行运行。

3、neo4j 基本操作

接下来我们以【麦当劳】为背景,用Neo4j的Cypher查询语言演示基本增删改查操作。

下面我们建立一个简单的图谱,包含两种节点和一种关系:

  • 节点类型1:餐厅
    • 属性:名称地址开业年份
  • 节点类型2:产品
    • 属性:名称价格类别
  • 关系类型:供应
    • 属性:自何时起供应
(1)增操作

【1】创建节点

【2】创建关系
(2)查操作

【1】查找所有餐厅





【2】查找特定餐厅供应的所有产品





【3】查找供应可乐的所有餐厅





因为前面没有创建这么多关系,下面只做操作语法展示



【4】多跳查询 - 查找与MC销售同类产品的其他餐厅

因为前面没有创建这么多关系,这里只做操作语法展示

【5】路径查询 - 查找两家餐厅通过共同产品产生的关联

(3)改操作

【1】更新节点属性

【2】新增节点属性

【3】更新关系属性
(4)删操作

【1】删除关系

【2】删除节点(必须先删除其所有关系)

【3】删除所有节点
通过以上麦当劳的例子,我们可以看到Neo4j的操作非常直观:CREATE/ MERGE: 对应SQL的INSERT,用于创建节点和关系。MATCH: 对应SQL的SELECT ... FROM,是查询的起点,用于定位图形中的模式。WHERE: 对应SQL的WHERE,用于过滤结果。SET: 对应SQL的UPDATE,用于更新属性。DELETE/ DETACH DELETE: 对应SQL的DELETE,用于删除元素。

Neo4j的核心优势在于通过MATCH子句描述关联模式,例如(餐厅)-[供应]->(产品),这使得查询复杂的关系网络变得简单和高效。
4、安装py2neo

py2neo 是 Python 连接和操作 Neo4j 图数据库的主要工具库,适用于需要处理复杂关系数据的应用场景。

二、数据预处理

数据预处理包括数据清洗、实体识别等步骤,目的是将原始数据转换为适合构建知识图谱的格式。

1、数据清洗

数据质量要求:补全缺失值:对于明显缺失的信息(如设备型号),可以标记为【缺失】或根据上下文推断。格式标准化:将日期统一为【YYYY-MM-DD】格式。去除重复值:删除重复的条目
2、知识建模

我们需要从业务角度理解数据,设计出合理的图谱结构。(1)识别实体

实体是知识图谱中的【节点】。在我的数据集中,可以识别出以下主要实体类型:订单记录:核心实体,每一笔订单就是一个销售事件。产品:订单中的商品。例如,“生日蛋糕”、“马卡龙”、“手冲咖啡”。数据中【产品名称】和【产品类别】是其属性。配方标准:制作产品的依据和标准。数据中【配方名称】、【配料序号】、【制作要点】等是其属性。客户反馈:客户对订单或产品的评价与建议。促销活动:与订单关联的营销方案。门店:订单发生的背景。

(2)识别实体属性

属性是描述实体的键值对。订单记录​ 的属性:下单时间、订单描述、订单金额、是否加急、订单状态、支付方式、配送地址。产品​ 的属性:产品名称、产品类别、规格、单价、保质期、产品编号。配方标准​ 的属性:配方名称、配料序号、制作步骤、所需时间、适用产品。客户反馈​ 的属性:反馈内容、评分。促销活动​ 的属性:活动名称、折扣力度、适用条件。门店​ 的属性:门店地址、营业时间、联系电话。

(3)识别关系

关系是连接实体的边,是图谱价值的体现。门店​ -- 提供 --> 产品订单记录​ -- 产生于 --> 门店订单记录​ -- 包含 --> 产品订单记录​ -- 触发 --> 促销活动订单记录​ -- 收到 --> 客户反馈产品​ -- 依据 --> 配方标准配方标准​ -- 适用于 --> 产品

三、搭建知识图谱

下面代码为简化后的模板代码,需要根据自己的数据集进行修改后再运行。



运行后效果如下图:

Read more

第三章-提示词-解锁Prompt提示词工程核销逻辑,开启高效AI交互(10/36)

第三章-提示词-解锁Prompt提示词工程核销逻辑,开启高效AI交互(10/36)

摘要:Prompt 提示词工程通过设计指令、上下文、输入与输出格式,引导大语言模型精准完成任务,并依托“核销流程”(解析-拆解-理解-生成-验证)确保结果合规。文章系统讲解提示词编写策略、幻觉与输出不匹配的应对方法,展示内容生成、数据分析等场景案例,并展望自动提示词生成、多模态融合等未来趋势。 引言 在人工智能飞速发展的当下,大语言模型(LLM)如 ChatGPT、文心一言等,已经深度融入到我们的生活和工作的各个领域。而 prompt 提示词工程,作为与这些大语言模型交互的关键技术,正逐渐成为 AI 领域中不可或缺的重要环节。一个精心设计的 prompt,能够引导模型生成高质量、符合需求的输出,无论是文本创作、智能问答,还是代码生成等任务,提示词的质量都直接影响着最终的效果 。 在实际应用中,随着对提示词使用的不断深入,我们会面临一个重要的问题 —— 核销逻辑。核销逻辑在 prompt 提示词工程中起着至关重要的作用,它关乎着资源的有效利用、成本的控制以及系统的稳定运行。那么,这个神秘的核销逻辑究竟是什么?

SpringAI 大模型应用开发篇-SpringAI 项目的新手入门知识

SpringAI 大模型应用开发篇-SpringAI 项目的新手入门知识

🔥博客主页: 【小扳_-ZEEKLOG博客】 ❤感谢大家点赞👍收藏⭐评论✍ 文章目录         1.0 SpringAI 概述         1.1 大模型的使用         2.0 SpringAI 新手入门         2.1 配置 pom.xml 文件         2.2 配置 application.yaml 文件         2.3 配置 ChatClient         2.4 同步调用         2.5 流式调用         2.6 System 设定         2.7 日志功能         2.8 会话记忆功能

Flutter 三方库 langchain_google 的鸿蒙化适配指南 - 链接 Gemini 智慧中枢、LangChain AI 实战、鸿蒙级智能应用专家

Flutter 三方库 langchain_google 的鸿蒙化适配指南 - 链接 Gemini 智慧中枢、LangChain AI 实战、鸿蒙级智能应用专家

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 langchain_google 的鸿蒙化适配指南 - 链接 Gemini 智慧中枢、LangChain AI 实战、鸿蒙级智能应用专家 在鸿蒙跨平台应用迈向“智能化”的今天,接入生成式 AI(AIGC)已不再是加分项,而是必选项。如果你想在鸿蒙端利用 Google Gemini 的强大推理能力打造智能助手、自动化翻译或垂直领域 RAG 系统。今天我们要深度解析的 langchain_google——一个通过 LangChain 标准协议封装的 Google AI 适配器,正是帮你构建“大模型大脑”的核心插件。 前言 langchain_google 是 LangChain.

AI能赚钱?别被割韭菜了!深度拆解:为什么你学了100个AI工具却赚不到1分钱

AI能赚钱?别被割韭菜了!深度拆解:为什么你学了100个AI工具却赚不到1分钱

🌟 核心真相:AI是放大器,不是印钞机。没有商业认知的AI技能,就像给不会开车的人发了一辆法拉利——只会原地打转,甚至翻车。 目录 🌪️ 引言:那个学了30个AI工具却亏了5万的朋友 🎤 一、"AI能赚钱 ≠ 人人能赚钱" 🔍 金句实录: 🤯 二、残酷真相:AI工具≠赚钱能力 🔍 你是不是也这样? 💡 关键洞察:工具只是"术",商业才是"道" 🧭 三、破局三板斧:普通人也能启动的AI变现逻辑 🎯 第一板斧:标签聚焦——"别人想起你时,第一个词是什么?" ✅ 正确姿势(调研数据): 🌱 第二板斧:70分哲学——"服务30分的客户,你就是专家" 🌰 真实案例: ✅ 三步启动法(新手友好)