在最新的AI研究报道中,Google DeepMind推出了一项名为“优化通过提示(OPRO)”的技术,将大型语言模型(LLM)作为其自身提示的优化器。该方法旨在通过自然语言描述问题,指导LLM生成和改进解决方案,从而提高提示性能。
OPRO的工作方式相对简单,使用LLM作为优化器,但与使用数学公式不同,它采用自然语言描述优化问题,指导LLM迭代生成和改进解决方案。这对于提示优化等问题特别有用,因为在这些情况下,梯度不容易获取。
该技术以“元提示”作为输入,由任务的自然语言描述以及一些问题和解决方案的示例组成。在优化过程中,LLM基于问题描述和元提示中的先前解决方案生成候选解决方案。然后,OPRO评估这些候选解决方案的结果,并将它们与其质量得分一起添加到元提示中。这个过程重复进行,直到模型不再提出具有改进得分的新解决方案。
LLM作为优化器的一个关键优势是它们能够处理自然语言指令,这使用户能够描述优化任务而无需形式规范。例如,用户可以指定“准确性”等度量标准,同时提供其他指令,如要求模型提供简洁且普遍适用的解决方案。
OPRO还充分利用了LLM对上下文模式的识别能力,通过在元提示中包含的示例来识别优化轨迹。这一方面是OPRO的核心魔力,因为LLM将语言视为数字令牌,可以发现人类观察不到的模式。
DeepMind在线性回归和“旅行推销员问题”等两个著名的数学优化问题上测试了OPRO,并展示了在这些情况下的有望结果。然而,OPRO的真正潜力在于优化LLM的使用,如ChatGPT和PaLM。
DeepMind的研究显示,OPRO可以引导LLM优化其自身提示,即找到最大化特定任务响应准确性的提示。例如,为了发现解决词数学问题的最佳提示,一个“优化器LLM”被给予一个包含指令和示例的元提示,其中包含优化提示的占位符。模型生成一组不同的优化提示,并将它们传递给一个“评分LLM”,该LLM在问题示例上测试它们并评估结果。最佳提示及其分数被添加到元提示的开头,然后重复这个过程。
研究人员使用PaLM和GPT系列的多个LLM对该技术进行了评估,根据实验,所有模型都能通过迭代优化提高生成提示的性能。
虽然DeepMind尚未发布OPRO的代码,但该技术的概念直观且简单,可以在几小时内创建一个自定义实现。这里分享一个由LlamaIndex制作的使用OPRO增强LLM在检索增强生成(RAG)任务上性能的逐步指南感兴趣的可以访问阅读。
OPRO是利用LLM优化其性能的多种技术之一,这一领域正在积极探索各种主题,包括越狱和红队行动,研究人员正在不断释放大型语言模型的全部潜力。