心流logo

prompt优化方法

Prompt优化方法主要包括以下几种:

  1. APE(Automatic Prompt Engineering)

    • 从候选集中选出好的prompt,再在好的prompt附近进行试探性地搜索。
    • 可以分为以下三个步骤:
      • 生成prompt candidates
      • 在训练集上打分,并保留高分prompt
      • 在高分prompt附近进行采样,模拟Monte-Carlo Search过程
  2. APO(Automatic Prompt Optimization)

    • 在文本空间实现gradient descent过程。
    • 分为以下三个步骤:
      • 得到当前prompt的“gradient”,即在给定的错误样本上让LLM给出当前prompt预测错误的原因。
      • 应用“gradient”,得到新的prompt,包括两个子步骤:使用LLL来编辑原来的prompt,以及通过resample扩充相似语义的prompt。
      • 挑选出好的prompt。
  3. OPRO(LLM as Optimizer)

    • 将LLM设计成一个基于过往迭代记录和优化目标的优化器。
    • 框架的核心是让LM基于迭代过程的规律进行优化。
    • 框架分为使用meta-prompt让LLL成为优化器,生成新的solution,以及在使用Scorer LLM评估效果并记录到meta-prompt中后,继续下一轮迭代的过程。
  4. SAMMO(Structure-Aware Multi-objective Metaprompt Optimization)

    • 微软提出的一种新框架,实现编译时优化Metaprompt。
    • 将Prompt表示为结构化对象,支持minimetry来降低标注成本,并拥有提示原型和工程等优势。
    • 核心思想是将Prompt表示为一个结构化的程序,并定义了一系列结构感知的Prompt变异算子。

这些方法都试图通过自动化的方式对prompt进行迭代优化,以提高LLM在各种任务上的性能。然而,值得注意的是,这些方法的效果可能会因LLM的不同而有所差异,因此在实际应用中,需要根据具体场景和LLM特性进行调整和优化。