当前位置: 首页 > article >正文

大模型自动提示优化(APO)综述笔记

自大型语言模型(LLMs)出现以来,提示工程一直是各种自然语言处理(NLP)任务中激发期望响应的关键步骤。然而,由于模型的快速进步、任务的多样性和相关最佳实践的变化,提示工程对最终用户来说仍然是一个障碍。为了缓解这一问题,自动提示优化(APO)技术应运而生,这些技术使用各种自动化方法来提高LLMs在各种任务上的表现
论文名称:A Systematic Survey of Automatic Prompt Optimization Techniques
研究内容:对APO技术的全面综述,总结了该领域的最新进展和剩余挑战。文章提供了一个APO的正式定义和一个五部分的统一框架,并根据其显著特征对所有相关工作进行了严格的分类。
作者:Kiran Ramnath et al. (Amazon Web Services)
统一框架:APO流程分为五部分——种子初始化、推理评估与反馈、候选生成、筛选保留策略、迭代深度

在这里插入图片描述


1. 初始化种子提示(Seed Initialization)

目标:生成初始提示池作为优化起点。
技术细节及论文对比

方法技术描述相关论文
人工指令基于人工编写的示例生成强基线提示,成本较高但可解释性强。ProteGi (Pryzant et al., 2023)、GPS (Xu et al., 2022)、SPRIG (Zhang et al., 2024b)
LLM指令归纳利用LLM从少量示例或任务文档中归纳可读指令,覆盖任务多样性和语义泛化。APE (Zhou et al., 2022)、DAPO (Yang et al., 2024c)、SCULPT (Kumar et al., 2024)、UniPrompt (Juneja et al., 2024)
结构化模板填充将任务拆解为结构化模板(如README、任务类型、输出格式),由LLM填充内容。UniPrompt (Juneja et al., 2024)

技术比较

  • 人工指令依赖领域专家,适用于高精度场景;
  • LLM指令归纳成本低但需平衡示例质量与泛化能力;
  • 结构化模板提升逻辑一致性,但灵活性较低。

2. 推理评估与反馈(Inference Evaluation & Feedback)

目标:评估候选提示性能并生成反馈以指导优化。
技术细节及论文对比

数值评分反馈
方法技术描述相关论文
任务准确率直接使用分类准确率、BLEU-N(文本生成)、BERTScore(语义相似度)等。APE (Zhou et al., 2022)、PACE (Dong et al., 2024b)
奖励模型训练XGBoost或LLM模型预测提示质量,支持多目标优化(如性能+安全性)。OIRL (Sun et al., 2024a)、DRPO (Amini et al., 2024)
熵与NLL利用输出分布的不确定性(需访问概率分布),优化提示的多样性和稳定性。GRIPS (Prasad et al., 2023)、GPS (Xu et al., 2022)
LLM反馈
方法技术描述相关论文
单候选优化通过分层树结构(SCULPT)或Actor-Critic框架(PACE)动态调整提示。SCULPT (Kumar et al., 2024)、PACE (Dong et al., 2024b)
多候选优化生成文本梯度(ProTeGi)或收集错误案例(PromptAgent),提升全局搜索能力。ProTeGi (Pryzant et al., 2023)、PromptAgent (Wang et al., 2024a)
人工反馈
  • 交互式偏好建模:通过对话动态捕获用户偏好(GATE)。
  • 规则注入:结合人工设计的反馈规则优化多步骤任务(PROMST)。
    相关论文:APOHF (Lin et al., 2024)、GATE (Joko et al., 2024)

技术比较

  • 数值评分客观但灵活性差;
  • LLM反馈支持语义级优化,但计算成本高;
  • 人工反馈精度高,适用于关键任务,但难以规模化。

3. 候选提示生成(Candidate Generation)

目标:生成新候选提示以探索优化空间。
技术细节及论文对比

启发式编辑
方法技术描述相关论文
遗传算法通过交叉、变异操作生成新提示(如SPRIG的组件库操作)。SPRIG (Zhang et al., 2024b)、PromptBreeder (Fernando et al., 2023)
词汇修剪保留高频词(CLAPS)或基于互信息选择关键短语(BDPL),降低搜索空间冗余。CLAPS (Zhou et al., 2023)、BDPL (Diao et al., 2022)
程序合成将提示优化转化为模块化程序(如DSPY的文本转换图),支持结构化组合优化。DSPY (Khattab et al., 2024)、SAMMO (Schnabel & Neville, 2024)
神经网络编辑
方法技术描述相关论文
强化学习策略梯度优化(BDPL)或离线奖励模型(OIRL),平衡探索与利用。BPO (Cheng et al., 2024)、OIRL (Sun et al., 2024a)
GAN对抗训练生成器与判别器联合优化,提升提示对抗鲁棒性(Long et al., 2024)。Long et al. (2024)
元提示设计
  • 结构化元指令:定义任务描述、输出格式、推理过程等模板(DAPO)。
  • 动态优化历史:记录历史优化轨迹以指导后续生成(OPRO)。
    相关论文:OPRO (Yang et al., 2024a)、DAPO (Yang et al., 2024c)

技术比较

  • 遗传算法适合离散空间搜索,但依赖初始组件库;
  • 程序合成支持复杂任务分解,但需预定义模块结构;
  • 强化学习适合动态环境,但训练成本高。

4. 筛选与保留策略(Filter & Retain Strategies)

目标:选择高潜力候选进入下一轮优化。
技术细节及论文对比

方法技术描述相关论文
TopK贪婪搜索保留当前最优候选(ProTeGi),计算高效但易陷入局部最优。ProTeGi (Pryzant et al., 2023)
UCB及其变体平衡探索与利用(SPRIG),支持动态评估数据集采样。SPRIG (Zhang et al., 2024b)、PromptAgent (Wang et al., 2024a)
区域联合搜索(RBJS)按聚类优化专家提示(MOP),提升多任务适应性。MOP (Wang et al., 2025)
元启发式集成混合多种搜索算法(如遗传算法+模拟退火),增强鲁棒性(PLUM)。PLUM (Pan et al., 2024)

技术比较

  • TopK简单高效,适合快速收敛;
  • UCB适合动态环境,需调整探索系数;
  • RBJS在多任务场景表现优异,但依赖聚类质量。

5. 迭代深度(Iteration Depth)

目标:控制优化过程的终止条件。
技术细节及论文对比

方法技术描述相关论文
固定步长预设迭代次数(N),适用于计算资源受限场景。多数方法(如ProTeGi、APE)
动态终止基于性能阈值(GRIPS)或收敛检测(PromptAgent),提升效率。GRIPS (Prasad et al., 2023)、PromptAgent (Wang et al., 2024a)

技术比较

  • 固定步长易实现但可能欠拟合或过拟合;
  • 动态终止节省资源,需设计合理的收敛判定条件。

论文种子初始化候选生成筛选策略迭代深度
ProTeGi人工指令LLM改写UCB固定
APELLM归纳N/AUCB固定
DSPY人工+LLM归纳程序合成TopK动态
MOPLLM归纳专家混合RBJS固定

:本笔记基于论文《A Systematic Survey of Automatic Prompt Optimization Techniques》内容提炼,技术对比需结合具体任务需求选择方法。

相关文章:

大模型自动提示优化(APO)综述笔记

自大型语言模型(LLMs)出现以来,提示工程一直是各种自然语言处理(NLP)任务中激发期望响应的关键步骤。然而,由于模型的快速进步、任务的多样性和相关最佳实践的变化,提示工程对最终用户来说仍然是…...

SOME/IP-SD -- 协议英文原文讲解6

前言 SOME/IP协议越来越多的用于汽车电子行业中,关于协议详细完全的中文资料却没有,所以我将结合工作经验并对照英文原版协议做一系列的文章。基本分三大块: 1. SOME/IP协议讲解 2. SOME/IP-SD协议讲解 3. python/C举例调试讲解 5.1.3.1 E…...

每日Attention学习24——Strip Convolution Block

模块出处 [TIP 21] [link] CoANet: Connectivity Attention Network for Road Extraction From Satellite Imagery 模块名称 Strip Convolution Block (SCB) 模块作用 多方向条形特征提取 模块结构 模块特点 类PSP设计,采用四个并行分支提取不同维度的信息相比于…...

ECharts graphic 的学习

ECharts 的 graphic 属性用于在图表中自定义图形元素(如文本、形状、图片等),实现更灵活的视觉效果增强或交互设计。以下是结合搜索结果的整理与分析: 一、graphic 的核心功能 自定义图形类型 支持多种基础图形元素,包…...

Springboot快速接入豆包大模型

背景 突然接到上面的通知,想要在系统里面接入各大模型的能力,我这边随机选了个豆包,然后快速对接了一下,很顺利,一把过,现在文档的快速入门还是很ok的,在此记录一下过程,给宝子们参考…...

DeepSeek的安全挑战和安全控制措施

本研究探讨了与 DeepSeek 相关的安全风险,为安全和风险管理领导者提供了有针对性的策略来缓解这些威胁,并提供了可行的措施来加强基于现有安全控制的 AI 保护。 主要发现 了解 DeepSeek 当前的安全状况。DeepSeek的采用激增暴露了关键的安全挑战&…...

掌握 JavaScript 旋转技术

1. 基本概念 1.1 角度与弧度 在讨论旋转之前,首先需要了解角度和弧度的概念: 角度:通常用度数表示,一个圆周为360度。弧度:数学上更常用的角度单位,一个圆周为2π弧度。 在JavaScript中,大多…...

力扣-贪心-968 监控二叉树

思路 用true和false作为放置了摄像头,会有局限,就是没法判断以下情况 所以要用数字代表三种状态 2:有覆盖1:有摄像头0:无覆盖 两个节点都被覆盖时,要返回0 两个节点有一个无覆盖就要返回1 两个…...

从零开始搭建你的第一个HBase项目:实战经验分享

从零开始搭建你的第一个HBase项目:实战经验分享 数据洪流中的你,准备好了吗? 在大数据时代,数据量的增长速度令人咋舌。面对海量的数据,如何高效地存储、管理和分析成为了一个亟待解决的问题。今天,我们将…...

计算机毕业设计SpringBoot+Vue.js智慧社区(源码+文档+PPT+讲解)

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...

Elasticsearch 的分布式架构原理:通俗易懂版

Elasticsearch 的分布式架构原理:通俗易懂版 Lucene 和 Elasticsearch 的前世今生 Lucene 是一个功能强大的搜索库,提供了高效的全文检索能力。然而,直接基于 Lucene 开发非常复杂,即使是简单的功能也需要编写大量的 Java 代码&…...

每日一题之混乱的草稿纸

问题描述 一年一度的蓝桥杯省赛即将开赛,小蓝卧薪尝胆,目标直指省一。 为了实现这个宏伟目标,小蓝偷偷准备了一份 NN 行的代码模板,分别写在 NN 张草稿纸上(每张草稿纸上都写有一行代码,并用 11 到 NN 的…...

【redis】数据类型之hyperloglog

Redis的HyperLogLog(HLL)是一种高效的概率数据结构,也是一种基于字符串的数据结构,用于估计大数据集的唯一元素数量(基数统计)。它通过极低的内存占用(约 12KB)实现接近线性的时间复…...

在 compare-form.vue 中添加 compareDate 隐藏字段,并在提交时自动填入当前时间

在 compare-form.vue 中添加 compareDate 隐藏字段,并在提交时自动填入当前时间。 提交表单时存入的对象是FakeRegistration,这个对象里面有compareDate字段,刚好表格查询的对象也是FakeRegistration,所以表格展示的时间就是刚才…...

Chat2File - DeepSeek Chat 导出助手:解决deepseek对话导出问题,提升开发效率

Chat2File - DeepSeek Chat 导出助手:解决deepseek对话导出问题,提升开发效率 大家好久不见,最近这段时间一直在开发一些项目,今天给大家带来一款刚在 Edge 成功上线的实用插件 ——Chat2File - DeepSeek Chat 导出助手。作为开发…...

MEMS光纤麦克风传感器特色解析

概念原理 光纤麦克风是利用光纤作为传光介质和传感元件,将声音信号转换为光信号,并通过对光信号的检测和处理来获取声音信息的设备。它区别于传统基于电信号转换的麦克风,利用光的特性来实现声音的传感与传输。  原理:声音引起敏…...

LLC谐振变换器恒压恒流双竞争闭环simulink仿真

1.模型简介 本仿真模型基于MATLAB/Simulink(版本MATLAB 2017Ra)软件。建议采用matlab2017 Ra及以上版本打开。(若需要其他版本可联系代为转换)针对全桥LLC拓扑,利用Matlab软件搭建模型,分别对轻载&#xf…...

山东大学软件学院ai导论实验之生成对抗网络

目录 实验目的 实验代码 实验内容 实验结果 实验目的 基于Pytorch搭建一个生成对抗网络,使用MNIST数据集。 实验代码 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data…...

C++ Qt常见面试题(2):QT中的文件流(QTextStream)和数据流(QDataStream)的区别

在 Qt 中,QTextStream 和 QDataStream 是两种常用的流类,用于通过文件或其他 I/O 设备(如网络、内存)读写数据。虽然它们都可以用来操作数据,但它们的设计目标和使用场景不同。以下是它们的主要区别和适用场景的详细说明: 1. QTextStream:文本流 QTextStream 是一种专门…...

入门网络安全工程师要学习哪些内容【2025年寒假最新学习计划】

🤟 基于入门网络安全/黑客打造的:👉黑客&网络安全入门&进阶学习资源包 大家都知道网络安全行业很火,这个行业因为国家政策趋势正在大力发展,大有可为!但很多人对网络安全工程师还是不了解,不知道网…...

【论文解读】《C-Pack: Packed Resources For General Chinese Embeddings》

论文链接:https://arxiv.org/pdf/2309.07597 本论文旨在构建一套通用中文文本嵌入的完整资源包——C-Pack,解决当前中文文本嵌入研究中数据、模型、训练策略与评测基准缺失的问题。论文主要贡献体现在以下几个方面: 大规模训练数据&#xf…...

Cramér-Rao界:参数估计精度的“理论底线”

Cramr-Rao界:参数估计精度的“理论底线” 在统计学中,当我们用数据估计一个模型的参数时,总希望估计结果尽可能精确。但精度有没有一个理论上的“底线”呢?答案是有的,这就是Cramr-Rao界(Cramr-Rao Lower …...

ClickHouse 的分区、分桶和分片详解

在大数据场景下,数据的存储和查询效率至关重要。ClickHouse 作为一款高性能的列式存储数据库,提供了多种数据组织方式来优化存储和查询,其中最常见的就是 分区(Partition)、分桶(Sampling)、分片…...

【操作系统、数学】什么是排队论?如何理解排队论?排队论有什么用处?Queueing Theory?什么是 Little’s Law?

排队论(Queueing Theory)是研究系统中排队现象的数学理论,旨在分析资源分配、服务效率及等待时间等问题。它广泛应用于计算机科学、通信网络、交通规划、工业工程等领域。 【下文会通过搜集的资料,从各方面了解排队论&#xff0c…...

2209. 用地毯覆盖后的最少白色砖块

2209. 用地毯覆盖后的最少白色砖块 题目链接&#xff1a;2209. 用地毯覆盖后的最少白色砖块 代码如下&#xff1a; class Solution { public:int minimumWhiteTiles(string floor, int numCarpets, int carpetLen) {vector<vector<int>>memo (numCarpets 1, vec…...

DeepSeek赋能大模型内容安全,网易易盾AIGC内容风控解决方案三大升级

在近两年由AI引发的生产力革命的背后&#xff0c;一场关乎数字世界秩序的攻防战正在上演&#xff1a;AI生成的深度伪造视频导致企业品牌声誉损失日均超千万&#xff0c;批量生成的侵权内容使版权纠纷量与日俱增&#xff0c;黑灰产利用AI技术持续发起欺诈攻击。 与此同时&#…...

(0)阿里云大模型ACP-考试回忆

这两天通过了阿里云大模型ACP考试&#xff0c;由于之前在网上没有找到真题&#xff0c;导致第一次考试没有过&#xff0c;后面又重新学习了一遍文档才顺利通过考试&#xff0c;这两次考试内容感觉考试题目90%内容是覆盖的&#xff0c;后面准备分享一下每一章的考题&#xff0c;…...

0.【深度学习YOLOV11项目实战-项目安装教程】(图文教程,超级详细)

目录 前言一、安装Pycharm&#xff08;安装过Pycharm的跳过这一步&#xff09;1.1 点击下述链接直接跳转到教程页面进行安装 二、安装Anaconda&#xff08;安装过Anaconda的跳过这一步&#xff09;2.1 点击下述链接直接跳转到教程页面进行安装 三、后续安装教程&#xff08;有N…...

Docker 部署 Jenkins持续集成(CI)工具

[TOC](Docker 部署 Jenkins持续集成(CI)工具) 前言 Jenkins 是一个流行的开源自动化工具&#xff0c;广泛应用于持续集成&#xff08;CI&#xff09;和持续交付&#xff08;CD&#xff09;的环境中。通过 Docker 部署 Jenkins&#xff0c;可以简化安装和配置过程&#xff0c;并…...

布署elfk-准备工作

建议申请5台机器部署elfk&#xff1a; filebeat(每台app)--> logstash(2台keepalived)--> elasticsearch(3台)--> kibana(部署es上)采集输出 处理转发 分布式存储 展示 ELK中文社区: 搜索客&#xff0c;搜索人自己的社区 官方…...