SuperAPI AI 工具集

nemo-evaluator-plugin

测试与质量

查看项目

更新于 10-16 03:49

技能介绍

用途:该技能面向 NeMo Platform 运行中的评测任务,围绕 Evaluator 插件 CLI、作业、SDK 支撑的规格、指标类型及相关插件技能展开。新的指导以插件 CLI 接口 nemo evaluator 为目标,旧版生成的 nemo evaluation API 命令组不是目标接口。

前置条件:假设 shell 工作目录位于 Nvidia-NeMo/nemo-platform 仓库根目录,并在调用 nemo CLI 前激活 Python 虚拟环境:source .venv/bin/activate。可用 nemo evaluator info 查看插件状态。

指标:用 nemo evaluator metric-types 列出可用指标名;用 nemo evaluator metric-types <metric-name> 查看指定指标模式;用 nemo evaluator evaluate explain 查看全部已注册指标模式契约,这是当前插件输入模式的权威来源。该命令返回大型 JSON schema,若只需指标名和模式,优先用 metric-types。

评测规格:规格是作为 CLI 输入执行评测的载荷,包含 metrics(打包的 Evaluator SDK 指标配置)、dataset(内联行或平台 FilesetRef)、params(可选执行参数)、target(在线评测的可选模型或智能体目标)。metrics[*].payload 字段由 bundle_metric(metric, CloudpickleMetricBundlePackager()) 生成。可查看 generate_example_specs.py 中的 build_metric_bundle_example(),并运行 uv run --frozen python skills/nemo-evaluator-plugin/scripts/generate_example_specs.py。

运行评测:nemo evaluator evaluate run 的结果保存到本地临时目录,链接打印到 stdout;建议使用 --spec-file 命名参数而非内联 JSON,因为指标捆绑包含序列化载荷。示例:精确匹配 nemo evaluator evaluate run --spec-file skills/nemo-evaluator-plugin/assets/specs/exact_match_metric.json;基准指标集用 exact_match_benchmark.json;LLM-Judge 用 llm_as_judge.json。

持久化作业:nemo evaluator evaluate submit 创建持久评测作业,返回作业处理对象而非结果,其 name 字段如 nemo-evaluator-zlhn1ecd。等待完成后用 nemo jobs get-status、nemo jobs get、nemo jobs results list、nemo jobs results download aggregate-scores/row-scores 获取结果。

Python SDK:Evaluator Python SDK 客户端以 evaluator 变量暴露在 NeMoPlatform 实例上,如 platform_client.evaluator.plugin_status()。

安全与资源:不要向 stdout 打印任何密钥,因为可能被采集为日志。LLM-Judge 设置、API 密钥认证与本地集群排错分别参见 LLM Judge Notes、Evaluator API Auth、Evaluation Troubleshooting。