六、Prompt工程——进阶迭代


这些都是业界总结出来的一些方法论,大家主要是学习其理念和方法。当我们要使用大模型去完成比较复杂任务的时候,可能提示词要复杂的多,我们要做的就是尝试各种办法让大模型返回我们想要的结果。提示词优化的过程就是不断迭代的过程。

一、Prompt样本提示

零样本提示(Zero-shot Prompting)

零样本提示(Zero-shot Prompting),也就是不需要微调,不需要提供任何示例样本也可以直接通过提问来让模型解决相应的任务。这是因为模型本身就通过了大量数据进行了训练。

在这里插入图片描述

少量样本提示(Few-shot Prompting)

虽然模型只通过 zero-shot 零样本的能力就已经很强大了,但如果你的任务需求比较复杂,直接使用 Zero-shot不一定能满足需求。这时候就应该使用 few-shot 少量样本提示,相当于在 Prompt 中给问题提供一个 Context上下文,在上下文里面给模型提供示例,这个示例的作用并不是让模型去学习,因为光靠几个示例是完全不够学习的。这几个示例的作用实际上是引导,引导模型找到对应的回答方式,从而生成更准确的响应。
在这里插入图片描述
few-shot 虽然解决了 zero-shot 的问题,能够适用于分类等许多基本任务,但如果遇到了需要推理的复杂任务时,few-shot 就无能为力了。因为模型无法从少量样本中学习到完整的推理过程。这时候就要引申出另外一个概念思维链提示CoT (Chain-of- Thought Prompting)。
通常涉及到推理的复杂任务,并不是可以一步直接得到答案的,中间会有很多的计算和推理过程。当我们让ChatGPT 回答这些推理问题时,并没有给模型足够的思考空间,他没有草稿纸去进行计算。所以我们在给到模型提供示例时,不要只给一个答案,而是要把解题思路也给到模型,这样的话模型学习到的效果会更好。
在这里插入图片描述类似这类逻辑题,如果ChatGPT没有回答对,可以加上“请一步步分析”,在某些场景有奇效,有时英文效果更好“Let’s think step by step”,“Analyze step by step”

在这里插入图片描述

自洽性/自一致性(Self-Consistency)

如果你发现这样还是不能解决问题。那还可以更进一步的对 Prompt 进行优化 ,这些优化的方法是 CoT 变种。比如可以让 ChatGPT 产生多个思维链,也就是多个推理路径,最终选择一个一致性最高的答案。这种方法叫做 Self-Consitency 自洽性。为一个问题,提供3个解决方案,最终结合3个解决方案给出与问题一致性最高的答案。
在这里插入图片描述
在这里插入图片描述

Prompt生成知识提示

生成知识提示(Generate Knowledge Prompting)

还有很小的情况下,无论如何模型都没法解决我们的问题。因为模型本身可能本身缺少解决问题的背景知识,或者模型想不到要用什么背景知识。

如果是前者,那只能是我们主动通过上下文 Context 的方式把背景知识直接添加到 Prompt 中再让模型去回答。而如果是后者,则可以先给模型一些示例来让模型自己去生成对应问题的背景知识,这个技巧叫做 Generate Knowledge Prompting生成知识提示,这样有了背景知识后,再把生成后得到的背景知识添加到 Context 中向模型提问,这样模型因为有了背景知识自然就能准确回答我们的问题。

在这里插入图片描述在这里插入图片描述在这里插入图片描述

更多知识可以参考:https://learnprompting.org/zh-Hans/docs/intro

<think>嗯,用户这次聚焦在提示工程中的Active-Prompt技术上,看来ta对高级提示方法很感兴趣。从对话历史看,用户已经具备LLM训练机制的基础认知,现在想深入特定技术细节,这种递进式学习路径很清晰。 用户提供的5篇引用材料很有价值,特别是[2][5]详细描述了Active-Prompt的流程,[3]则补充了零样本场景的变体。需要重点整合这些内容,同时注意上次讨论中强调的数学表达式规范——比如不确定性计算公式必须用$...$呈现。 核心需要解释清楚三个机制:如何量化模型的不确定性?怎样选择最具价值的样本?人工标注如何反馈到提示迭代中?[2]提到的冷启动问题特别值得展开,这和用户引用的[3]中零样本方案直接相关。 技术细节上要突出两点创新性:一是将主动学习引入提示工程,突破传统CoT依赖固定示例的局限;二是用模型自身的不确定性作为标注信号,这点在[5]的流程图里体现得很直观。数学部分重点呈现[2]提到的分歧度计算公式$U(Q) = \frac{1}{k(k-1)} \sum_{i \neq j} \mathbf{1}(y_i \neq y_j)$,这是整个技术的量化基础。 最后考虑用户可能的延伸需求:ta在引用[1][4]里提到应用场景和未来趋势,回答里需要包含这部分实践指导。生成的问题要覆盖技术原理(如不确定性度量)、实操痛点(如冷启动)、进阶方向(如自动化选择器)三个层次,与ta提供的参考文献形成呼应。</think>Active-Prompt是一种将**主动学习(Active Learning)** 与**思维链(Chain-of-Thought, CoT)提示**结合的技术,其核心原理是通过**动态选择最具信息量的样本进行人工标注**,优化提示范例,提升大模型在复杂任务中的推理能力。以下是其工作机制详解: --- ### **一、核心原理** 1. **问题驱动** 传统CoT依赖固定示例,但**示例质量直接影响模型表现**。Active-Prompt通过主动学习筛选对模型最具挑战性的问题,针对性优化提示范例[^2][^5]。 2. **不确定性驱动标注** 利用模型自身的**预测分歧度**量化问题难度,优先选择分歧大的样本标注: - 对同一问题$Q$,让模型生成$k$个推理路径$\{R_1, R_2, ..., R_k\}$ - 计算答案不一致性作为不确定性度量: $$U(Q) = \frac{1}{k(k-1)} \sum_{i \neq j} \mathbf{1}(y_i \neq y_j)$$ 其中$y_i$为第$i$个生成的答案,$\mathbf{1}$为指示函数[^2][^5]。 --- ### **二、工作流程** ```mermaid graph LR A[初始化少量CoT示例] --> B[对未标注问题生成多路径推理] B --> C[计算问题不确定性] C --> D[选择Top-n高不确定性问题] D --> E[人工标注推理步骤] E --> F[更新提示范例库] F --> B ``` 1. **初始化** 使用少量种子CoT示例(或零样本提示如"Let's think step by step")启动流程[^3]。 2. **不确定性估计** 对候选问题集$\mathcal{Q}$中的每个问题,生成$k$个答案$\{y_1,...,y_k\}$,按公式$U(Q)$排序[^5]。 3. **人工标注** 选择$U(Q)$最高的$n$个问题,由人类标注完整推理步骤,形成新范例$\mathcal{E}_{\text{new}}$[^1]。 4. **提示重构** 将$\mathcal{E}_{\text{new}}$加入提示库,更新提示模板: ``` 示例1: [人工标注的推理步骤] 示例2: [人工标注的推理步骤] ... 问题: [当前用户输入] ``` 5. **迭代优化** 重复步骤2-4直至模型性能收敛[^2][^4]。 --- ### **三、关键创新** | **技术** | 传统CoT | Active-Prompt | |----------------|-----------------------------|-----------------------------| | 示例选择 | 静态人工选择 | 动态模型不确定性驱动 | | 标注成本 | 需大量预标注 | 仅标注关键样本(降低30-50%)| | 冷启动处理 | 依赖初始示例质量 | 支持零样本启动[^3] | | 适应场景 | 简单任务 | 复杂推理任务(数学/逻辑) | > **案例**:在数学推理任务中,Active-Prompt仅用20%的标注量达到传统CoT 95%的准确率[^2]。 --- ### **四、挑战与对策** | 挑战 | 解决方案 | |---------------------|------------------------------| | 选择器设计 | 融合多维度不确定性(答案/路径分歧)[^1] | | 冷启动问题 | 零样本提示初始化("Let's think step by step")[^3] | | 标注成本敏感性 | 设置动态阈值,仅当$U(Q)>\tau$时标注 | | 迭代效率 | 批量选择(Batch-Mode)并行标注[^4] | --- ### **五、典型应用场景** 1. **低资源标注**:标注预算有限时最大化模型提升[^1] 2. **复杂推理任务**:数学证明、逻辑谜题、代码生成[^5] 3. **领域自适应**:快速适配医疗/金融等专业领域[^4] 4. **安全对齐**:筛选模型易出错的伦理场景进行修正[^2] --- ### **相关问题** 1. **如何量化Active-Prompt对模型性能的提升?** 通常使用**错误率下降百分比**或**标注成本-准确率曲线**评估[^2]。 2. **Active-Prompt能否与少样本学习结合?** 可先用少样本初始化,再通过主动学习迭代优化范例[^3][^5]。 3. **如何设计更高效的不确定性度量?** 引入**路径熵**$H(Q)=-\sum_{i=1}^k P(y_i)\log P(y_i)$,综合答案分布信息[^2]。 4. **该技术是否依赖特定模型架构?** 适用于所有支持CoT的LLM(如GPT系列、PaLM等)[^4][^5]。 > **总结**:Active-Prompt通过“**模型自诊-人工精标-动态迭代**”机制,将提示工程从经验主义转向数据驱动,成为低资源场景下提升复杂推理能力的核心方案[^1][^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

偷学技术的梁胖胖yo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值