☰
如何评测翻译指令遵循能力?Hy-MT2开源基准IFMTBench完整解析
2026/10/14 16:55:30 网站建设 项目流程

【免费下载链接】Hy-MT2

项目地址:https://gitcode.com/gh_mirrors/hy/Hy-MT2
点击查看免费下载

评估翻译模型时,多数人只问"译得准不准",却很少追问一个更实际的问题:模型能不能听懂并执行复杂的翻译指令?Hy-MT2 是腾讯开源的"快速思考"多语言翻译模型家族,支持 33 种语言互译。与此同时,官方同步开源了IFMTBench——一个专门评测"翻译指令遵循能力"的基准,覆盖 6 类约束场景、7300+ 测试用例,并附带一键评测脚本。本文带你读懂 IFMTBench 的评测体系、数据格式与运行方式。

为什么翻译评测要看"指令遵循"

传统的机器翻译评测(如 BLEU、人工打分)主要衡量译文与参考译文的一致性和流畅度。但在真实业务里,翻译往往带着"任务约束":

  • 术语必须按指定译法翻译(术语表约束)
  • 语气要符合目标文风(风格指令)
  • 需要结合上下文消歧(背景上下文)
  • 保留 HTML 标签、变量占位符、分隔符格式(结构化 / 布局保留)

这些能力无法用简单的相似度指标衡量。IFMTBench 正是为填补这一空白而生——它把"指令遵循"拆解成可量化、可复现的评测维度。

IFMTBench 评测体系:6 类约束场景

IFMTBench 将翻译指令遵循拆解为6 种约束类型,覆盖单约束与多约束场景,支持多语言指令:

约束类型评测方式分数类型
术语表约束翻译规则校验 + LLM Judge 保底门控(0/1)
风格指令遵循LLM Judge连续(0-5 → 0-1)
带上下文背景翻译LLM Judge连续(0-5 → 0-1)
布局保留翻译规则校验(分隔符切分)门控(0/1)
结构化数据翻译规则校验(格式验证)门控(0/1)
代码标签保留翻译规则校验(代码片段匹配)门控(0/1)

单约束与多约束的评分规则

  • 单约束:直接取对应维度的分数。
  • 多约束:final_score = gate_score × avg(continuous_scores)
    • gate_score为所有门控分数的乘积——任一项为 0,整体即为 0(一票否决)
    • continuous_scores为所有连续分数的平均值(无连续分则为 1.0)

这种"门控 × 连续"的合成方式,能真实反映"格式错了,再漂亮的文风也不及格"的工程直觉。

双评分引擎:规则校验 + LLM Judge

IFMTBench 的评分逻辑由两大引擎驱动,二者分工明确:

规则校验器(Rule Validators)——确定性强、零成本、无需调用模型,负责"非黑即白"的硬约束:

  • 术语表:核对译文中是否命中指定术语
  • 布局:按分隔符切分后比对块数量
  • 结构化:解析 JSON / HTML / CSV,校验键名与结构是否被破坏
  • 代码标签:逐一匹配需要保留的资产片段

LLM Judge(裁判模型)——负责"程度性"的主观维度,支持任意 OpenAI 兼容接口:

  • 风格指令:0-5 分制评估语气与语域是否贴合
  • 背景上下文:0-5 分制评估是否利用背景完成消歧
  • 术语表保底:当规则校验失败时,交由 LLM 二次判定,避免"形态变化"(如变格、复数)被误判

上图为 Hy-MT2 系列的完整评测结果:上半部分是 WildMTBench、WMT25、FLORES-200 等通用翻译基准的得分对比,下半部分雷达图则直观呈现了 IFMTBench、金融、领域翻译等"指令遵循 / 领域"维度的表现。

快速上手:5 步运行翻译指令遵循评测

第 1 步:获取项目并安装依赖

git clone https://gitcode.com/gh_mirrors/hy/Hy-MT2 cd Hy-MT2/IFMTBench pip install -r requirements.txt

第 2 步:配置 LLM Judge API

将环境变量模板复制为.env并填入你的接口凭据(支持任意 OpenAI 兼容端点):

cp .env.example .env

第 3 步:准备模型输出

把测试数据中每条的input发给你的模型,收集响应,保存为 JSONL(每行一个对象):

{"md5": "c320a518b633b006b48719b403253e64", "response": "你的模型翻译结果..."} {"md5": "6953e58b3d8ddf3161cbb3ff5f0de7f0", "response": "另一条翻译..."}

md5必须与测试数据一一对应;参考样例见 sample_output.jsonl。

第 4 步:运行评测

# 评测单约束数据 python run_eval.py \ --input_data data/test_single_constraint.jsonl \ --input_response your_model_output.jsonl \ --output_dir eval_results # 同时评测单约束 + 多约束 python run_eval.py \ --input_data data/test_single_constraint.jsonl data/test_multi_constraint.jsonl \ --input_response your_model_output.jsonl \ --output_dir eval_results # 仅规则校验模式(跳过 LLM Judge,用于快速调试) python run_eval.py \ --input_data data/test_single_constraint.jsonl \ --input_response your_model_output.jsonl \ --output_dir eval_results \ --skip-llm

第 5 步:查看结果

结果写入输出目录:

  • eval_details.jsonl—— 每条数据的详细评分
  • eval_summary.json—— 汇总统计(整体均分、单约束 / 多约束分类得分)

评测流程与项目结构

整个评测链路为:测试数据 + 模型输出 → 规则校验器 + LLM Judge → 分数合成 → 结果文件。

核心文件路径速览(均位于IFMTBench/下):

  • 评测入口:run_eval.py
  • 评分核心逻辑:eval/scoring.py
  • 规则校验器:eval/rule_validators.py
  • LLM Judge 模块:eval/llm_judge.py
  • 评测配置:config.py
  • 单约束测试数据(4506 条):data/test_single_constraint.jsonl
  • 多约束测试数据(2838 条):data/test_multi_constraint.jsonl
  • 中文文档:README_zh.md

小结

IFMTBench 把"翻译指令遵循"这件原本模糊的事,变成了一套可量化、可复现、可一键运行的评测方案:6 类约束覆盖真实业务痛点,"门控 × 连续"的评分设计贴近工程实际,规则校验与 LLM Judge 双引擎兼顾了确定性与主观维度。如果你正在评估 Hy-MT2 或任意翻译模型对复杂指令的遵循能力,它都是一个开箱即用的好起点。

【免费下载链接】Hy-MT2

项目地址:https://gitcode.com/gh_mirrors/hy/Hy-MT2
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询