Label Studio 社区版大项目 UI 导出超时怎么改用 SDK 快照或控制台命令导出?

发布时间:2026/9/13 11:08:30
Label Studio 社区版大项目 UI 导出超时怎么改用 SDK 快照或控制台命令导出? Label Studio 社区版大项目 UI 导出超时怎么改用 SDK 快照或控制台命令导出【免费下载链接】label-studioLabel Studio is a multi-type data labeling and annotation tool with standardized output format项目地址: https://gitcode.com/GitHub_Trending/la/label-studio在 Label Studio 社区版Community Edition中项目页面里的Export按钮走的是同步导出导出请求在当前 HTTP 请求内生成完整文件社区版默认不跑后台导出 worker。当任务量大时导出耗时超过反向代理或 ingress 配置的超时时间文档中提到的常见值是90 秒左右浏览器端就会收到 502/504 错误或导出超时UI 这条路走不通。遇到这个现象时Label Studio 官方文档给出了两条替代路径用 SDK/Snapshot API 创建快照导出异步生成不受单次请求超时限制或者直接在运行 Label Studio 的机器上执行label-studio export控制台命令。本文按这两条路径给出可执行步骤和验证方式。先确认问题是否属于导出超时判断依据来自 导出文档导出按钮在 UI 中点击后社区版是synchronously生成导出的大项目的耗时可能超过反向代理/ingress 的超时配置表现为 502/504 或导出超时社区版 UI 导出还有一个行为特性无论页签上设置了什么过滤器导出都会包含所有已标注任务被取消的已标注任务也会包含在内。如果 UI 导出是在请求返回前成功完成、只是文件内容不符合预期例如想应用页签过滤器那是另一个问题——过滤器不会作用于 UI 导出需要用快照导出才能实现按过滤条件导出。本文聚焦的是“导出请求本身超时失败”的场景。路径一用 SDK / Snapshot API 做快照导出准备条件安装 Python SDK快照导出的 API 与 SDK 封装的是同一组接口pip install label-studio-sdk准备两个值Label Studio 实例的 base URL下文示例沿用文档中的https://localhost:8080替换为你的实际地址Access token在Account Settings页面生成见 Access Tokens 文档。SDK 用法示例见 SDK 文档# Define the URL where Label Studio is accessible LABEL_STUDIO_URL YOUR_BASE_URL # API key can be either your personal access token or legacy access token LABEL_STUDIO_API_KEY YOUR_API_KEY # Import the SDK and the client module from label_studio_sdk import LabelStudio client LabelStudio(base_urlLABEL_STUDIO_URL, api_keyLABEL_STUDIO_API_KEY)YOUR_BASE_URL和YOUR_API_KEY需要你替换为实例地址和实际 token。执行步骤快照导出分三步文档原文描述为对 Snapshot API 的三次调用URL 结构可在 data_export 路由 中核对第 1 步创建快照POST向api/projects/{id}/exports/发起 POST 请求响应中会包含新建导出文件的id。{id}是项目 ID需要替换成实际值curl -X POST https://localhost:8080/api/projects/{id}/exports/ \ -H Authorization: Token {YOUR_TOKEN} \ -H Content-Type: application/json{YOUR_TOKEN}替换为你的 access token文档中的认证示例使用Authorization: Token头见 导出文档。第 2 步用id作为export_pk轮询状态GETcurl -X GET https://localhost:8080/api/projects/{id}/exports/{export_pk} \ -H Authorization: Token {YOUR_TOKEN}第 3 步下载导出文件GET快照完成后用export_pk调 download 接口exportType指定导出格式curl -X GET https://localhost:8080/api/projects/{id}/exports/{export_pk}/download?exportTypeJSON \ -H Authorization: Token {YOUR_TOKEN} -o export_result.json验证方式状态字段取in_progress或completed见 Export 模型定义。状态为completed前不要发起下载download 接口在快照未完成时会返回 404 和Export is not completed见 导出下载接口以此判断是否已就绪。下载成功时响应是导出文件本身Content-Disposition带下载文件名落到-o指定的本地路径。内容侧的已知行为快照默认包含所有无标注任务文档原文Snapshots include all tasks without annotations by default这点与 UI 同步导出“只导已标注任务”不同核对文件条数时注意。路径二在 Label Studio 所在机器上用控制台命令导出如果你能直接登录运行 Label Studio 的机器文档给出的另一条路是label-studio export子命令导出在你的终端里完成完全不经过浏览器和反向代理因此不受 UI 那条请求链的超时限制label-studio export project-id export-format --export-pathoutput-path参数说明来自 命令解析定义project_id项目 ID必填位置参数export_format导出格式如JSON、JSON_MIN、CSV等必填位置参数--export-path导出文件路径或目录可选不传时使用默认导出目录。需要排查时文档给出了带日志的变体在命令前加DEBUG1 LOG_LEVELDEBUGDEBUG1 LOG_LEVELDEBUG label-studio export project-id export-format --export-pathoutput-path该命令只在 Label Studio 进程所在的机器上有意义导出直接读写项目数据库与本地磁盘远程机器上无法替代。验证方式命令执行结束后检查--export-path指定的路径或默认导出目录下是否生成了对应格式的文件文件内容即为该项目的任务与标注数据。导出格式怎么选两条路径共用同一套格式文档列出的常用格式包括格式用途JSON原始 JSON同时导出任务数据和标注支持所有项目类型JSON_MIN只导出from_name/to_name相关字段不含 Label Studio 专有字段CSV/TSV表格化结果列名取自标注配置里的from_name/to_nameCOCO/YOLO/Pascal VOC XML图像目标检测等格式YOLO/COCO 支持RectangleLabels、KeyPointLabels等标签组件限制见 格式说明CoNLL2003文本 NERTextLabels组件完整格式列表及各格式的组件要求见 导出文档。边界说明社区版 UI 导出是同步的这是架构选择社区版不跑后台导出 worker不是可以调大的 bug文档没有给出“调大代理超时就够”的承诺大项目请直接走快照或控制台命令。企业版Enterprise在 UI 内提供后台快照导出Create New Snapshot / Download社区版 UI 没有该入口本文两条路径均为社区版可用路径。若只是小项目文档建议直接调 Easy Export 同步端点GET /api/projects/{id}/export?exportTypeJSON可加download_all_taskstrue导出含未标注任务的全部任务大项目文档明确建议改用快照导出以避免超时。【免费下载链接】label-studioLabel Studio is a multi-type data labeling and annotation tool with standardized output format项目地址: https://gitcode.com/GitHub_Trending/la/label-studio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考