Add lightweight tool-use verifier evaluations / 添加轻量级工具调用验证评估 - #2634
Draft
adibarra wants to merge 74 commits into
Draft
Add lightweight tool-use verifier evaluations / 添加轻量级工具调用验证评估#2634adibarra wants to merge 74 commits into
adibarra wants to merge 74 commits into
Conversation
中文:添加基于 Kimi Vendor Verifier 原生实现的工具调用评估
中文:精简工具调用评估实现并接入工作流选择路径
中文:合并最新主分支以完成发布准备
中文:隔离 Kimi 验证器依赖并明确供应商适配边界,同时加入执行超时和通用结果格式标识。
中文:合并最新 main,确保发布前验证基于当前代码。
中文:区分失败结果产物写入成功与写入失败,同时保留原始安装失败退出码。
中文:将 agentic 评估矩阵的投机解码模式传递给启动器,避免 MTP 配置静默回退到 STP。
中文:合并最新 main,准备发布。
中文:补全纯评估工作流的结果收集依赖,避免所有评估任务成功后工作流仍显示失败。
The collector dependency change did not affect GitHub’s workflow conclusion and added unrelated orchestration scope. 中文:恢复纯评估结果收集的原有范围。该依赖调整未改变 GitHub 工作流结论,且扩大了无关改动范围。
中文:合并最新 main,准备进入评审。
中文:修正验证器失败样本数、共享格式契约、路径复用及双语文档链接。
中文:保留结果收集器测试的现有格式,仅添加格式契约测试。
中文:在启动失败时保留验证器计划样本数,同时将有效样本数记录为零。
中文:合并最新 main,并保留工具调用评估元数据。
中文:保留可配置的 eval 调度行为,并修正失败返回码、Bash 兼容性和 eval 文档。
中文:强化验证器评审路径。
中文:限定评估套件状态的作用域,并修正双语 AgentX 文档中的源码行号链接。
中文:将发生不可纠正 NVLink 错误的 b300-017 节点排除在 Slurm 分配之外。
中文:让 B300 启动器将 SALLOC_EXCLUDE 传递给 salloc,避免调度到已知故障节点。
中文:启用多节点 Kimi 验证器
中文:强化 Kimi 评估运行时故障处理
中文:捕获 Kimi 工具调用响应诊断数据。
This reverts commit 134906e.
中文:采集确定性的 Kimi 工具调用诊断数据。
中文:启用 Kimi 结构化工具调用约束。
中文:格式化 Kimi 配方回归测试。
中文:重试 Kimi 验证器的临时下载失败。
中文:稳定并清理 Kimi 验证器集成。
中文:将 MiniMax 冒烟评估收敛到稳定的工具调用模式检查,并允许在受支持模型上显式运行。
中文:移除 NVIDIA srt-slurm v1.0.45 不再支持的 GB200 配置字段。
Configure the Dynamo frontend to use each SGLang model parser so unary OpenAI responses expose structured tool_calls instead of raw model tags. 中文:配置 Dynamo 前端使用对应的 SGLang 模型解析器,使非流式 OpenAI 响应输出结构化 tool_calls,而不是原始模型标签。
Use vLLM chat processors at Dynamo frontends for DeepSeek V4 and Kimi K3 so unary OpenAI responses expose structured tool calls. 中文:在 DeepSeek V4 和 Kimi K3 的 Dynamo 前端启用 vLLM 聊天处理器,使非流式 OpenAI 响应输出结构化工具调用。
Keep the native Dynamo Kimi K3 parser and force structural tags for tool_choice=auto requests so the model emits valid XTML opening markers. 中文:保留 Dynamo 原生 Kimi K3 解析器,并对 tool_choice=auto 请求强制启用结构化标签,使模型输出有效的 XTML 起始标记。
Apply the structural-tag scope required for tool_choice=auto to every GB200 Kimi K3 topology, not only the latency recipe used by the smoke run. 中文:为所有 GB200 Kimi K3 拓扑启用 tool_choice=auto 所需的结构化标签范围,而不只覆盖冒烟验证使用的低延迟配置。
中文:使用 vLLM 的 Kimi K3 前端解析器,将工具调用作为结构化 OpenAI 响应返回。
中文:合并最新 main,并采用上游已删除的过期基准配置。
中文:清理多节点供应商评估产物时使用安全的相对 glob,避免文件名被解析为选项。
中文:对服务端点注册期间的瞬时 404 和传输错误执行有界退避重试,避免 Dynamo 前端刚启动时的误报。
中文:允许 Kimi 前端加载可信代码。
Pin and verify BFCL 2026.3.23, run four exact V4 cases against OpenAI-compatible chat completions, preserve native diagnostics, and gate the aggregate score at 0.75. 中文:新增确定性的 BFCL 工具调用冒烟评估。固定并校验 BFCL 2026.3.23,针对 OpenAI 兼容的 chat completions 端点运行四个精确的 V4 用例,保留原生诊断产物,并以 0.75 阈值校验汇总分数。
Install the undeclared soundfile dependency required while importing BFCL model handlers. 中文:安装 BFCL 模型处理器导入时所需但上游未声明的 soundfile 依赖。
Replace directly answerable arithmetic cases with current-price and library-search cases that require tool selection and preserve typed arguments. 中文:将可直接回答的算术样例替换为必须选择工具的实时价格与图书馆检索样例,并保留参数类型。
Preserve verifier diagnostics across launchers, enforce safe reusable-artifact identity, validate BFCL metrics without optional YAML dependencies, and retry only transient Kimi endpoint failures. 中文:强化工具调用评估的失败处理。跨启动器保留验证器诊断信息,严格校验可复用评估产物身份,在缺少可选 YAML 依赖时仍能校验 BFCL 指标,并且仅重试 Kimi 端点的瞬态错误。
中文:新增可选的 Kimi 与 MiniMax 全量验证套件,用于隔离式诊断实验,并保持现有 smoke 默认行为不变。
中文:新增推荐的 BFCL 评估套件,并保留完整的分类诊断和上游原始产物。
中文:记录 BFCL 模型质量评估套件的选择方式、确定性约束、超时策略、阈值语义和调试产物。
中文:明确这些套件覆盖 BFCL V4 的模型特定非实时与多轮切片,不包含全部智能体类别。
中文:在 BFCL 上游调试产物中保留 Apache 2.0 许可证与可机读来源清单,并补充回归测试和文档。
中文:将 main 合并到工具调用评估实验分支。
中文:完成工具调用评估集成,并强化多后端分发、产物处理与失败语义。
中文:为 Kimi K3 启用工具调用与推理解析。
中文:强化工具调用部署验证,补齐解析器配置、失败分类、重试机制和可复现的覆盖矩阵。
中文:将所有基础设施失败的有效样本数统一归零,避免聚合结果误报已完成样本。
中文:修复 AMD 运行器工作区权限,确保中断后的基准测试产物不会阻塞后续检出。
中文:将 Kimi 模型质量失败交由阈值判定,并避免把 pytest 源码上下文误判为端点故障。
中文:为 BFCL 请求增加有界传输重试,避免单次超时使完整评估失效,并在原生报告中记录重试策略。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
inferencex-eval-v1results.Validation
Pass rates
0.0threshold.Ancestor-revision hardware results
1.0, passed0.96, passed0.980392, diagnostic workflow passed1.0, passed1.0, passed1.0, passed1.0, passedThese runs are on ancestor commits
7b6160322orf020a8e27. The current PR head,b57d8bb679c332e30e408d79490e4f38a2093c12, has no GPU end-to-end run. Historical BFCL runs are excluded becausebfcl_adapter.pyand its shell dispatch were substantially rewritten afterward; the current BFCL path has no hardware proof.All changed Python files compiled, all changed shell files passed
bash -n, and a mock OpenAI-compatible endpoint exercised the MiniMax adapter end to end with score1.0.Known outcomes and remaining coverage
finish_reason: stopinstead of a tool call. The adapter correctly produced artifacts and failed the threshold with score0.0in run 32057478178. This is a model-behavior result, not an integration failure.98.0%full-suite score, but the suite currently has a diagnostic0.0threshold and eight JSON Schema edge cases remain model compatibility failures.Type of change
Checklist
/reuse-sweep-runauthorization are pending.中文说明
inferencex-eval-v1结果格式。验证结果
通过率
0.0。祖先提交的硬件结果
1.0,通过0.96,通过0.980392,诊断工作流通过1.0,通过1.0,通过1.0,通过1.0,通过以上运行基于祖先提交
7b6160322或f020a8e27。当前 PR 头提交b57d8bb679c332e30e408d79490e4f38a2093c12尚未运行 GPU 端到端测试。历史 BFCL 运行未计入,因为之后bfcl_adapter.py及其 shell 分发路径进行了大幅重写;当前 BFCL 路径尚无硬件验证证据。所有变更的 Python 文件均已通过编译检查,所有变更的 shell 文件均已通过
bash -n。此外,使用模拟 OpenAI 兼容端点对 MiniMax 适配器进行了端到端验证,得分为1.0。已知结果与待补充覆盖
finish_reason: stop,未触发工具调用。适配器正确生成产物,并在 run 32057478178 中以0.0分触发阈值失败。这是模型行为结果,不是集成故障。98.0%,但该套件目前使用仅用于诊断的0.0阈值,并且仍有八个 JSON Schema 边界用例属于模型兼容性失败。变更类型
检查清单
perf-changelog.yaml。/reuse-sweep-run授权尚未完成。