
文章插图
新智元报道
编辑:桃子
【新智元导读】手写提示既费时又费力,微软研究人员的APO算法提供了一种自动化的解决方案 。无需调整超参数或模型训练,APO可以显著提高提示的性能,并具有可解释性 。
模型调教得好不好,提示(prompt)最重要 。
【强过AutoGPT!微软重磅研究提出APO算法,「自动提示」淘汰提示工程师】在优化和改进提示工程的过程中,提示变得越来越精巧、复杂 。

文章插图
据google Trends,提示工程在过去的6个月受欢迎程度急剧上升,到处都是关于提示的教程和指南 。
比如,一个在网上爆火的提示工程指南Github已经狂澜28.5k星 。
然而,完全用试错法开发提示可能不是最有效的策略 。
为了解决这个问题,微软研究人员开发了一种全新提示优化方法,称为自动提示优化(APO) 。

文章插图
论文地址:https://arxiv.org/pdf/2305.03495.pdf
手写提示省了
近来,各种迹象表明,在大规模网络文本中训练的大型语言模型在跨越各种NLP任务中有时表现不佳 。
这些LLMs都是通过提示来遵循人的指令 。然而,编写这些自然语言提示仍然是一个手工试错的过程,需要人们付出巨大努力,甚至还得具备专业知识 。
因此,还得需要自动,或半自动的程序来帮助程序员写出最好的提示 。

文章插图
最近的一些研究,通过训练辅助模型,或对提示进行可微表示来研究这个问题 。
然而,这些工作假定可以访问到LLM的内部状态变量,而实操的人通常通过API与LLM进行交流 。
其他的工作则通过强化学习或LLM基础反馈对提示进行离散操做 。
这些算法也可能需要对LLM的低级访问,还会产生不可理解的输出,或依赖于无方向蒙特卡罗搜索(monte-carlo search)的语义空间上的提示 。
对此,微软研究人员提出了自动提示优化(APO),一个通用的和非参数提示优化算法 。
APO是一种受数值梯度下降(numerical gradient descent)启发的通用非参数提示优化算法,旨在自动化和改进LLM的快速开发过程 。

文章插图
APO算法的整体框架
这一算法建立在现有的自动化方法的基础上,包括训练辅助模型,或提示的可微表示,以及使用强化学习或基于LLM的反馈进行离散操作 。
与以前的方法不同,APO通过在基于文本的苏格拉底对话(Socratic dialogue)中使用梯度下降法来解决离散优化的障碍 。
它用LLM反馈代替了差异,用LLM编辑代替了反向传播 。
更具体来讲,该算法首先利用小批量的训练数据获得自然语言「梯度」,以描述给定提示中缺陷的 。
这些梯度指导编辑过程,在梯度的相反语义方向上编辑当前提示符 。
然后,再进行更广泛的集束搜索(beam search),以扩大提示的搜索空间,将提示最佳化问题转化为集束候选的选择问题 。
非参数「梯度下降」的离散提示优化
自动提示优化框架假设可以访问由输入和输出文本对(数字、类别、汇总等)组成的初始提示

文章插图
和

文章插图
训练数据: 。
要注意的是,所有提示p都是从相干自然语言的空间中提取的 。
研究人员假设访问了一个黑盒LLM API,,它返回由连接p和x组成的提示符可能的文本延续y (例如,少样本提示符和输入示例,或Chatbot角色和对话历史) 。
在这种情况下,APO算法迭代精化了提示

文章插图
以产生,对于某些度量函数

文章插图
和域内测试或开发数据

文章插图
,这是最佳提示的一个近似 。
梯度下降
在研究的设置中,梯度下降法是指 (1) 用一批数据评估提示符的过程,(2) 创建一个局部丢失信号,其中包含关于如何改进当前提示符的信息,然后 (3) 在开始下一次迭代之前,在梯度的相反语义方向编辑提示符 。
推荐阅读
- 搜索大战白热化:微软全面开放Bing Chat,谷歌或实现个性化搜索
- 微软Bing Chat正式进入开放预览模式,用户已超过1亿
- 自主 AI 来了?一文详解火爆全网的 AutoGPT
- 取代C++!微软正在改用Rust语言重写Win11内核
- 大模型商业化开荒 微软走到哪里了
- 轻松打造家用版GPT-4!微软开源微调指令集:效果不输原版,中英双语都能用
- 微软网页版PowerPoint已可上传本地视频,最大256 MB
- 动口不动手,Github 大放狠招!
- 人工智能热潮导致算力紧张,微软推新服务器租赁计划
- office官网教程在哪里 office官方网站微软office
