[Feature Request]: Make BLOB_STORAGE_SIZE_THRESHOLD configurable via environment variable

用户运行 RAGFlow 进行数据源同步时,尤其是使用 WebDAV (如 OpenMediaVault, Synology, Nextcloud)、Seafile 或 S3/R2/GCS 这类 Blob 存储连接器,处理单文件超过 20MB 的 PDF 或扫描书籍时,文件会被静默跳过,仅在日志中出

[Feature Request]: Make BLOB_STORAGE_SIZE_THRESHOLD configurable via environment variable

[Feature Request]: Make BLOB_STORAGE_SIZE_THRESHOLD configurable via environment variable

快速结论:RAGFlow 中 BLOB_STORAGE_SIZE_THRESHOLD 原本硬编码为 20MB,导致通过 WebDAV、Seafile、S3/R2/GCS 同步大文件时自动跳过。该 Issue 已被采纳并合并 PR,现在可通过环境变量 BLOB_STORAGE_SIZE_THRESHOLD 自定义阈值。

问题场景

用户运行 RAGFlow 进行数据源同步时,尤其是使用 WebDAV (如 OpenMediaVault, Synology, Nextcloud)、Seafile 或 S3/R2/GCS 这类 Blob 存储连接器,处理单文件超过 20MB 的 PDF 或扫描书籍时,文件会被静默跳过,仅在日志中出现 WARNING 级别记录。用户无法通过配置调整此限制,除非手动修改容器内源代码(该修改在镜像更新后失效)。

报错原文

WARNING: ... exceeds size threshold of 20971520. Skipping.

该日志由 blob_connector.pyseafile_connector.pywebdav_connector.py 在文件超过 BLOB_STORAGE_SIZE_THRESHOLD(20 * 1024 * 1024 = 20MB)时输出。

原因分析

硬编码限制导致:在 common/data_source/config.py 中,BLOB_STORAGE_SIZE_THRESHOLD 直接被赋值为固定值,不支持环境变量覆盖。RAGFlow 其他连接器(如 Confluence、Google Drive)已支持类似环境变量配置方式,但 Blob 存储相关连接器未统一采用此模式。

环境排查

  • RAGFlow 版本:需确认是否已更新到包含 PR #16806 的版本(约 2026年7月14日之后 release)。
  • 连接器类型:确认数据源类型是否为 WebDAV、Seafile 或 S3/R2/GCS 等 Blob 存储。
  • 日志配置:检查是否开启了 WARNING 级别及以上日志以观察跳过行为。

解决步骤

  1. 升级 RAGFlow 到包含此功能的版本:拉取最新镜像或更新代码至包含 PR #16806 的 commit。
  2. 设置环境变量:在 docker/.env 文件或容器环境变量中添加 BLOB_STORAGE_SIZE_THRESHOLD,以字节为单位指定新阈值。例如设为 50MB:
    BLOB_STORAGE_SIZE_THRESHOLD=52428800
  3. 重启服务:应用环境变量后重启 RAGFlow 容器或相关服务。
  4. (可选)若未升级,可尝试临时方案:手动修改 common/data_source/config.py 后通过 bind mount 覆盖容器内文件,但该方案不适用于升级场景。

验证方法

尝试同步一个略大于原 20MB 阈值的文件(例如 25MB PDF),检查日志中是否不再出现 “exceeds size threshold” 的 WARNING 记录,且文件成功同步。也可通过 env | grep THRESHOLD 确认环境变量已正确加载。

参考来源

infiniflow/ragflow #16634

GamsGo AI

AI 工具推荐

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

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

了解 GamsGo AI

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

celebrityanime
celebrityanime
文章: 13331

发表回复

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