Prompt 调优是对给大模型输入的原始输入进行优化和改进的过程,具有以下作用和特点:
prompt这个词很多人都听到过,甚至一度还出现过prompt优化师这样的角色。那么prompt是做什么的呢?prompt其实是给到大模型输入的一段原始的输入,能够帮助模型更好地理解用户的需求并按照特定的模式或规则进行响应。对于prompt,比如可以设定“假设你是一位医生,给出针对这种症状的建议”,然后你与大模型后续的对话中,都会按照这个原始设定来展开。这里有个比较有意思的玩法,就是我们可以在prompt的设定中,要求模型按照一定的思路逻辑去回答。比如最近比较火的cot,也就是思维链,也是在prompt这个环节,对于模型的输出进行指导。这里的玩法很多,比如我们还可以让模型按照特定格式的json输出等,这样模型真的就可以变成了一个输出器来使用。
[title]2.Prompt engineering 提示工程[heading1]What is prompt engineering? 什么是提示工程?[heading2]The prompt development lifecycle 提示开发生命周期[content]3.Engineer the preliminary prompt:Next,craft an initial prompt that outlines the task definition,characteristics of a good response,and any necessary context for Claude.Ideally you should add some examples of canonical inputs and outputs for Claude to follow.This preliminary prompt will serve as the starting point for refinement.设计初步提示:接下来,制定一个初步的提示,概述任务定义、良好响应的特征,以及Claude所需的任何上下文。理想情况下,您应该添加一些规范输入和输出的示例供Claude参考。这个初步提示将作为改进的起点。4.Test prompt against test cases:Feed your test cases into Claude using the preliminary prompt.Carefully evaluate the model's responses against your expected outputs and success criteria.Use a consistent grading rubric,whether it's human evaluation,comparison to an answer key,or even another instance of Claude’s judgement based on a rubric.The key is to have a systematic way to assess performance.根据测试用例测试提示:使用初步提示将测试用例输入到Claude中。仔细评估模型的响应与您预期的输出和成功标准是否一致。使用一致的评分标准,无论是人工评估、与答案标准的比较,甚至是基于评分标准的Claude判断的另一个实例。关键是要有一种系统性的评估性能的方式。
本文涉及与提示工程相关的重要主题,即自动优化提示的想法。虽然我们在本指南中没有深入探讨这个主题,但如果您对此主题感兴趣,以下是一些关键论文:[Prompt-OIRL(opens in a new tab)](https://arxiv.org/abs/2309.06553)-使用离线逆强化学习来生成与查询相关的提示。[OPRO(opens in a new tab)](https://arxiv.org/abs/2309.03409)-引入使用LLMs优化提示的思想:让LLMs “深呼吸”提高数学问题的表现。[AutoPrompt(opens in a new tab)](https://arxiv.org/abs/2010.15980)-提出了一种基于梯度引导搜索的方法,用于自动创建各种任务的提示。[Prefix Tuning(opens in a new tab)](https://arxiv.org/abs/2101.00190)-是一种轻量级的fine-tuning替代方案,为NLG任务添加可训练的连续前缀。[Prompt Tuning(opens in a new tab)](https://arxiv.org/abs/2104.08691)-提出了一种通过反向传播学习软提示的机制。