[Question]: a question about an Error

用户在使用 RAGFlow 创建 Graph RAG 时,LLM 和 Embedding 模型均为阿里云通义千问(Qwen),触发报错。常规 RAG 功能正常,仅在创建 Graph RAG 时出现。

[Question]: a question about an Error

[Question]: a question about an Error

快速结论:此报错通常发生在使用阿里云 Qwen 模型创建 Graph RAG 时,由 Docker 容器网络隔离或 API 并发请求限流导致。优先排查容器内能否访问 dashscope.aliyuncs.com,并降低 Embedding 并发数。

问题场景

用户在使用 RAGFlow 创建 Graph RAG 时,LLM 和 Embedding 模型均为阿里云通义千问(Qwen),触发报错。常规 RAG 功能正常,仅在创建 Graph RAG 时出现。

报错原文

(用户未提供完整报错原文,但结合 Issue 上下文及关联 Issue #4060,可能包含:Errno 101 Network is unreachable 类似内容)

原因分析

存在两个可能原因:

  • Docker 容器网络隔离:虽然主机可以访问阿里云 API,但 RAGFlow 容器可能因网络隔离无法连接 dashscope.aliyuncs.com
  • API 并发限流:Graph RAG 在处理 Embedding 时默认使用最多 10 个并发操作,可能超出阿里云 API 的速率限制,导致请求失败。

环境排查

  • 确认 RAGFlow 版本(旧版本可能存在已知 Bug,关联 Issue #4060)。
  • 确认 Docker 容器能否访问阿里云 API(需在容器内执行测试命令)。
  • 确认防火墙是否阻止 Docker 出站连接至端口 443 和 80。
  • 确认是否配置了代理或 HTTP_CLIENT_PROXY 环境变量。

解决步骤

  1. 从容器内测试网络连通性:执行 docker exec -it <ragflow-container> bash,然后运行 curl https://dashscope.aliyuncs.com,确认容器能否访问阿里云 API。
  2. 升级 RAGFlow:如果使用的是旧版本,可优先尝试升级至最新版。Issue #4060 中提到 dashscope.aliyuncs.com 的 Errno 101 问题已在后续版本中修复。
  3. 降低 Graph RAG 并发参数:在 .env 文件中添加以下配置并重启 Docker 容器(可优先尝试):
    EMBEDDING_BATCH_SIZE=4
    GRAPH_EXTRACTOR_MAX_WORKERS=2
    MAX_CONCURRENT_TASKS=1
  4. 配置代理(如需要):如果容器需要通过代理访问外部网络,可在 docker-compose.yml 的环境变量中添加:
    environment:
      - http_proxy=http://host.docker.internal:8080
      - https_proxy=http://host.docker.internal:8080

    或设置 HTTP_CLIENT_PROXY 环境变量

  5. 检查防火墙规则:确保 Docker 容器出站连接端口 443 和 80 未被屏蔽。

验证方法

完成上述步骤后,重新尝试创建 Graph RAG,观察是否仍出现报错。若报错消失,则问题解决。

参考来源

infiniflow/ragflow #13461

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

celebrityanime
celebrityanime
文章: 7429

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注