Neo4j GDS(Graph Data Science)库安装(Mac版)

Neo4j GDS(Graph Data Science)库安装(Mac版)

Neo4j GDS库安装(Mac版)

前言

最近在研究llm-graph-builder这个项目。因为我之前对数据库这里不太懂,所以里面的Neo4j的东西让我理解起来很头疼。这篇是我一步一步安装下来,然后一步步截图来的。照着我的做,准没有问题。如果你是windows版本,那这篇博客也能给你起到参考作用。

GDS(Graph Data Science)库官方介绍

The Neo4j Graph Data Science (GDS) library provides efficiently implemented, parallel versions of common graph algorithms, exposed as Cypher procedures. Additionally, GDS includes machine learning pipelines to train predictive supervised models to solve graph problems, such as predicting missing relationships.

翻译如下:

Neo4j Graph Data Science (GDS) 库提供常见图形算法的高效实现、并行版本,以 Cypher 程序的形式公开。此外,GDS 还包括机器学习管道,用于训练预测监督模型来解决图形问题,例如预测缺失关系。

GDS(Graph Data Science)库安装

1、确认咱们到底装了GDS没有

首先在 http://localhost:7474中(也就是在Neo4j)输入

bash 复制代码
RETURN gds.version()

如果结果是(如图),

sql 复制代码
Neo.ClientError.Statement.SyntaxError
Unknown function 'gds.version' (line 1, column 8 (offset: 7))
"RETURN gds.version()"
        ^

这就说明咱们确实没装GDS,开始第二步。

2、找到并下载我们装的Neo4j对应的GDS版本

首先在终端 输入

bash 复制代码
open /usr/local/Cellar/neo4j

找到自己的neo4j的版本(如图),那我neo4j版本就是2025.01.0

然后进入Neo4j Graph Data Science官方文档也就是这个网址
https://neo4j.com/docs/graph-data-science/current/installation/supported-neo4j-versions/

里找对应的关系,如图。

从这张图,我们可以看出我们要装的GDS的版本是2.14。

接着进入https://github.com/neo4j/graph-data-science/releases这个网站里,找到我们要装的版本的jar包下载下来。(如图)

3、把jar包复制到neo4j的plugins的文件夹内和修改,验证是否装成功

把下载完成的neo4j-graph-data-science的jar包复制到neo4j的plugins的文件夹里面

也就是/usr/local/Cellar/neo4j/你的版本/libexec/plugins 这个路径里面。

接着打开neo4j的conf/neo4j.conf。(如图)

打开之后,我们根据自己的neo4j的版本,新版本(Neo4j 4.3+),加入

bash 复制代码
dbms.security.procedures.unrestricted=gds.*
dbms.security.procedures.allowlist=gds.*

而旧版本(Neo4j 3.x-4.2),则加入

bash 复制代码
dbms.security.procedures.unrestricted=gds.*
dbms.security.procedures.whitelist=gds.*

加入作用如下就是 无限制和白名单。

bash 复制代码
dbms.security.procedures.unrestricted=gds.*
作用:允许所有以 gds. 开头的存储过程无需额外权限即可被任何用户调用。
场景:GDS 库中的算法(如 PageRank、社区检测等)通常需要高性能计算权限。将此参数设置为 gds.* 意味着任何用户(包括未登录用户)都可以直接执行这些过程,无需授予 EXECUTE PROCEDURE 权限。
风险:开放权限可能带来安全隐患,需确保仅在可信环境中使用。

dbms.security.procedures.whitelist=gds.*
dbms.security.procedures.allowlist=gds.*
作用:这两个参数定义了一个允许执行的存储过程白名单。只有列出的存储过程(如 gds.*)可以被调用,其他未列出的过程会被阻止。
历史变化:whitelist 是旧版本参数名称(Neo4j 3.x-4.2)。allowlist 是新版本参数名称(Neo4j 4.3+),出于术语规范性考虑,弃用了 whitelist。

要加到 dbms.security 那一堆,这样之后找也比较好找,加入后保存。如果你和我一样前面装了apoc,那么就把gds加在apoc后面就可以了,不能两个都加,会报错哦。

接着输入

bash 复制代码
RETURN gds.version()

结果如图,就成功了

错误示范:

输入neo4j restart的报错如下:

bash 复制代码
Stopping Neo4j............ stopped.
Validating Neo4j configuration: /usr/local/Cellar/neo4j/2025.01.0/libexec/conf/neo4j.conf
1 issue found.
Error: dbms.security.procedures.allowlist declared multiple times.

Skipping Log4j validation due to previous issues.

Configuration file validation failed.
2025-03-21 09:17:07.573+0000 ERROR /usr/local/Cellar/neo4j/2025.01.0/libexec/conf/neo4j.conf - Error: dbms.security.procedures.allowlist declared multiple times.
Configuration contains errors. This validation can be performed again using 'neo4j-admin server validate-config'.
Run with '--verbose' for a more detailed error message.
(base) phoenix@liwenchangdeMBP ~ % neo4j restart
Neo4j is not running.
Validating Neo4j configuration: /usr/local/Cellar/neo4j/2025.01.0/libexec/conf/neo4j.conf
1 issue found.
Error: dbms.security.procedures.allowlist declared multiple times.

Skipping Log4j validation due to previous issues.

Configuration file validation failed.
2025-03-21 09:17:25.059+0000 ERROR /usr/local/Cellar/neo4j/2025.01.0/libexec/conf/neo4j.conf - Error: dbms.security.procedures.allowlist declared multiple times.
Configuration contains errors. This validation can be performed again using 'neo4j-admin server validate-config'.
Run with '--verbose' for a more detailed error message.

参考博客

Neo4j使用记录--APOC和GDS的安装【实践】

结束语

恭喜恭喜,相信一步步跟我做下来的你肯定也成功了。有什么问题后可以给我留言和私信,我看到后就会回复。

相关推荐
财经资讯数据_灵砚智能几秒前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年5月2日
人工智能·python·信息可视化·自然语言处理·ai编程
70asunflower几秒前
从硬件决策哲学到生态竞争壁垒
人工智能·芯片
2zcode1 分钟前
基于深度学习的口腔疾病自主诊断系统设计与实现(UI界面+训练代码+数据集)
人工智能·深度学习·口腔疾病
网络工程小王2 分钟前
【LangChain Prompt 完整指南】提示词篇
运维·人工智能·学习
weixin_397578024 分钟前
DeerFlow 2.0 深度解析
人工智能
量子-Alex5 分钟前
【大模型】EvoLM EvoLM: 探寻遗失的语言模型训练动态
人工智能·语言模型·自然语言处理
你可以叫我仔哥呀5 分钟前
Agent架构之ReAct
人工智能·ai·大模型
大象AI共学6 分钟前
我让AI写了个网页,它自动变成了视频
人工智能·音视频
ting94520006 分钟前
腾讯 Hy3 Preview (Free) 深度解析:免费体验 295B 参数顶级 MoE 大模型
人工智能
2601_956139427 分钟前
集团品牌全案公司哪家专业
大数据·人工智能·python