文章来源:08ai导航网发布时间:2025-08-12 10:50:26
你会如何构建Agent以应对下述多轮问答?
1.安井食品在2019年第一季度的最高价、最低价分别是多少?差价是多少?
2.创一季度最高价那一天,该股票是否创下了近一年新高?
3.分析该股票2019年1月份的成交量特征:哪几天的成交量超过月均量的2倍?具体是多少比例?这些放量日的收盘价相比前一日分别上涨/下跌了多少?
如果是400道涉及77张表、3000+字段、涵盖了58个二级市场各个领域(股权、交易、基金、财务、行业、港股、美股等)的类似题目呢?
这些题目来源于由智谱和清华大学联合举办的“地狱级”黑客松 -《2024金融行业·大模型挑战赛》。该黑客松颇为艰困,完全复刻了金融行业二级市场的真实需求。
而经过数月奋战,我,作为一名金融市场“门外汉”,在1300+名选手中“杀出一条血路”,最终获得了全国第七名以及10,000元的奖金。
图1: 老于得奖了
所以,我的Agent是凭何挣了智谱10,000块?
咱们先聊2,500块的。
本次赛事一个颇为有趣的设置是:提交一个“能跑”的开源Baseline即可获得2500块奖金,而“能跑”则意味着Agent具备了完整回答多轮问答的水准。为了达成该水准,在初赛,我的Agent采用了以下设计思路:
图2: 初赛设计思路
分而治之。Agent会逐条处理多轮对话中的每个问题。此外,基于GLM将实体关系相对简单(涉及三、四张表以内,外键关系直白)的自然语言直接转化为SQL能力还不错,每个问题也会被拆解为子问题以降低复杂度;实体识别。识别业务实体所属的库、表和字段是确定场景归属(例如,区分国内市场、美股或港股)和SQL生成(例如,“安井食品”隶属于中文简称字段)的“锚”。而在实际业务环境中,鉴于Agent几乎没有可能从高度管控的业务数据库中“扒”出数据进行Embedding Search,因此使用SQL进行实体召回更为实际;大模型驱动的决策体系。由GLM依据Memory中的数据状态决定子查询要采取的Action(Search或者Coding),例如,当“最高价”和“最低价”已经存在时,Agent会自主决定通过Coding,而非Search,进行差值计算;Zero-Shot NL2SQL。在初赛中我们利用了Schem_Links机制实现Zero-Shot NL2SQL,而剔除Few-Shot方案(SQL Template)的原因在于样例召回的小概率偏差会严重影响SQL的生成质量;查询增强。用于补齐上下文中指代不清或者遗漏的实体信息,例如厘清“那一天”或“该股票”的指代关系。感谢大模型日渐强悍的Code Gen能力,我在初赛只花了5天时间便基于Multi-Agent和Plan/Reflection框架实现了上述设计思路。
但是,上述思路还不足以挣到10,000块,Agent总要展示点“绝活”。
初赛之后我进行了复盘。复盘结果揭示,除了对业务本身的误解外,90%Agent所产生错误都源于以下两个方面(图3):
稳定性。在转化有些复杂的子问题时(例如,涉及统计、复杂条件或者三张以上的表关系),基于Schema_Links的NL2SQL的转化成功率不稳定;适配性。因为高业务复杂度导致无法穷举Few-Shot,当数据集发生变化后,推理任务(例如,问题拆解、厘清指代)对于新问题的适配度较低。图3:Agent产生错误的来源
为此,我在复赛引进了两项“绝活”以解决上述问题。
绝活一, XML-based NL2SQL。 过往黑客松的实践已经证明大模型对封闭标签内(例如
图4:XML替代JSON作为NL2SQL的中介
而XML替代的效果显著:在10X10测试中,XML-based NL2SQL提升SQL转化稳定性达14%(图5)!。
10X10测试是指一组10道问题连续运行10次,通过正确率衡量NL2SQL的稳定性。
图5:10X10测试结果表明XML显著提升了NL2SQL的稳定性
绝活二,
图6: DeepSeek
例如,当对以下问题进行拆解时:
603290的公司全称、A股中文简称、法人、法律顾问、会计师事务所(答案需包含特殊普通合伙说明)及董秘是?
在不提供近似案例的情况下,使用传统Few-Shot的Agent很容易将该问题拆分为6个子问题(分别查询公司全称、法人等),从而导致时间和资源的浪费。
而
图7:
而在下面案例中,
图8:
基于分类规则可穷举,Agent可以利用相同推理模式有效适配新的数据集,从而提升输出质量。
而这些绝活在复赛中得到了印证。
复赛一共包含3轮:复赛A榜(R2A)、复赛B榜(R2B)、智谱验证轮(R2B-智谱,图9),而看似繁琐的复赛机制恰巧为验证Agent的稳定性和适配性提供了数据基础。如果我们以R2B-智谱的得分为基准,那么:
图9:复赛轮次设置
稳定性:可以用R2B-智谱和R2B得分的差值表示Agent在相同数据集下稳定输出的能力;
适配性:可以用R2B-智谱和R2A得分的差值表示Agent衡量不同数据集下输出质量。
在所有Top选手中,我的Agent在上述两方面的综合表现为最优(图10):
图10:Top选手的综合表现
遗憾的是,对二级市场业务理解的缺失没能让我走的更远,例如,直至今日,我还是不知道“连续跳空低开”的SQL规则。但这些从2,500块到10,000块的绝活,却可能为提升Agent的泛化性提供新思路,而这种基于行业实践的“日拱一卒”,也许是本次黑客松以及我参与本次黑客松的意义。
后续我将开源XML-Based N2LSQL,敬请期待。
相关攻略 更多
最新资讯 更多
我挣了智谱10,000块
更新时间:2025-08-12
深夜突袭,DeepSeek-Prover-V2加冕数学王者!671B数学推理逆天狂飙
更新时间:2025-08-12
最近论文被判定“AI生成”的大学生,天下第一命苦
更新时间:2025-08-12
AI界出了又会画画还能修图的大象,把Flux们都打败了
更新时间:2025-08-12
“Qwen3之后,我才真正敢投AI应用”
更新时间:2025-08-12
AI圈惊天丑闻,Meta作弊刷分实锤?顶级榜单曝黑幕,斯坦福MIT痛斥
更新时间:2025-08-12
上海打造AI医疗高地!总书记考察的“模速空间”,这些企业已入驻!
更新时间:2025-08-12
豆包你来真的!豆包超能创意1.0超超大杯测评来了
更新时间:2025-08-12
“稚晖君”最新汇报内容曝光:人形机器人最有希望通向AGI,也是国际科技竞争热点
更新时间:2025-08-12
谷歌69页官方提示词秘籍全解析,中文版免费下载
更新时间:2025-08-12