前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【AI 大模型】提示工程 ① ( 通用人工智能 和 专用人工智能 | 掌握 提示工程 的优势 | 提示工程目的 | 提示词组成、迭代、调优及示例 | 思维链 | 启用思维链的指令 | 思维链原理 )

【AI 大模型】提示工程 ① ( 通用人工智能 和 专用人工智能 | 掌握 提示工程 的优势 | 提示工程目的 | 提示词组成、迭代、调优及示例 | 思维链 | 启用思维链的指令 | 思维链原理 )

作者头像
韩曙亮
发布2024-06-22 08:16:44
2160
发布2024-06-22 08:16:44
举报

一、提示工程 Prompt Engineering 简介


1、通用人工智能 和 专用人工智能

通用人工智能 和 专用人工智能 :

  • AGI , Artificial General Intelligence , 通用人工智能 , 是一种具备学习、推理、感知、理解等人类智能的 全面智能系统 , 不局限于某一领域或任务 , 可以在多个领域表现出类似于人类的智能水平 ;
  • ANI , Artificial Narrow Intelligence , 专用人工智能 , 只能执行特定任务 , 如 : 语音识别、图像识别、自然语言处理 ;

提示工程 Prompt Engineering 主要作用于 AGI , Artificial General Intelligence , 通用人工智能 ;

2、Prompt 提示词

Prompt 提示词 的作用是 引导模型生成特定类型的文本或完成特定任务 ;

提示词通常是 一段文本 或 代码片段 , 提供了关于期望输出的一些指导或约束 ;

在使用 GPT 模型时 , 设计和使用 优秀的提示词 可以显著提升 GPT 模型的实用性和效果 , 可以满足特定的输出需求 ;

提示词 Prompt 作用如下 :

  • 引导 GPT 模型 生成 特定主题或风格的文本 ;
  • 指导 GPT 模型完成特定的任务 , 如 : 翻译、摘要、问答、编程 ;
  • 指导 GPT 模型生成特定语言风格或口吻的文本 ;
  • 作为约束条件 , 限制 GPT 模型生成的范围或内容 ;
  • 优秀的提示词可以更准确的表达用户意图 , 生成更高质量的输出 ;

3、提示工程

提示工程 Prompt Engineering , 又叫 指令工程 ;

Prompt 提示词 是使用 通用人工智能 ( AGI , Artificial General Intelligence ) 的 基础语言 ,

Prompt Engineering 提示工程 就是 如何设计和使用 提示词 的工程 ;

4、掌握 提示工程 的优势

提示工程师 相当于 就是 在 AGI 领域 可以设计和使用优秀提示词的工程师 , 在 AGI 时代每个人都要成为优秀的 提示词工程师 , 一个程序员如果 提示工程 素养太差 , 其工作效率也会相应变低 , 逐渐会被淘汰 ;

在当前的阶段 , 了解或精通 " 提示工程 " , 对一个开发者是很大的优势 , 有意识掌握 提示工程 的人 只是少数人 ;

5、提示工程目的

GPT 大模型 只是 根据当前的 提示词语境 基于概率生成下一个字 , 生成出来的语句并不一定是想要的输出结果 ;

对于不同的提示词 , 有的提示词是有效的 , 得到了我们想要的输出结果 , 有的提示词是无效的 , 使用哪些提示词可以高效解决问题 ;

对于 相同的提示词 , 在不同的语境下 , 有时是有效的 , 有时是无效的 ; 进行多轮对话 , 多次渐进提问 , 不断对提示词进行校准 , 可以得到更好的输出结果 ;

提高 提示词 的 有效性 , 提高 提示词 的对应输出结果的质量 , 就是 提示工程 要解决的问题 ;

二、提示词组成、迭代、调优及示例


复杂的任务 , 需要提示词进行多轮对话 , 每一轮都对提示词进行迭代、调优 , 最终得到满意的输出结果 ;

1、提示词的组成

提示词的组成 :

  • 任务指示 : 描述具体的需求 , 要执行什么样的任务 ;
  • 构造语境环境 ( 上下文 ) : 在与大模型的多轮交互中 , 不断描述校准任务的其它细节和背景 ;
  • 给出示例 : 想要大模型生成什么样的结果 , 可以 给大模型一个结果示例 , 让大模型参考给出类似结果 ;
  • 输入信息 : 在 提示词 中 , 明确该任务的输入信息 , 包括 参数 , 文字 , 图片 等信息 ;
  • 输出信息 : 在 提示词 中 , 明确指定想要的输出结果 , 如 : 给出指定格式的结果 , HTML 文档 , XML 文档 等 ;

2、提示词的迭代、调优

使用大模型解决一个问题 , 找到好的 Prompt 提示词需要 持续的 迭代、调优 ;

让 GPT 大模型理解你的需求 , 将需求描述清楚 , 这个需要 不断完善需求的细节 , 不要认为一些所有人都认为是常理的事物就可以不描述 ;

大模型只是一个 根据概率生成词汇的机器 , 并不具备很多人的本能逻辑 , 需要把需求的各个细节尽可能的描述清楚 ;

描述的需求 , 不能有歧义 , 大模型也可会 出现 理解错误 的问题 ;

3、提示词基础示例

给定一段文字 ,

代码语言:javascript
复制
我叫小王,住在北京市海淀区清华东路16号,手机号是18588888888,爱好是打篮球

使用 ChatGPT 大模型提取其中的 学生姓名 , 家庭住址 和 电话 , 则使用如下提示词 :

代码语言:javascript
复制
从下面的文字中提取 学生姓名,家庭住址和电话 : 我叫小王,住在北京市海淀区清华东路16号,手机号是18588888888,爱好是打篮球

ChatGPT 给出的结果是 :

代码语言:javascript
复制
学生姓名: 小王
家庭住址: 北京市海淀区清华东路16号
电话: 18588888888

4、提示词 " 指定输出格式 " 示例

如果我们想要特定的输出格式 , 比如 XML 格式 , 第二轮对话中 , 追加提示词

代码语言:javascript
复制
请输出 XML 格式结果

得到如下输出结果 :

代码语言:javascript
复制
<student>
    <name>小王</name>
    <address>北京市海淀区清华东路16号</address>
    <phone>18588888888</phone>
</student>

5、提示词 " 上下文语境 " 示例 - 多轮对话解决问题

在 智能客服 的应用场景中 ,

智能客服 与 客户 进行对话 ,

GPT 大模型生成的模型 , 需要参考之前的历史对话记录 , 构造一个上下文环境 , 生成后续内容 ;

每轮提问 , 都将历史对话记录放在提示词中 ;

提示词 :

代码语言:javascript
复制
当前扮演的角色是客服 , 与客户进行对话 , 回答客户的问题 , 之前的历史记录如下 : 
客服 : 您好 , 请问您需要什么帮助?
客户 : 我想退款 ? 
生成客服下一步的话术 , 尽量劝导客户不要退款 ; 

GPT 模型输出 :

代码语言:javascript
复制
您好,感谢您的留言!我们很重视您的需求。请问是什么原因让您想要退款呢?或许我们可以帮您解决遇到的问题,或者提供一些优惠和额外的服务,让您有更好的体验。希望能找到一个令您满意的解决方案。

该任务就需要反复将客户的回复作为提示词 , 进行多轮对话 , 生成下一步的对话 ;

后续提示词 与 输出结果 : 每次都将双方的上一次对话 , 叠加到本次的提示词中 ;

6、提示词 " 增加约束 " 示例

如果对输出结果不太满意 , 可以在提示词中 增加约束 ,

对 GPT 大模型的 输出结果进行一定的约束 , 如 : 语气更加人性化 , 回答更加简短 , 增加一些数据支持 等 ;

约束提示词 可以 直接追加在 第一轮的 提示词中 , 也可以在输出结果完成后 , 在后续交互中 追加约束 ;

追加约束提示词 :

代码语言:javascript
复制
回答更加简短一些

三、思维链 Chain of Thought


1、思维链简介

思维链 ( CoT , Chain of Thought ) 是 GPT 大模型 的 独特的 推理能力 , 这是在进行 大模型 训练时 偶然发现的功能 ;

思维链 可以 使 大模型 执行复杂的推理逻辑 , 生成更可靠的输出结果 ;

大模型 会自动将 复杂问题 拆解成多个步骤 , 逐步解决每个步骤的子问题 , 并明确地展示如何解决中间步骤的问题 , 最终得到准确的输出结果 ;

2、思维链推理过程

思维链推理过程 :

  • 拆解问题 : 将 复杂问题 拆解成 一系列更简单的步骤 ; 逐步处理这些步骤 , 不直接生成最终结果 ;
  • 逐步处理 : 逐步处理拆解出的步骤 , 输出中间推理步骤 , 与人类解决问题的思考过程相似 ;
  • 输出结果 : 经过多个步骤的生成 , 最终输出结果 ;

思维链 , 将 思考过程 完整的 展示出来 , 可以使用户了解问题的解决步骤 , 如果输出的结果不满意 , 可以针对有问题的步骤进行干预约束 ;

3、启用思维链的提示词指令

在提示词的末尾 , 追加

代码语言:javascript
复制
analyze the task step by step

或 中文

代码语言:javascript
复制
逐步分析任务

可以 激活思维链 , GPT 会给出思维过程 , 如何拆解问题 , 以及每个问题如何解决的 ;

4、思维链原理

使用了 思维链 指令后 , 就会触发 GPT 模型 将问题拆解出更详细的步骤 ;

每个步骤 都是下一个步骤的 " 上文 " ;

生成的 " 上文 " 越多 , 下文就 " 越准确 " ;

即使下文不准确 , 我们也可以一目了然的看出在哪个步骤开始偏离正确答案 , 方便下一轮的提示词约束该步骤生成正确的答案 ;

GPT 模型 生成的内容越多 , 得到的结果越准确 ;

5、思维链示例

计算一个算术运算题 , 在 ChatGPT 中输入如下提示词 :

代码语言:javascript
复制
计算 24÷3+5×2 的值

得到下面的结果 :

这个数学表达式可以按照先乘除后加减的原则来计算。所以,先计算乘法和除法,再计算加法和减法。

24 \div 3 + 5 \times 2

首先计算除法:

24 \div 3 = 8

然后计算乘法:

5 \times 2 = 10

最后计算加法:

8 + 10 = 18

因此,

24 \div 3 + 5 \times 2

的值为 18。

上述计算过程中 , 不仅给出了结果 , 还给出了计算过程 , 以及 大模型 是如何拆解问题的 ;

如果计算结果不对 , 是中间的某个步骤出现了问题 , 则可以使用提示词干预其中的某个步骤 , 让 GPT 重新生成结果 ;

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-06-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、提示工程 Prompt Engineering 简介
    • 1、通用人工智能 和 专用人工智能
      • 2、Prompt 提示词
        • 3、提示工程
          • 4、掌握 提示工程 的优势
            • 5、提示工程目的
            • 二、提示词组成、迭代、调优及示例
              • 1、提示词的组成
                • 2、提示词的迭代、调优
                  • 3、提示词基础示例
                    • 4、提示词 " 指定输出格式 " 示例
                      • 5、提示词 " 上下文语境 " 示例 - 多轮对话解决问题
                        • 6、提示词 " 增加约束 " 示例
                        • 三、思维链 Chain of Thought
                          • 1、思维链简介
                            • 2、思维链推理过程
                              • 3、启用思维链的提示词指令
                                • 4、思维链原理
                                  • 5、思维链示例
                                  相关产品与服务
                                  对话机器人
                                  对话机器人(Conversation Robot,ICR),是基于人工智能技术,面向企业场景的 AI 服务,可应用于智能客服、服务咨询、业务办理等场景。本产品旨在帮助企业快速构建,满足自身业务诉求的对话机器人,从而减少企业人力成本或解决服务不及时问题。用户可通过对话机器人用户端引擎,实现高准确率的对话服务。
                                  领券
                                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档