iDreamer致力于建设一个全球科研热情激发中心。我们帮助教授将愿景转化为现实,同时为学生开辟通向未来的光明道路。
在这个平台上,没有资源的障碍,亦没有思想的局限,只有齐心协力追求卓越的信念。我们坚信,真正的研究应当属于每一位有才华和梦想的人。通过全球资源整合与高效协作,我们确保每位科研人员都能在此找到理想的伙伴和发展方向。
生成式人工智能(Generative AI)正逐渐从单一模型训练的阶段,迈向一个更加复杂的系统优化时代。伴随着大语言模型(LLM)及其相关组件在多种任务中的广泛应用,如何高效协调并优化这些组件的性能,已成为人工智能领域的重要研究课题。近年来,关于复杂系统自动化优化框架的研究逐渐增多。然而,传统的优化方法通常局限于即时反馈与局部调整,难以有效满足多轮推理与复杂任务中逐步演化的需求。
REVOLVE作为一种新颖的优化框架,提出了不同的思路。通过引入历史响应相似度的概念,REVOLVE不仅优化当前的输出,还能够在多轮迭代中引导模型实现持续改进。与依赖即时反馈的传统方法不同,REVOLVE通过捕捉响应演化的趋势,推动优化过程更加稳定且细致,帮助模型逐步突破局部最优,提升整体性能。通过这一方式,REVOLVE为大语言模型优化提供了新的视角,并为AI系统的长期进化和自我修正开辟了潜在的方向。本文将介绍REVOLVE的核心概念和创新机制,并探讨其在解决方案优化、提示优化和代码优化等任务中的应用,分析在多种场景中的实际效果。
项目主页:https://llm-revolve.netlify.app/
论文链接:https://arxiv.org/pdf/2412.03092
代码仓库:https://github.com/Peiyance/REVOLVE
现有优化方法
目前,许多现存的AI优化方法可以大致划分为三类:
1. Chain-of-thought(CoT)方法
CoT推理方法依赖一次性推理和逐步思考来解决特定任务。尽管这种方法通过逐步推理帮助模型在单次推理过程中提供较为清晰的步骤,但由于缺乏迭代优化及历史响应的整合,CoT无法从任务的长期演化中吸取经验。因此,当面对需要细致调整和逐步改进的复杂任务时,CoT往往难以激发有效的性能提升。
2. 基于搜索的方法(Search-Based Methods)
如PromptAgent、Boosting-of-Thought等提示词优化方法,利用搜索算法(如蒙特卡洛树搜索或迭代探索)试图通过多次探索不同路径来优化任务提示或推理路径。虽然这种方法能够在有限的局部搜索空间内反复尝试不同路径,但它依赖于局部搜索,缺乏全局视角,因此易于停留在局部最优解,尤其在深度推理和多阶段决策任务中表现不佳。此外,由于无法全面考虑任务的全局演化,可能导致计算资源的浪费。
3. 基于文本梯度的优化(Textual-Gradient-Based Methods)
文本梯度方法如TextGrad和ProTeGi,通过即时反馈调整每次输出,专注于当前的任务结果,而忽视了历史响应的累积效应。这一做法可能导致在某个阶段优化过程的停滞,难以有效提升模型的长期性能。即便引入动量策略(如Momentum-Enhanced TextGrad)来加速优化,依旧仅依赖即时反馈,且存在过度调整和不稳定更新的风险,难以确保在复杂任务中的优化过程持续向正方向发展。

核心思想
在文本优化(Textual Optimization)框架下,LLM智能体系统通常被视为一个计算图(Computation Graph),通过自然语言作为媒介,实现不同组件之间“梯度”的传递。优化过程通过反向传播,将语言模型的输出作为反馈,传递至所有可能的早期组件,调整系统中的各个变量。这一过程类似于深度学习中的反向传播,不同之处在于传播的不是数值梯度,而是自然语言形式的反馈。
在当前的优化范式中,系统通过基于即时反馈的机制来调整模型输出。这种方法通过分析每次输出与目标之间的误差,逐步引导模型产生更符合预期的结果:

其中,为任务损失函数,
表示模型在第 t 次迭代中收到输入提示
后的响应结果。我们使用
表示基于文本的梯度,指代损失函数相对于输入提示的变化率,类似于传统导数的作用。通过这种反馈机制,优化器能够调整输入提示,从而逐步提高任务性能。
然而,这种优化范式依然存在局限性。我们不再仅依赖单次反馈,而是关注多轮迭代中的响应变化趋势,从而逐步推动模型的优化。作者通过以下公式扩展了优化过程:

在此公式中,是相似度函数,代表当前响应与前一次响应之间的相似性。通过引入这一项,REVOLVE能够综合利用过去的信息,对优化过程进行更全面的指导。
为了更清晰地定义相似度函数,作者应用如下公式来量化响应之间的差异:

此相似度函数通过计算响应之间的差异,反映出任务的演化趋势,从而能使优化过程从全局视角出发,避免局部最优的陷阱。
假设连续提示的差异足够微小,我们可以将其等同于梯度变化率。这使得我们能够得出以下公式:

最终,REVOLVE的优化公式可以重写为:

这一公式引入了二阶优化的理念,模拟了Hessian矩阵的效应。通过考虑梯度变化率,REVOLVE能更全面地分析优化过程,从全局的视角推动模型优化,避免陷入局部最优,并确保多轮迭代的持续演进。
REVOLVE的应用成果
1. 方案优化 (Solution Optimization):
REVOLVE能够显著提高模型在复杂科学问题上的解答能力,特别是在需要深入推理和复杂决策的任务中。例如,在MMLU-Machine Learning benchmark测试中,REVOLVE优化了解答过程,使得在Llama-3.1-8B模型上相较于SOTA基线提升了20.72%的准确率,充分展现了该方法在复杂问题解决中的优势。

2. 提示词优化 (Prompt Optimization):
在推理任务中,REVOLVE通过优化提示词,提升大语言模型的推理能力。例如,在Big Bench Hard (BBH-Objective Counting)的物体计数任务中,经过REVOLVE优化的提示词使得GPT-3.5-turbo的问答准确率从77.8%提升至95.5%。此外,REVOLVE在Llama-3.1-8B模型上相较于SOTA基线提升了7.8%的性能,展现出其在推理任务中的出色表现。

3. 代码优化 (Code Optimization):
REVOLVE同样能够有效优化复杂的编程任务解决方案,提升模型在代码生成方面的表现。例如,在LeetCode Hard基准测试中,通过REVOLVE优化的Llama-3.1-8B模型,相较于SOTA基线的性能提升达29.17%,展现了该方法在代码优化方面的卓越能力。

在实验中,REVOLVE还展现出以下优势:
1. 跨模型的普适性:
REVOLVE表明出极高的跨模型适应性,并且在多种大语言模型上均表现优越。在GPT-3.5-turbo-0125、GPT-4-0125-preview、Gemini 1.5 Pro以及Llama 3.1 8B Instruct等多个架构中,REVOLVE的优化效果稳定可靠,准确率普遍提高5-7%,证明了其在不同系统架构中的广泛适用性。
2. 处理弱模型的优势:
对于计算能力较弱的模型,如GPT-3.5-turbo-0125和Llama 3.1 8B Instruct,REVOLVE展现出显著的效率优势。通过一次性优化,REVOLVE能够为这些较弱模型提供显著的性能提升,使其在推理任务中超越初始能力。这一特性使得REVOLVE特别适用于低成本的部署环境,尤其是在资源有限的场景中,它能够为弱模型提供高效的优化效果,无需依赖高成本的强大模型进行多轮推理。
3. 计算资源效率:
REVOLVE在计算资源的使用上表现优异,尽管每次迭代的运行时间略有增加,但其通过减少总体迭代次数,显著节省了总运行时间。具体结果如下:
(1)在物体计数数据集中,REVOLVE相较于TextGrad减少了50%的总运行时间。
(2)在方案优化任务中,REVOLVE比TextGrad节省了26.14%的运行时间,而由于不稳定性,Momentum-Enhanced TextGrad的运行时间增加了77.65%。
(3)在代码优化任务中,REVOLVE比基线方法减少了16.67%的总运行时间。
(4)在GPU内存使用方面,REVOLVE与基线方法相当,未表现出显著的资源消耗增加。
结语
总体而言,REVOLVE为人工智能系统的长期发展提供了一种全新的视角。通过系统性地整合历史反馈,REVOLVE有效解决了传统方法在复杂任务中经常面临的停滞和局部最优问题,从而推动了模型的深度自我修正与持续优化。
文章中提到的AI工具

OpenAI 发布的最新一代语言模型