AI自动生成prompt媲美人类,网友:工程师刚被聘用,又要淘汰了

简介: AI自动生成prompt媲美人类,网友:工程师刚被聘用,又要淘汰了

来自多伦多大学、滑铁卢大学等机构的研究者受 prompt engineering 的启发,提出一种使用大型语言模型自动生成和选择指令的新算法,在 24 项任务中有 19 项达到了人类水平的表现。


现阶段,得益于模型规模的扩大和基于注意力架构的出现,语言模型表现出了前所未有的通用性。这些大型语言模型(LLM,large language models)在各种不同任务中表现出非凡的能力,其中包括零样本和小样本设置。


然而,在模型通用性的基础上,继而引出一个控制问题:我们如何才能让 LLM 按照我们的要求去做?


为了回答这个问题并引导 LLM 朝着我们期望的行为方向发展,研究者们采取了一系列措施来达到这个目的,例如对模型进行微调、通过上下文进行学习、不同形式的 prompt 生成等。而基于 prompt 的方法又包括可微调的 soft prompt 以及自然语言 prompt engineering(提示工程)。众多研究者对后者表现出了极大的兴趣,因为它为人类与机器交互提供了一个自然交互的界面。


然而简单的 prompt 并不总能产生所需的结果,例如,在生成熊猫图像时,添加诸如「cute」之类的形容词或诸如「eat bamboo」之类的短语对输出有何影响,我们不了解。


因此,人类用户必须尝试各种 prompt 来引导模型完成我们期望的行为。LLM 这一执行过程可视为黑盒过程:虽然它们可以执行大范围的自然语言程序,但这些程序的处理方式对人类来说可能并不直观,非常难以理解,而且只有在执行下游任务时才能衡量指令的质量。


我们不禁会问:大型语言模型可以为自己编写 prompt 吗?答案是,不但可以,还能达到人类水平


为了减少创建和验证有效指令的人工工作量,来自多伦多大学、滑铁卢大学等机构的研究者提出了一种使用 LLM 自动生成和选择指令的新算法:APE(Automatic Prompt Engineer)。他们将此问题描述为自然语言程序合成,并建议将其作为黑盒优化问题来处理,LLM 可以用来生成以及搜索可行的候选解决方案。




研究者从 LLM 的三个特性入手。首先,使用 LLM 作为推理模型,根据输入 - 输出对形式的一小组演示生成指令候选。接下来,通过 LLM 下的每条指令计算一个分数来指导搜索过程。最后,他们提出一种迭代蒙特卡洛搜索方法,LLM 通过提出语义相似指令变体来改进最佳候选指令。


直观地说,本文提出的算法要求 LLM 根据演示生成一组指令候选,然后要求算法评估哪些指令更有希望,并将该算法命名为 APE。


本文贡献如下:


  • 研究者将指令生成作为自然语言程序合成,将其表述为一个由 LLM 引导的黑盒优化问题,并提出迭代蒙特卡罗搜索方法来近似求解;
  • APE 方法在 19/24 任务中实现了比人工注释器生成的指令更好或相当的性能。


看到这项研究,网友不禁感叹:那些刚被聘用的 prompt 工程师,几个月后可能要被 AI 淘汰。言外之意就是,这项研究要抢了人类 prompt 工程师的活。



「该研究尽最大的努力使 prompt engineering 自动化,这样从事 ML 的研究人员就可以回到真正的算法问题上了(附加两个大哭的表情)。」



还有人感叹:LLM 不愧是原始 AGI 的中流砥柱。




使用 LLM 进行自然语言程序合成


APE 在建议(proposal)和评分这两个关键组件中都使用 LLM。


如下图 2 和算法 1 所示,APE 首先提出几个候选 prompt,然后根据选定的评分函数对候选集合进行筛选 / 精炼,最终选择得分最高的指令。




下图为 APE 的执行过程。它可以通过直接推理或基于语义相似度的递归过程生成几个候选 prompt,评估其性能,并迭代地提出新的 prompt。



初始提议分布


由于搜索空间无限大,找到正确指令是极其困难的,这使得自然语言程序合成历来难以处理。基于此,研究者考虑利用一个预先训练过的 LLM 来提出一个候选解决方案,以指导搜索过程。


他们考虑两种方法生成高质量候选。首先采用一种基于前向模式生成的方法。此外,他们还考虑了反向模式生成,使用具有填充功能的 LLM(如 T5、GLM、InsertGPT)来推断缺失的指令。



得分函数


为了将问题转换为黑盒优化问题,研究者选择了一个得分函数来准确测量数据集和模型生成的数据之间的对齐情况。


在归纳实验中,研究者考虑了两个潜在的得分函数。在 TruthfulQA 实验中,研究者主要关注 Lin 等人提出的自动化指标,类似于执行精度。


在每一种情况下,研究者使用如下公式 (1) 来评估生成指令的质量,并对持有测试数据集 Dtest 进行期望。



实验


研究者对 APE 如何引导 LLM 实现预期的行为进行了研究。他们从三个角度进行:零样本性能、少样本上下文学习性能和真实性(truthfulness)。


研究者评估了 Honovich 等人提出的 24 个指令归纳任务的零样本和少样本上下文学习。这些任务涵盖语言理解的许多方面,从简单的短语结构到相似性和因果关系识别。为了了解 APE 生成的指令如何引导 LLM 生成不同风格的答案,本文将 APE 应用于 TruthfulQA(一个数据集)。


对于零样本测试准确率,APE 在 24 项任务中有 19 项达到了人类水平的表现。



对于少样本上下文测试准确率,在 24 个任务中,APE 提高了 21 个任务的少样本上下文学习性能。



研究者还将 APE prompt 与 Lin 等人提出的人工 prompt 进行了对比。图 (a) 显示 APE 指令在所有三个指标上的表现都优于人工 prompt。图(b)显示了 truthfulness 和 informativeness 之间的权衡。



更多细节请参阅原论文。

相关文章
|
4月前
|
人工智能 IDE Java
AI Coding实践:CodeFuse + prompt 从系分到代码
在蚂蚁国际信贷业务系统建设过程中,技术团队始终面临双重考验:一方面需应对日益加速的需求迭代周期,满足严苛的代码质量规范与金融安全合规要求;另一方面,跨地域研发团队的协同效率与代码标准统一性,在传统开发模式下逐渐显现瓶颈。为突破效率制约、提升交付质量,我们积极探索人工智能辅助代码生成技术(AI Coding)的应用实践。本文基于蚂蚁国际信贷技术团队近期的实际项目经验,梳理AI辅助开发在金融级系统快速迭代场景中的实施要点并分享阶段性实践心得。
1015 25
AI Coding实践:CodeFuse + prompt 从系分到代码
|
5月前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
1962 134
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
6月前
|
人工智能 算法 前端开发
超越Prompt Engineering:揭秘高并发AI系统的上下文工程实践
本文系统解析AI工程范式从Prompt Engineering到Context Engineering的演进路径,深入探讨RAG、向量数据库、上下文压缩等关键技术,并结合LangGraph与智能体系统架构,助力开发者构建高可靠AI应用。
875 2
|
4月前
|
存储 人工智能 搜索推荐
LangGraph 记忆系统实战:反馈循环 + 动态 Prompt 让 AI 持续学习
本文介绍基于LangGraph构建的双层记忆系统,通过短期与长期记忆协同,实现AI代理的持续学习。短期记忆管理会话内上下文,长期记忆跨会话存储用户偏好与决策,结合人机协作反馈循环,动态更新提示词,使代理具备个性化响应与行为进化能力。
833 10
LangGraph 记忆系统实战:反馈循环 + 动态 Prompt 让 AI 持续学习
|
4月前
|
存储 机器学习/深度学习 人工智能
构建AI智能体:三、Prompt提示词工程:几句话让AI秒懂你心
本文深入浅出地讲解Prompt原理及其与大模型的关系,系统介绍Prompt的核心要素、编写原则与应用场景,帮助用户通过精准指令提升AI交互效率,释放大模型潜能。
836 5
|
4月前
|
数据采集 人工智能 JSON
Prompt 工程实战:如何让 AI 生成高质量的 aiohttp 异步爬虫代码
Prompt 工程实战:如何让 AI 生成高质量的 aiohttp 异步爬虫代码
|
5月前
|
机器学习/深度学习 人工智能 安全
当AI开始“思考”:软件工程师眼中的AI惊悚瞬间-优雅草卓伊凡
当AI开始“思考”:软件工程师眼中的AI惊悚瞬间-优雅草卓伊凡
185 6
|
4月前
|
人工智能 自然语言处理 测试技术
让AI帮你跑用例-重复执行,不该成为测试工程师的主旋律
测试不该止步于重复执行。测吧科技推出用例自动执行智能体,通过AI理解自然语言用例,动态规划路径、自主操作工具、自动重试并生成报告,让测试工程师从“点点点”中解放,专注质量思考与创新,提升效率3倍以上,节约人力超50%,重构测试生产力。