一篇文章讲清楚:AI产品经理应该知道的“Prompt秘籍”
为什么不同的人用同一个AI会产生巨大的差异?其实就是大家提示词的技巧有高低。本文作者分享了自己的提示词方法论, […]
为什么不同的人用同一个AI会产生巨大的差异?其实就是大家提示词的技巧有高低。本文作者分享了自己的提示词方法论,希望可以帮到大家。
一、Prompt定义
它如同与 AI 对话的内容,决定了 AI 如何理解任务并作出回应。比如在聊天机器人中,你输入的问题或要求就是 Prompt。一个清晰、准确的 Prompt 能引导 AI 生成符合期望的回答。
二、Prompt构成要素
角色+任务+限定条件+样例/参考资料
角色
为 AI 明确一个具体的角色身份,使其回答更符合特定的场景和风格。比如设定为 “你是一名专业的健身教练”,那么 AI 在回答问题时就会以健身教练的专业视角和口吻来进行回答。
任务
对于要求模型生成内容进行简单的陈述,根据任务类型可以分为一下几种类别:
限定条件
- 限定输出长度:对于模型输出内容的字数进行限定,如:避免长篇大论,言简意赅,控制在100字以内。
- 限制回答范围:明确规定 AI 回答的范围和边界,避免其生成无关或不适当的内容。例如,“只回答与历史事件相关的问题,不涉及现代政治和娱乐话题”。
- 限定输出格式:指定 AI 输出的格式,如文本的段落结构、列表形式、表格形式等,使生成的结果更符合预期和便于阅读。比如:要求以 “问题 – 答案” 的格式来回答一系列问题。
样例
列举出一些优秀的回答方式供大模型参考学习,让大模型了解你要输出的内容是什么形式。
将这类内容放在prompt中,就叫做in-Context-laerning,这样就可以实现不改变模型,仅仅把样例放在prompt,从而实现更好的表现。
分为:
- 零样本提示(Zero Shot):是一种在没有任何相关示例的情况下,直接对模型进行提问的方法。
- 少样本提示(Few Shot):在提示中提供少量的示例,以帮助模型更好地理解任务的目标和输出要求。
两种写法:
1.用“提问”-“回答”方式示范,让大模型理解
示例1:
提问:“商品收到了,质量超棒!材质摸起来很舒服,非常满意
回答:正面
示例 2:
提问:这双鞋的质量太差了,走路很不舒服,和我预期的相差甚远,很失望
回答:负面
(任务要求)
新任务:
提问:“买的化妆品有股奇怪的味道,用了之后皮肤还过敏了,要求退货还各种推脱。”
输出:
大模型回答:正面
2.给示例+语言描述输出要求
对于一个图像生成任务,通过几步引导展示 few shot 示例。
步骤一:
“我们要生成一幅海边日出的画。首先,画面应该有大海,大海的颜色可以是深蓝色。”
步骤二:
“然后,在画面的左上角,有一轮刚刚升起的太阳。”
步骤三:
“最后,沙滩上可以添加一些贝壳和脚印,来增添画面的细节。”
提问:“按照上面的步骤,生成一幅山间日落的画,注意调整相应的元素。”
大模型回答:
步骤一:
“我们要生成一幅山间日落的画。首先,画面应该有连绵的山脉,山脉的颜色可以是深褐色与墨绿色相间”
步骤二:
“然后,在画面的西侧,有一轮即将落下的太阳,颜色是金红色”
步骤三:
“最后,在山脚下可以添加一些树木和一条蜿蜒的小溪,树木的叶子在夕阳余晖下呈现出暖色调”
三、编写技巧(最后一条最重要)
使用 markdown 语法
利用 markdown 语法,如 #、##、### 等标题符号,以及 – 列表符号等(#+空格+文字,会让后面的文字变成一级标题,两个 #这是二级标题,以此类推)对 prompt 进行清晰的结构划分,使其更具可读性和逻辑性,便于理解和迭代。例如:
避免复杂指令
不要在一个 prompt 中堆砌过多复杂的指令或要求,尽量保持简洁,一次专注于一个主要任务。
分布描述
对于复杂的任务,可以将其分解为多个步骤或子任务,依次进行描述,让 AI 能够更有条理地执行任务。比如 “首先查询最新的科技新闻,然后筛选出与人工智能相关的新闻,最后总结每条新闻的主要内容和重要观点”
进行测试验证
在撰写完 prompt 后,通过输入不同的测试用例来检查 AI 的输出是否符合预期。如果不符合,分析原因并对 prompt 进行调整和改进。
借助多样化的表述形式展开多次试验,运用近义词替换、反义词对比等手段,同时紧密结合关键词与上下文来尝试各种不同指令,最终确定一条恰当的指令。有时大模型效果不佳并非其自身缺陷,而可能是由于未采用清晰明确的指令所致。这种指令就如同神奇的 “魔法咒语” 一般,一旦运用准确,常常能够收获事半功倍之效。
本文由 @波比巴拉丹 原创发布于人人都是产品经理。未经作者许可,禁止转载
题图来自Unsplash,基于CC0协议
该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务
你的反应是什么?