Could not use APOC procedures

文章讲述了在使用Neo4jGraph时遇到的错误,原因是未安装APOC插件。作者尝试升级到5.17.1但发现缺少相关jar包,最终选择降级到4.4.30版本并成功安装了APOC-4.4.0.25-all.jar。
摘要由CSDN通过智能技术生成

报错内容:

Traceback (most recent call last):
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/langchain_community/graphs/neo4j_graph.py", line 205, in __init__
    self.refresh_schema()
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/langchain_community/graphs/neo4j_graph.py", line 248, in refresh_schema
    for el in self.query(
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/langchain_community/graphs/neo4j_graph.py", line 232, in query
    data = session.run(Query(text=query, timeout=self.timeout), params)
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/neo4j/_sync/work/session.py", line 313, in run
    self._auto_result._run(
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/neo4j/_sync/work/result.py", line 181, in _run
    self._attach()
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/neo4j/_sync/work/result.py", line 301, in _attach
    self._connection.fetch_message()
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/neo4j/_sync/io/_common.py", line 178, in inner
    func(*args, **kwargs)
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/neo4j/_sync/io/_bolt.py", line 849, in fetch_message
    res = self._process_message(tag, fields)
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/neo4j/_sync/io/_bolt4.py", line 368, in _process_message
    response.on_failure(summary_metadata or {})
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/neo4j/_sync/io/_common.py", line 245, in on_failure
    raise Neo4jError.hydrate(**metadata)
neo4j.exceptions.ClientError: {code: Neo.ClientError.Procedure.ProcedureNotFound} {message: There is no procedure with the name `apoc.meta.data` registered for this database instance. Please ensure you've spelled the procedure name correctly and that the procedure is properly deployed.}

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/langchain-master/templates/neo4j-semantic-ollama/ingest.py", line 9, in <module>
    graph = Neo4jGraph()
  File "/root/anaconda3/envs/sakura/lib/python3.9/site-packages/langchain_community/graphs/neo4j_graph.py", line 208, in __init__
    raise ValueError(
ValueError: Could not use APOC procedures. Please ensure the APOC plugin is installed in Neo4j and that 'apoc.meta.data()' is allowed in Neo4j configuration

报错原因

没有安装APOC插件

解决方案

我的neo4j版本为5.17.0,可以安装最新的5.17.1neo4j-apoc-procedures
可以看到最新的版本对LLM的支持比较好
在这里插入图片描述
从网上搜索的资料和GitHub官网可以看到需要下载apoc-<version>-all.jar包移动到$NEO4J_HOME/plugins/
在这里插入图片描述
但是5.17.1中没有这个包
在这里插入图片描述
尝试按照上上一个图片中的Build & install the current development branch from source的方式源码编译
在这里插入图片描述
下载了半个小时,编译了20多分钟,放弃了

更换neo4j版本为4.4.30

安装方式参考
最终得到如下版本信息

# java --version
java 11.0.22 2024-01-16 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.22+9-LTS-219)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.22+9-LTS-219, mixed mode)
# neo4j --version
neo4j 4.4.30

这里找到apoc-4.4.0.25-all.jar,单击下载

在这里插入图片描述
上传到$NEO4J_HOME/plugins/
在这里插入图片描述
启动neo4j

neo4j start

打开网页输入

RETURN apoc.version();

在这里插入图片描述
得到版本信息==成功

  • 14
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
APOC是指"Awesome Procedures On Cypher for Neo4j",它是一个在Neo4j图数据库上执行Cypher查询的扩展工具库。APOC提供了一系列的存储过程和函数,用于数据集成、数据转换、图算法、文本处理、日期处理等多种功能。为了安全起见,Neo4j在默认情况下禁用了使用内部API,但可以通过在neo4j.conf配置文件中设置dbms.security.procedures.unrestricted=apoc.*来启用APOC功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Neo4j:入门基础(三)之APOC插件](https://blog.csdn.net/sinat_36226553/article/details/108569048)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Neo4j-APOC扩展与使用](https://blog.csdn.net/m0_38139250/article/details/126935509)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [Neo4jAPOC安装与使用样例](https://blog.csdn.net/twi_twi/article/details/130703688)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值