[Bug]: 21:05:44 Page(49~55): [ERROR]Generate embedding error:do embedding request: Post “http://127.0.0.1:45507/embedding”: EOF 21:05:44 [ER

用户在 RAGFlow 中解析 PDF 文件时触发 embedding 生成错误。报错日志显示尝试 POST 请求 http://127.0.0.1:45507/embedding 时收到 EOF 响应,导致整个解析过程失败。

[Bug]: 21:05:44 Page(49~55): [ERROR]Generate embedding error:do embedding request: Post "http://127.0.0.1:45507/embedding": EOF 21:05:44 [ER

[Bug]: 21:05:44 Page(49~55): [ERROR]Generate embedding error:do embedding request: Post “http://127.0.0.1:45507/embedding”: EOF 21:05:44 [ER

快速结论:该报错发生在 RAGFlow 解析 PDF 并调用 embedding 服务时,服务端意外关闭连接(EOF)。优先排查 embedding 服务是否正常运行,以及在 Docker 环境中是否将 127.0.0.1 误用于容器间通信。

问题场景

用户在 RAGFlow 中解析 PDF 文件时触发 embedding 生成错误。报错日志显示尝试 POST 请求 http://127.0.0.1:45507/embedding 时收到 EOF 响应,导致整个解析过程失败。

报错原文

21:05:44 Page(49~55): [ERROR]Generate embedding error:do embedding request: Post "http://127.0.0.1:45507/embedding": EOF
21:05:44 [ERROR][Exception]: do embedding request: Post "http://127.0.0.1:45507/embedding": EOF

原因分析

可能原因包括:

  • Docker 容器网络配置问题(最常见):在 RAGFlow 的 Docker 部署中,127.0.0.1 指向的是容器自身,而非宿主机或其他容器。如果 embedding 服务跑在另一个容器中,这个地址将无法正确路由。
  • embedding 服务未运行或已崩溃:服务进程意外退出导致连接被拒绝或提前关闭。
  • embedding 服务负荷过高或无法响应:大量并发请求可能导致服务超时并断开连接。
  • 配置中的地址/端口与实际不匹配:embedding 服务的监听地址或端口与本配置不符。

环境排查

  • 确认 RAGFlow 部署方式:Docker 容器还是直接运行?(原 Issue 提示是 Docker 环境)
  • 检查 embedding 服务的类型:Ollama、本地 Python 服务,还是 SaaS 服务?
  • 确认 embedding 服务的监听地址和端口是否为 45507
  • 查看 embedding 服务日志中是否有崩溃或连接失败的记录。
  • 检查 HOST_IPEMBEDDING_HOST 等环境变量的配置。

解决步骤

  1. 检查 embedding 服务是否在运行:使用 curl -X POST "http://127.0.0.1:45507/embedding" 或在容器内部执行类似命令测试连通性。
  2. 如果是 Docker 部署,修改 HOST_IP 配置为 localhost:在 RAGFlow 的配置文件中,将 HOST_IP 或相应的 embedding 服务器地址从 127.0.0.1 改为 localhost。这已被多位用户验证可解决类似 EOF 错误(参见 #8007)。
  3. 如果 embedding 服务不稳定,可尝试切换为 SaaS embedding 服务:例如使用 OpenAI 的 embedding API,避免本地服务不健康的状况(参见 #8034)。
  4. 对于 Ollama 后端,尝试调整 keep_alive 参数:RAGFlow 最近的更新改进了 Ollama embedding 请求的 keep_alive 处理,升级到最新版本可能解决连接过早关闭的问题(参见 #8734)。
  5. 校验 API 请求格式:确认发送的 POST 请求体符合 /v1/embeddings 接口的 JSON 格式要求(参见 #8876)。

验证方法

重新触发 PDF 解析任务,观察日志中不再出现 EOF 错误,embedding 生成成功,任务正常完成即表示问题已解决。

参考来源

infiniflow/ragflow #8905

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

celebrityanime
celebrityanime
文章: 14558

发表回复

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