DSv4.1 工具调用启用 XGrammar schema 约束并保留旧版回退
值得精读,但重点不在代码量。源码只有 13 行,真正的价值是三点设计模式:用 `getattr(module, name, None)` 做跨版本能力探测以规避 ImportError、把 grammar 构造委托给上游 builtin 时显式覆盖 `reasoning="disabled"` 以维持 serving 的推理边界契约、以及用 `skipif(hasattr(...))` + `monkeypatch` 双写测试同时锁定新路径与回退路径。建议读者额外关注:(1) 后续 XGrammar bump PR 是否把 ≥ 0.2.7 落到依赖与镜像;(2) 是否补一条带真实权重的 tool-calling eval,验证 strict 约束不会引发重采样或误截断;(3) 回退分支的删除时机与对应测试清理。
参与讨论