新闻详情

新闻详情

首页 / 资讯中心 / 详情

CVAT 多语言支持完整指南:三步给标注平台加上中文界面

发布时间:2026/9/10 19:02:52来源:尧图网络
CVAT 多语言支持完整指南:三步给标注平台加上中文界面
CVAT 多语言支持完整指南三步给标注平台加上中文界面【免费下载链接】cvatComputer Vision Annotation Tool (CVAT) is a leading platform for building high-quality visual datasets for vision AI. It offers open-source, cloud, and enterprise products, as well as labeling services, for image, video, and 3D annotation with AI-assisted labeling, quality assurance, team collaboration, analytics, and developer APIs.项目地址: https://gitcode.com/GitHub_Trending/cvat/cvat你的标注团队里有日本和俄罗斯同事全英文的标注界面让他们很吃力。这篇 CVAT 多语言支持配置指南以加一门中文为例带你从建语言包、改后端设置讲到 Docker 部署与生效验证。读完后你能给自己的实例加上任何一门新语言。如何新增中文语言包最快路径结论先行三步大约十分钟一门新语言就能全链路跑通。所谓全链路是指界面、API 消息、文档站三处都换成中文而不只是按钮文案。第一步准备语言包。前端管界面文案后端管 API 提示与报错两边不共享文件所以要各建一份。# 前端语言包放 UI 源码里界面文案按这里的键取值 mkdir -p cvat-ui/src/locales touch cvat-ui/src/locales/zh.json # 后端翻译目录Django 约定位置存 .po 待翻文件和 .mo 编译结果 mkdir -p locale/zh_Hans/LC_MESSAGES第二步配置 Django 语言列表。打开 cvat/settings/base.py改三处LANGUAGE_CODE zh-hans # 默认语言用户没选语言时回退到这里 LANGUAGES [(en, English), (zh-hans, 简体中文)] # 允许切换的语言白名单 # MIDDLEWARE 列表里补一行CVAT 默认没启用它 django.middleware.locale.LocaleMiddleware # 每个请求都识别当前语言为什么是这三处默认语言决定没偏好时的显示白名单决定切换器里出现哪些选项中间件负责把两者接到具体请求上。第三步重新编译并重启。python manage.py makemessages -l zh_Hans # 把已标记的英文抽成中文待翻文件 # 人工填好 msgstr 列后 python manage.py compilemessages docker compose restartmakemessages 会扫描代码里所有 gettext 标记生成带格式提示的 .po 文件你要做的只是把 msgstr 那一列填上中文。CVAT 语言包长什么样前端 JSON 结构一句话结论前端语言包就是两层 JSON——分组、键、译文界面按分组.键取字。{ common: { save: 保存, cancel: 取消, delete: 删除, edit: 编辑 } }分组名按模块划分common、annotation、error 这类键名用英文小写单词别拿英文原文当键。不想逐条手写的话可以先复制一份英文版语言包当骨架再按分组补齐。切换机制的结论用户在切换器里选一门语言前端加载对应语言包界面文案即时替换无需刷新某个键在这门语言里缺失时该处自动回退英文不报错但回退比例高说明覆盖不够。从全局看CVAT 国际化由三套并行的体系组成前端 JSON 语言包、后端 gettext 词条、文档站 TOML 文件互不共享。官方文档站走的是 Hugo 体系语言文件放在 site/i18n/en.toml 这个目录新增语言时这里也要补一份否则文档站永远只有英文。CVAT i18n 配置在后端消息如何被翻译结论先行后端翻译 配置决定用哪门语言 标记决定哪些字能翻两者缺一不可且都落在 cvat/settings/base.py 和业务代码里。三个配置项各管一段LANGUAGE_CODE默认语言基线请求没带语言偏好时回退到它。LANGUAGES可切换语言白名单语言切换器通常就按它生成。LocaleMiddleware每个请求从 Accept-Language 头里解析出当前语言的中间件。CVAT 默认的 MIDDLEWARE 列表里没有它必须手动补上。标记字符串用 gettext 系列函数仓库里 engine 等模块已经在用gettext_lazy做标记所以 makemessages 能直接抽到现成词条from django.utils.translation import gettext as _ def after_save(self): # %(name)s 是占位符编译时保留原样运行期再填参 return _(Task %(name)s saved) % {name: self.name}标记要打在用户看得见的字面上日志文案不用标带参数的句子用%(name)s占位符别用 f-string 拼接否则抽取不到完整句式。CVAT 多语言部署Docker 里该设哪些语言变量结论先行容器化部署只多传几个环境变量后端管默认语言前端管可选语言。环境变量作用DJANGO_SETTINGS_MODULE指向启用了多语言的语言配置扩展CVAT_DEFAULT_LANGUAGE后端默认界面语言用户无偏好时生效CVAT_SUPPORTED_LANGUAGES前端切换器对用户展示的语言清单需要说明仓库里 LANGUAGE_CODE 的默认值是写死的上面两个自定义变量要靠你的 settings 扩展去读取所以先建一个继承 production 的小扩展文件。compose 文件里只保留语言相关部分services: cvat: environment: - DJANGO_SETTINGS_MODULEcvat.settings.production - CVAT_DEFAULT_LANGUAGEzh-hans # 后端默认中文 cvat_ui: environment: - CVAT_SUPPORTED_LANGUAGESen,zh-hans # 前端只展示两种语言docker compose up -d之后等两个服务都 healthy 再进浏览器验证。怎么确认翻译真的生效了结论先行三个可操作的动作五分钟验证全链路。打开前端把界面语言切到中文看顶部菜单、按钮、对话框文案是否全部替换有没有英文残留。做一件带参量的操作比如保存一次标注检查成功提示里的变量任务名之类是否正确填入而不是显示%s或None。故意触发一条 API 报错比如用无权限的账号请求看响应里的 403 消息文案是不是中文而不是通用的 Django 报错。两个最常见的坑漏翻的词条会自动回退英文看到中英混排先查键缺失别怀疑部署.po 文件改完必须跑一次 compilemessages否则容器里用的还是旧的 .mo你会以为改动没生效。上线之后的维护要点结论先行加语言是十分钟的事让它别和代码脱节才是长期成本。新增界面文案时同步提交语言包别等发布后才发现漏翻。每次发版前跑一遍 makemessages对照新抽出来的英文串补翻译。前端 JSON 语言包和后端 .po 是两套体系切换验证时分开测别只测一边。开头那两位日本和俄罗斯同事现在打开标注页看到的就是各自母语。下次想加韩语或西语照这三步复制一遍即可。【免费下载链接】cvatComputer Vision Annotation Tool (CVAT) is a leading platform for building high-quality visual datasets for vision AI. It offers open-source, cloud, and enterprise products, as well as labeling services, for image, video, and 3D annotation with AI-assisted labeling, quality assurance, team collaboration, analytics, and developer APIs.项目地址: https://gitcode.com/GitHub_Trending/cvat/cvat创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

LogicFlow Skill:智能流程图编辑与代码联动实践 2026/9/10 20:27:03

LogicFlow Skill:智能流程图编辑与代码联动实践

1. LogicFlow Skill 核心功能解析LogicFlow Skill 是一款基于 LogicFlow 流程引擎的扩展插件,专门用于增强流程图编辑器的智能化操作能力。作为一款深度集成在 Cursor IDE 中的工具,它主要解决了传统流程图工具存在的三个痛点:手动绘制效率低…

阅读更多 →
一级圆柱齿轮减速器CAD制图实战:从参数计算到装配图出图全流程 2026/9/10 20:27:03

一级圆柱齿轮减速器CAD制图实战:从参数计算到装配图出图全流程

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
注意避坑!并非所有 AI 都适合写论文,2026 导师信赖工具清单 2026/9/10 20:27:03

注意避坑!并非所有 AI 都适合写论文,2026 导师信赖工具清单

每一年毕业季,无数同学深陷论文难题:开题毫无思路、搭建框架耗费数日、初稿逻辑松散、查重标红泛滥、AI检测超标、格式反复被导师驳回。现如今市面上通用型AI工具遍地开花,但绝大多数通用大模型存在编造虚假参考文献、学术语句口语化、AI生成…

阅读更多 →
用 Azure API Management 构建 AI 网关:awesome-copilot 中的 `llm-*` 策略实战指南 2026/9/10 20:27:03

用 Azure API Management 构建 AI 网关:awesome-copilot 中的 `llm-*` 策略实战指南

用 Azure API Management 构建 AI 网关:awesome-copilot 中的 llm-* 策略实战指南 【免费下载链接】awesome-copilot Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot. 项目地址: https://…

阅读更多 →
<Skill title> 2026/9/10 20:27:03

<Skill title>

【免费下载链接】oh-my-codex OmX - Oh My codeX: Your codex is not alone. Add hooks, agent teams, HUDs, and so much more. 项目地址: https://gitcode.com/GitHub_Trending/oh/oh-my-codex Purpose What durable, codebase-specific outcome does this skill pro…

阅读更多 →
AI职业替代三阶段与人类不可替代能力解析 2026/9/10 20:24:03

AI职业替代三阶段与人类不可替代能力解析

1. 当AI从工具变成竞争对手三年前我参与开发了一套智能客服系统,当时团队的目标很明确:让人工处理那些需要情感共鸣的复杂咨询,把标准化问题交给AI。上线第一个月,客服部门的KPI提升了40%,领导在庆功宴上举杯说"这…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞