技术指南

自动提示优化和 DSPy

自动提示优化使用算法来搜索更好的指令或少量示例。

  • 4 分钟阅读
  • 最后更新
在本页4 分钟阅读
  1. 概述
  2. 深入探讨
  3. 战略影响
  4. 自动提示优化和 DSPy 的未来
  5. 现实世界的实施
  6. 风险与防护栏
  7. 实施路线图
  8. 不断探索
  9. 常见问题

概述

它根据一组示例的指标对候选提示进行评分,而不是依赖手动调整的措辞。著名的方法包括 APE、Google DeepMind 的 OPRO 和 DSPy(斯坦福大学的开源框架)。他们共同将即时工程从猜测转变为可测量、可重复的过程。

深入探讨

手动调整的提示有一个已知的弱点。适用于一种模型、数据集或版本的措辞可能会悄悄停止适用于另一种模型、数据集或版本,并且通常仅根据少数示例来判断更改。自动提示优化用搜索取代了该循环。您提供三样东西: - 一项任务。 - 一组输入,最好具有预期输出。 - 指标,例如完全匹配或由另一个模型评分的评分标准。优化器生成候选提示,运行它们,对它们进行评分并保留获胜者。早期的例子使这个想法变得具体。 APE(自动提示工程师,Zhou 等人,2022)有一个模型从输入输出示例中提出许多指令,然后保留得分最高的指令。 OPRO(Optimization by PROmpting, Yang et al., Google DeepMind, 2023)使用 LLM 作为优化器。它的元提示列出了早期的指令及其分数,并且该模型提出了新的指令。 OPRO 发现了诸如“深吸一口气,逐步解决这个问题”之类的指令,这些指令对于小学数学的一个特定模型来说得分很高。优化的措辞可能不直观并且特定于模型。 DSPy 更进一步,改变了程序的编写方式。它由 Omar Khattab 和合作者在斯坦福大学 NLP 开发,并于 2023 年推出。您可以使用签名声明每个步骤的作用,例如“问题、上下文 -> 答案”,并组合 Predict 或 ChainOfThought 等模块。然后,优化器(以前称为提词器)(例如 BootstrapFewShot 或 MIPROv2)通过为每个模块选择演示和指令来“编译”程序,以最大化您的指标。三个误解值得纠正: - 这些工具消除了人类的判断力。他们没有,因为指标和例子定义了“更好”。 - 优化的提示值得信赖。他们可能会过度拟合小数据集。 - 优化是免费的。它需要真正的 API 调用,有时甚至很多。

战略影响

成本与预算

多年来,架构决策决定着性能和运营成本。

更清晰的判决

技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。

质量控制

更好的工程选择可以减少生产中的可靠性事故。

自动提示优化和 DSPy 的未来

即时优化与评估套件一起正在成为法学硕士工程的正常组成部分,而不是出于研究好奇心。悬而未决的问题仍然存在。优化提示在模型之间的传输效果如何?您如何编写主观品质(例如语气或乐于助人)的指标?如何避免过度拟合小数据集?一些研究将即时优化与轻量级微调结合起来,DSPy 支持两者。模型经常变化,因此针对稳定测试集自动重新优化的能力可能比任何单一的巧妙提示更重要。定义好的指标和示例仍然是人类的工作。

现实世界的实施

构建支持票证分类器的团队编写了 DSPy 签名“票证 -> 类别”,并提供 200 个带标签的票证和准确度指标。然后,优化器会选择得分最高的几次演示。

当一家公司从一个 LLM 提供商转向另一家时,它会针对新模型重新运行 DSPy 优化器。它不会手动重写针对旧模型调整的提示。

研究人员运行 OPRO 式循环。一个模型为指令提出新的措辞,每个措辞都根据数学基准进行评分,最佳得分历史记录将返回到下一轮提案中。

检索增强的问答管道经过端到端优化,并使用一个指标来检查最终答案与参考答案。查询编写步骤和回答步骤一起改进。

风险与防护栏

  • 优化一项基准测试可以隐藏更广泛的系统弱点。

  • 基础设施和维护成本常常被低估。

  • 随着系统变得更加复杂,安全性和可观察性差距可能会扩大。

实施路线图

  1. 在实施之前定义延迟、质量和成本目标。

  2. 在实际负载和数据条件下进行基准测试。

  3. 仪器监控错误、漂移和用户影响。

  4. 在扩展之前准备回滚和事件响应路径。

不断探索

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Automatic Prompt Optimization and DSPy quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

开始测验

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

常见问题

什么是自动提示优化和 DSPy?

自动提示优化使用算法来搜索更好的指令或少量示例。它根据一组示例的指标对候选提示进行评分,而不是依赖手动调整的措辞。著名的方法包括 APE、Google DeepMind 的 OPRO 和 DSPy(斯坦福大学的开源框架)。他们共同将即时工程从猜测转变为可测量、可重复的过程。

您必须提供什么才能使自动提示优化发挥作用?

优化器需要任务、示例和指标,以便对候选提示进行评分并保留最佳提示。

在OPRO中,优化器的作用是什么?

OPRO 使用语言模型作为优化器。它会根据分数查看过去的指令并提出新的指令。

OPRO“深吸一口气,一步步解决这个问题”的结果说明了什么?

该指令在小学数学的一个特定模型中得分很高。通过搜索找到的措辞可能会令人惊讶,并且可能不会延续到其他模型。

什么是 DSPy 签名?

签名声明模块应根据其输入和输出字段执行哪些操作。然后 DSPy 计算出提示。

DSPy 的 BootstrapFewShot 如何获得演示?

成功的跟踪成为少数示例,包括您从未标记自己的内部步骤。