LLM2D
多阶段语言模型程序的指令和演示优化
Optimizing Instructions and Demonstrations for Multi-Stage Language Model Programs
作者: Krista Opsahl-Ong, Michael J Ryan, Josh Purtell, David Broman, Christopher Potts, Matei Zaharia, Omar Khattab
发布日期: 10/8/2024
arXiv ID: oai:arXiv.org:2406.11695v2

摘要

语言模型程序,即由模块化语言模型 (LM) 调用组成的复杂管道,正在不断推进 NLP 任务,但它们需要精心设计对所有模块都有效的提示。我们研究了 LM 程序的提示优化,即如何在没有模块级标签或梯度的情况下更新这些提示以最大化下游指标。为了使问题变得易于处理,我们将问题分解为优化每个模块的自由形式指令和少量样本演示,并引入了多种策略来制定任务相关的指令并处理跨模块的信贷分配。我们的策略包括:(i) 用于提出有效指令的程序和数据感知技术,(ii) 用于学习目标代理模型的随机小批量评估函数,以及 (iii) 我们改进 LM 随着时间推移构建提议的方式的元优化程序。利用这些见解,我们开发了 MIPRO,一种用于优化 LM 程序的新型算法。MIPRO 在七个不同的多阶段 LM 程序中的五个程序中优于基线优化器,使用最佳的开源模型 (Llama-3-8B),准确率提高了 13%。我们已将我们的新优化器和基准发布到 DSPy 上,网址为 http://dspy.ai。