Solvita:面向竞赛编程的智能体框架,从经验积累中提升代码生成能力

📅 2026/7/8 17:33:12
Solvita:面向竞赛编程的智能体框架,从经验积累中提升代码生成能力
【竞赛编程难题待解】大语言模型在代码生成能力上不断增强然而在复杂算法题特别是竞赛编程场景中仍易因算法选择错误、边界条件遗漏、复杂度判断失误或隐藏测试覆盖不足而失败。竞赛编程并非简单的「把题面翻译成代码」一个正确解法需历经理解自然语言题面、抽象数学结构、选择合适算法范式等多个复杂环节。【LLM面临的典型困难】对于LLM来说竞赛编程任务存在几个典型困难一是算法选择高度依赖题目结构不同约束下的同类问题可能对应不同算法模型易选到「看起来像但本质不对」的套路二是样例测试远远不够很多错误解法能通过样例却在隐藏测试中失败普通自测难以覆盖边界条件等问题三是失败经验难以复用现有coding agent失败后重新尝试却不会改变后续任务的求解策略四是多Agent框架仍然偏静态如AlphaCodium、MapCoder等方法虽将解题拆成多阶段但缺少随历史经验更新的长期记忆与路由机制。【Solvita闪亮登场】来自南京大学、清华大学等机构的研究者提出了Solvita这是一个面向竞赛编程的Agentic Evolution框架。它不微调底层大模型而是在Planner、Solver、Oracle、Hacker四类Agent外部构建可训练的图结构知识网络让系统从解题、测试、攻击和修复过程中持续积累经验。其出发点在于人类选手刷题变强是因为积累了「什么题用什么套路」等经验。【Solvita如何工作】Solvita把竞赛编程求解组织成闭环系统每个环节都具备可训练的知识网络系统由四个Agent组成1. Planner负责题目抽象与策略选择将原始题面转化为数学描述预测算法标签等参考历史经验2. Solver负责生成代码与局部修复根据Planner策略生成C程序采用patch - based repair保留正确部分3. Oracle负责构造可靠内部测试为解法构造「可信监督」生成相关工具并认证测试4. Hacker负责主动攻击候选程序分析潜在漏洞构造攻击输入成功的bug经验会传播给知识网络。【可训练的图结构知识网络】Solvita重要设计是每个Agent都配有可训练的graph - structured knowledge network。以Solver为例其知识网络分三层Q Layer记录历史题目描述和元信息M Layer记录解法分解等S Layer记录可复用算法技能和C模板。新题到来时系统检索相似节点边权根据历史情况更新与传统RAG有本质差异。【Oracle和Hacker的互补功能】在算法题中测试能力很重要。Solvita将测试能力拆成两个互补方向Oracle关注「可靠监督」构造内部测试Hacker关注「发现漏洞」寻找攻击样例。二者功能不重复结合后在错误解法检测等方面取得更好平衡。【实验结果惊艳】论文在CodeContests、APPS等平台评测Solvita并与多种方法比较。主实验结果显示Solvita在15个backbone - benchmark组合中有14个取得最高pass1。以GPT - 5.4 backbone为例相比single - pass大幅跃升相比已有agent framework稳定领先且平均token消耗与开源agent framework相近。【消融实验见真章】论文做了additive ablation区分两个问题一是Solvita的收益是否因多Agent流程更复杂二是可训练知识网络是否带来额外提升。结果表明多Agent闭环结构适合复杂算法题加入知识网络后性能继续提升三个网络互补叠加。【Patch - based Repair优势明显】论文比较了Solver内部的full regeneration和patch repair两种修复方式。在相同最大迭代预算下patch repair通过率更高平均迭代次数更少、token节省更多说明「推倒重来」并非好策略。【Codeforces真实比赛评测结果佳】论文在近期Codeforces rounds上进行接近真实比赛的评估选取12场post - cutoff Codeforces rounds的76道题。结果显示使用GPT - 5.4等作为backbone的Solvita版本进入Legendary Grandmaster区间而相同backbone的bare model停留在较低区间说明Solvita的收益来自系统性增强。【总结与展望】Solvita是面向竞赛编程的Agentic Evolution框架试图解决代码Agent如何积累经验的问题。其核心贡献有三点提出solve–certify–attack–repair闭环引入可训练的图结构知识网络在竞赛编程任务上取得显著提升。它传达了未来更强的coding agent可能来自更好的经验组织方式的观点为AI for Code研究提供了新的思路。那么未来Solvita还会在哪些方面取得突破呢