把 200 张表的 Schema 裁成 12 张,输入更短,这是事实层面的变化。用户最终要的却是正确答案;少掉退款表之后,模型很快生成一条错误 SQL,不能算成功节约。
10 月 20 日 Agentic Analytics Benchmark 的新一轮官方报告提供了观察 Agent 查询表现的材料。本文不复述模型排名,而是借此提出一个更贴近数据库验收的实验:固定同一组问题,对全量 Schema 与裁剪 Schema 做成对比较。以下没有调用模型。
原理示意,非真实系统截图或性能测量。
分母必须容纳失败
总成本包括成功、错误、重试、修复提示、工具执行及结果校验。正确答案数量则按固定标准核验,不能把“执行没报错”算作正确。下面用虚构的计算单位说明分母效应,不代表任何厂商价格或真实费用。
runs = { "full": [(100, True), (100, True), (100, False), (100, True)], "pruned": [(50, True), (50, False), (50, False), (50, False)] } def summarize(rows): total = sum(cost for cost, _ in rows) correct = sum(ok for _, ok in rows) return total, correct, (total/correct if correct else None) assert summarize(runs["full"]) == (400, 3, 400/3) assert summarize(runs["pruned"]) == (200, 1, 200) assert summarize([(10, False)])[2] is None for variant, rows in runs.items(): print(variant, summarize(rows))Python 3.9.6 本地通过。裁剪组总量减半,但每个正确答案消耗更多假设单位。这个反例只证明“少输入不能推出更低正确答案成本”,不证明裁剪总体更差。零正确时成本指标不可定义,应同时报零正确与总支出,不能填 0。
什么条件必须锁定
两组共享问题 ID、数据快照、指标定义、模型精确版本、提示模板、工具权限、超时和重试上限。裁剪规则与检索器也要版本化。价格若要换算货币,保存计费日期、输入输出与缓存口径;未核验价格时先报告 token 和调用数量。
裁剪组应额外记录候选表、被排除表及金标准依赖。错误归因至少分为漏表、漏列、错误 JOIN、问题前提错误和执行问题。若允许发现缺表后扩展 Schema,这个修复过程必须计入同一问题成本,不能作为免费人工辅助移到表外。
金标准不能只有一段 SQL 文本。不同 SQL 可能在当前数据上碰巧相等;应覆盖退款、NULL、重复明细和权限边界等反例。问题不成立时,合理拒答也是验收目标,但不能拿拒答冲高可回答问题的正确率。
能据此做什么决定
若高风险跨表问题退化,就采用保守的必需表保留或回退全量;若收益只在少量问题成立,就报告分层结果。先比较质量,再比较成本,最后看尾延迟与资源预算。本文尚无真实模型或收费 API 实验结果。
资料:Agentic Analytics Benchmark 第二轮(2026-10-20)、Langfuse 观测案例(2026-10-22)。未来排期日前仍需复核模型及计费条件,不能预写新排名。