You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Llama3构建PropertyGraphIndex连接Neo4j时遇ConnectError求助

解决LlamaIndex连接Neo4j Desktop的ConnectError问题

核心排查与修复步骤

  • 严格匹配连接参数
    打开Neo4j Desktop对应数据库的「Details」面板,核对以下参数:

    • 协议:默认是neo4j+s(加密连接),未开启加密则用neo4j或bolt
    • 端口:Bolt端口默认7687,确保代码中端口与面板显示一致
    • 用户名/密码:必须和数据库设置的凭据完全匹配,注意大小写
      示例正确配置:
    from llama_index.graph_stores.neo4j import Neo4jGraphStore
    graph_store = Neo4jGraphStore(
        username="neo4j",
        password="你的数据库密码",
        url="neo4j+s://localhost:7687",
        database="neo4j"  # 若自定义了数据库名需对应修改
    )
    
  • 排查系统防火墙拦截
    Windows Defender防火墙或第三方杀毒软件可能拦截LlamaIndex对7687端口的请求。临时关闭防火墙测试,或手动添加允许Python进程通过防火墙的规则。

  • 确认APOC配置权限
    进入Neo4j数据库的「Settings」面板,搜索并确认以下配置已开启:

    dbms.security.procedures.unrestricted=apoc.*
    dbms.security.procedures.allowlist=apoc.*
    

    修改后重启数据库生效。

  • 验证版本兼容性

    • 升级LlamaIndex到最新稳定版:pip install --upgrade llama-index llama-index-graph-stores-neo4j
    • Neo4j Desktop建议使用4.4.x或5.x稳定版,避免老旧版本的兼容性问题
  • 直接测试Bolt连接
    用Neo4j官方Python包测试基础连接,排除LlamaIndex层面问题:

    from neo4j import GraphDatabase
    driver = GraphDatabase.driver("neo4j+s://localhost:7687", auth=("neo4j", "你的密码"))
    with driver.session() as session:
        result = session.run("RETURN 1 AS num")
        print(result.single()["num"])
    driver.close()
    

    若这段代码报错,聚焦基础连接问题排查;若正常,检查LlamaIndex的GraphStore配置是否有误。

常见错误点

  • 混淆浏览器HTTP端口(7474)与Bolt端口(7687)
  • 开启Neo4j加密连接但代码用了非加密协议(如bolt://而非neo4j+s://)
  • 数据库密码含特殊字符时未正确用双引号包裹字符串

内容的提问来源于stack exchange,提问作者Kcndze

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 21:48:13