Skip to content

Define Paddle/model caching and deployment strategy (docs + scripts) #109

Description

@loootte

Problem

PaddleOCR 与模型体积大,且首次下载/安装在不同环境下表现不一;目前仓库对模型与大依赖的管理策略不明确,这会导致开发者和 CI 在安装/缓存/发布阶段遇到不一致或失败。

Proposed work

  • 编写 docs/deploy-models.md(或扩展 docs/deploy.md)说明:
    • 推荐的 Paddle base 镜像(CPU/GPU)和对应 Python 版本
    • CI 中缓存 Paddle 模型与本地缓存目录(比如 ~/.paddleocr)的策略与 cache key 设计
    • 可选:提供一个小脚本 scripts/fetch-paddle-models.py 下载并校验模型并写入 samples/paddle-models/ 或 CI 缓存路径
    • 说明在 Sidecar / Windows 打包时如何处理模型(预装 vs 运行时下载 vs 附加体积)
  • 在仓库根添加一个可选的 requirements-eval.txt(用于 eval 的 Paddle 版本),并在 CI 文档中明确哪条 workflow 会使用它
  • 在 docs 中建议一个分层发布策略:default release(不包含 Paddle)和 full release(包含预装模型或指向镜像)

Acceptance criteria

  1. docs/deploy-models.md(或 docs/deploy.md 的一节)存在并涵盖上述内容。
  2. scripts/fetch-paddle-models.py(可选)草案存在,能在 CI 中单独运行以预拉模型到缓存目录。
  3. requirements-eval.txt 已在 core/ 并在 README/CI 文档中列出其目的。

Notes

  • 不要把大模型提交到仓库;使用缓存或外部下载的方式。
  • 保持 CI 的可重复性,建议在 CI 中先检查缓存,再决定是否下载。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions