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

Prompt工程记录

Prompt基本建议:

1.在查询中包含详细信息以获得更相关的答案

总结会议笔记:先将会议笔记总结为一段,然后写一份演讲者的打分表,列出他们的每个要点;最后列出发言者建议的下一步行动或者行动项目(如果有的话)

2.让模型扮演一个角色

3.使用分隔符清楚的指示输入的不同部分

总结以下文本:1234

总结由三个引号分割的文本

"""12342132131"""

4.指定完成任务所需任务

5.提供示例

6.指定所需的输出长度

提示工程

Few-shot

大多数情况下我们写的Prompt一般称为One-shot(零样本)通常依赖模型已经学到的知识

Few-shot 少量样本教导模型使用非常少量的训练数据来识别新对象

示例的作用有时超过千言万语

Few-shot并不复杂,只需要将一些类似的问题和答案作为提示的一部分输入即可

示例:

  • 例题 1:“如果 3 个苹果售价 6 元,那么 5 个苹果多少钱?” → 解答:6÷3×5=10 元
  • 例题 2:“4 支铅笔 8 元,买 7 支需要多少钱?” → 解答:8÷4×7=14 元
    待解问题:“2 个笔记本 10 元,买 6 个笔记本要花多少钱?” → 模型应输出 “10÷2×6=30 元”

通过思维链提示法提升模型推理能力 

核心:通过在输入序列中精心设计一系列有序的,逻辑相连的提示或者问题,促使AI模型不仅关注当前任务的直接需求,还能追溯并整合过往信息,形成一条条逻辑清晰的思维轨迹。

充分利用思维链提示法的关键是:设计高度结构化且具有引导性的提示序列,要求设计者深刻理解目标问题的内在逻辑,布局问题框架,铺设从简单导复杂的思考路径。

动态调整提示策略,根据模型反馈灵活修正思维链的方向和深度,也是优化中的重要环节。

最基础的思维链:在输入末尾加上“let's think step by step" 称为 Zero-shot-CoT

Few-shot-CoT

通过编写思维链样本作为提示,让模型学会思维链的推导方式

示例:

输入文本:
“请解决下面的数学问题,解题时请先写出详细的推理步骤,再给出答案。
示例 1:
问题:小明有 5 颗糖,妈妈又买了 7 颗,分给同学 3 颗,还剩几颗?
推理:
小明原本有 5 颗糖,妈妈买了 7 颗后,现在有 5+7=12 颗。
分给同学 3 颗后,剩下的数量是 12-3=9 颗。
答案:9示例 2:
问题:一个书架有 4 层,每层放 6 本书,借出去 10 本,还剩多少本?
推理:
书架每层 6 本,4 层一共有 4×6=24 本书。
借出去 10 本后,剩下 24-10=14 本。
答案:14现在请解决:
问题:3 个小朋友每人有 4 个气球,不小心飞走了 5 个,还剩多少个气球?
请先推理,再给出答案。”
  1. 思维链要 “接地气”:模仿人类自然推理的口语化表达(如 “首先”“然后”“因为… 所以…”),避免过于简洁或抽象。
  2. 示例数量适中:2-5 个示例效果最佳(太少则模型学不会推理模式,太多则可能稀释重点)。
  3. 明确提示 “先推理后答案”:在最后一个问题前强调 “请先写出推理步骤,再给出答案”,防止模型跳过思维链。
  4. 答案格式统一:示例中答案的标注方式要一致(如均用 “答案:XXX”“最终答案:XXX”),方便模型对齐输出。
  5. 复杂问题利用此方法准确率依然不够好

 

Least-to-Most Promoting 

通过人工编的思维链提示样本可能并不能很好的迁移到其他问题中:泛化能力不够

Google提出两阶段进行的方法

1:自上而下的分解问题

2:自下而上的依次解决问题

LtM的核心不仅在于引导模型拆分问题,还要将子问题的问题和答案回传给子模型,理论上,整个过程会有三次调用大模型的过程:

  1. 原始问题 提问 拆分为子问题
  2. 子问题 提问 获得子问题回答
  3. 原始问题 子问题加答案 获得原始问题回答
主问题:A、B、C、D 四人排队,A 不在第一个,B 在 C 的前面,D 在 A 的后面,第一个人是谁?
Least-to-Most 提示过程:
子问题 1:根据 “B 在 C 的前面”,可能的位置顺序有哪些(只考虑 B 和 C)?
推理:B 必须在 C 左边,可能的顺序是 B→C(中间可隔人)。
答案:B 在 C 前,如 BXXXC、BX CX、BCXX 等子问题 2:结合 “A 不在第一个”,A 可能的位置是?
推理:总共有 4 个位置(1 到 4),A 不能在 1,所以可能在 2、3、4。
答案:A 在 2、3 或 4 位子问题 3:结合 “D 在 A 的后面”,A 和 D 的位置关系是?
推理:D 必须在 A 右边,即若 A 在 2,D 可在 3/4;A 在 3,D 在 4;A 在 4,D 无位置(排除)。
答案:A 在 2→D 在 3/4;A 在 3→D 在 4主问题(整合子问题):第一个人是谁?
推理:
由子问题 1:B 在 C 前,所以 C 不能在 1;
由子问题 2:A 不能在 1;
由子问题 3:D 在 A 后,若 D 在 1,则 A 需在 D 前(不可能),故 D 不能在 1;
剩下只能是 B 在 1。
答案:B

提示框架

BROKE:背景,角色,目标,关键结果,改进

COAST:上下文,目标,行动,场景,任务

ROSES:角色,目标,场景,解决方案,步骤

1. BROKE 框架

背景
动态Job Shop Scheduling Problem(JSP)涉及在生产过程中处理作业和机器之间的调度问题。随着任务和作业的动态变化,如何在不确定性中实现高效调度成为一个挑战。现代算法,如遗传算法、启发式算法和强化学习,能够有效应对这一挑战。

角色

  • 调度系统(负责优化任务分配)

  • 生产经理(决策和目标设定)

  • 作业和机器(受调度影响的对象)

目标
开发一个灵活的调度算法,能够根据动态输入(如作业到达、机器故障、生产任务变更等)自动调整和优化调度计划,以最大化生产效率和减少延误。

关键结果

  • 提高调度的实时响应能力,能快速处理动态变化

  • 降低作业的延误时间和机器的空闲时间

  • 提升整体生产效率和成本效益

改进

  • 探索基于强化学习的调度优化策略,以应对复杂的动态变化

  • 考虑多目标优化,兼顾生产效率、资源使用和任务完成时间

2. COAST 框架

上下文
在动态JSP环境中,生产过程中可能出现作业需求的突然变化,机器故障或突发事件,这些都要求调度算法能够快速响应。传统的静态调度方法无法适应这种动态变化,需要新的调度方法来优化决策。

目标
优化动态环境下的作业调度,提高生产效率和机器利用率,减少作业的等待时间,并最大化按时交货率。

行动

  • 设计并实现一个动态调度算法,能够实时调整调度计划

  • 将遗传算法与启发式算法结合,以处理动态作业调度的挑战

  • 利用机器学习模型预测可能的作业需求和机器状态变化,从而提前做出调度决策

场景

  • 制造业车间,多个作业和机器同时运行

  • 每个作业有多个工序,需要依赖不同的机器执行

  • 作业到达时间和任务要求是动态变化的

任务

  • 实时监控和响应车间中作业和机器的状态变化

  • 动态调整调度方案,确保尽可能减少生产瓶颈和延误

  • 进行在线优化,考虑时间窗约束、优先级和机器能力限制等多种因素

3. ROSES 框架

角色

  • 调度系统:负责管理和优化作业调度

  • 生产管理人员:通过调度系统获取生产状态反馈,并做出决策

  • 作业任务:需按特定顺序和资源约束完成

  • 机器设备:提供资源来完成作业操作

目标
实现一个能够适应动态变化(如作业到达、机器故障)的调度系统,并在保持高效生产的同时,减少因这些变化导致的延误和资源浪费。

场景
在一个现代化生产车间中,多个作业和多个机器同时运行。作业到达时间、工序执行时间和机器状态是动态的,可能在执行过程中出现故障或优先级变化。

解决方案

  • 设计一个动态调度系统,利用进化算法(如遗传算法)处理动态变化的作业调度问题

  • 结合智能预测技术(如机器学习)预测未来可能的生产瓶颈,并根据预测调整调度策略

  • 动态调度不仅考虑作业的完成时间,还考虑机器的利用率、设备的维护状态和作业的优先级

步骤

  1. 建立一个系统模型,描述作业、机器、任务等对象的关系

  2. 实现一个动态调度框架,支持实时数据输入和调度调整

  3. 设计和实施遗传算法或其他进化算法,作为调度优化策略

  4. 集成机器学习模型来预测系统的动态变化并优化调度

  5. 在实际环境中进行测试和调整,确保系统能有效应对突发事件和需求变化

http://www.xdnf.cn/news/1205893.html

相关文章:

  • MCU+RTOS调试
  • STM32启动流程
  • opencv 模块裁剪 按需安装指定模块
  • MCU 中的 PWM(脉冲宽度调制)是什么?
  • 未授权访问复现
  • Python动态规划:从基础到高阶优化的全面指南
  • 未授权访问漏洞靶场(redis,MongoDB,Memcached...)
  • Unity_UI_NGUI_锚点组件
  • 项目如何按时交付?重点关注的几点
  • 【Linux操作系统】简学深悟启示录:Linux环境基础开发工具使用
  • GoLand 项目从 0 到 1:第三天 —— 图数据库版本管理方案调研与中间件部署
  • Dify-14: 工作流API端点
  • 在虚拟机ubuntu上修改framebuffer桌面不能显示图像
  • STM32F4—电源管理器
  • YOLOv11改进:添加SCConv空间和通道重构卷积二次创新C3k2
  • 时间数字转换器TDC的FPGA方案及核心代码
  • 数分思维10:用户增长
  • 小智源码分析——音频部分(二)
  • 机器学习sklearn:决策树的参数、属性、接口
  • mp核心功能
  • S7-200 SMART 通过本体 RS485 口与 DP01 上传 / 下载程序(网口故障)
  • Java项目:基于SSM框架实现的进销存管理系统【ssm+B/S架构+源码+数据库+毕业论文+远程部署】
  • 我从 Web2 转型到 Web3 的 9 条经验总结
  • 架构实战——互联网架构模板(“存储层”技术)
  • fchown/fchownat系统调用及示例
  • 坚鹏:AI智能体培训是知行学成为AI智能体创新应用引领者的基础
  • 3DGRUT: 革命性的3D高斯粒子光线追踪与混合光栅化技术深度解析
  • Item18:让接口容易被正确使用,不易被误用
  • 鱼皮项目简易版 RPC 框架开发(二)
  • JavaScript:10个数组方法/属性