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的安装【实践】

结束语

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

相关推荐
三花AI14 分钟前
ComfyUI 子工作流功能:一次编辑全局更新
人工智能
大模型铲屎官15 分钟前
【深度学习-Day 23】框架实战:模型训练与评估核心环节详解 (MNIST实战)
人工智能·pytorch·python·深度学习·大模型·llm·mnist
Elastic 中国社区官方博客18 分钟前
Elastic 获得 AWS 教育 ISV 合作伙伴资质,进一步增强教育解决方案产品组合
大数据·人工智能·elasticsearch·搜索引擎·云计算·全文检索·aws
Jamence25 分钟前
多模态大语言模型arxiv论文略读(106)
论文阅读·人工智能·语言模型·自然语言处理·论文笔记
caig00034 分钟前
稳定币的深度剖析与展望
人工智能·区块链
反向跟单策略35 分钟前
期货反向跟单运营逻辑推导思路
大数据·人工智能·数据分析·区块链
机器之心1 小时前
MoE推理「王炸」组合:昇腾×盘古让推理性能狂飙6-8倍
人工智能
西柚小萌新1 小时前
【大模型:知识图谱】--5.neo4j数据库管理(cypher语法2)
数据库·知识图谱·neo4j
艾醒(AiXing-w)1 小时前
探索大语言模型(LLM):RSE流程详解——从文档中精准识别高相关片段
数据库·人工智能·语言模型
陈奕昆2 小时前
4.2 HarmonyOS NEXT分布式AI应用实践:联邦学习、跨设备协作与个性化推荐实战
人工智能·分布式·harmonyos