文心一言-千帆大模型平台
  1. Prompt 工程使用技巧
文心一言-千帆大模型平台
  • 体验中心
  • 常见问题
  • 大模型技术测试服务协议
  • 账号与权限管理
    • 账号创建与权限分配
    • 通过子账户隔离实现账单隔离
  • 产品简介
    • 什么是百度智能云千帆大模型平台
    • 百度智能云千帆大模型平台产品优势
    • 百度智能云千帆大模型平台常用概念
  • 新手指南
    • SFT调优快速手册
    • SFT最佳实践
    • 平台使用快速开始
    • 导入并部署第三方模型
      • 快速导入并部署第三方模型
      • SQLCoder自定义模型导入·详细操作
  • 模型广场
    • 查看与管理预置模型
    • 预置调用免费模型列表
  • 我的模型
    • 创建我的模型
    • 查看与管理我的模型
  • Prompt 工程
    • 什么 Prompt 工程
    • Prompt 模板
    • Prompt 优化
    • Prompt 工程使用技巧
      • Prompt 的使用技巧
      • 基础的 Basic Prompt Framework
      • 丰富的 CRISPE Prompt Framework
      • 轻量化的 Few-shot Prompt
  • 模型服务
    • 应用接入
    • 在线服务
    • 调用统计
  • 模型调优
    • 模型精调
      • Post-pretrain
        • 什么是 Post-pretrain
        • 创建 Post-pretrain 任务
        • 查看与管理 Post-pretrain
      • SFT
        • 创建 SFT 任务
        • 查看与管理 SFT 运行
      • RLHF
        • 什么是 RLHF 训练
        • 创建奖励模型训练任务
        • 查看与管理奖励模型训练运行
        • 创建强化学习训练任务
        • 查看与管理强化学习训练运行
    • 模型评估
      • 创建模型评估任务
      • 查看与管理模型评估任务
    • 模型压缩
      • 创建模型压缩任务
      • 查看模型压缩任务
  • 数据管理
    • 数据回流
    • 数据集对应关系说明
    • 数据集管理
      • 创建数据集
      • 数据分析
      • 导入文本对话数据
      • 导入泛文本无标注数据
      • 导入 query 问题集数据
      • 导入文生图数据
      • 管理数据集版本
      • 导出数据
      • 数据集的其他操作
    • 数据标注
      • 在线标注
      • 众测标注
    • 数据处理
      • 数据清洗
      • 数据增强
    • 知识库
      • 什么是千帆大模型知识库
      • 知识库管理
      • 命中测试
  • 系统配置
    • 计算资源
    • 计费管理
    • 插件编排
      • 什么是插件应用
      • 插件编排使用说明
      • 应用创建
        • 对话场景类应用
        • 生成场景类应用
      • 插件
        • 插件列表
        • 自定义插件
        • 插件开发者文档
  • API 鉴权及调用
    • API 介绍
    • API 列表
    • API 调用指南
      • API 调用流程
      • 错误码
      • API 在线调试
    • 鉴权认证
      • 鉴权介绍
      • 使用网页调试工具获取 access_token
      • 获取 access_token
    • 对话 Chat
      • Llama-2
        • Llama-2-7b-chat
        • Llama-2-13b-chat
        • Llama-2-70b-chat
      • ERNIE-Bot 4.0
      • ERNIE-Bot
      • ERNIE-Bot-turbo
      • BLOOMZ-7B
      • Qianfan-BLOOMZ-7B-compressed
      • Mistral-7B-Instruct
      • Qianfan-Chinese-Llama-2-7B
      • Qianfan-Chinese-Llama-2-13B
      • Linly-Chinese-LLaMA-2-7B
      • Linly-Chinese-LLaMA-2-13B
      • ChatGLM2-6B
      • ChatGLM2-6B-32K
      • ChatGLM2-6B-INT4
      • Baichuan2-13B-Chat
      • XVERSE-13B-Chat
      • Falcon-7B
      • Falcon-40B-Instruct
      • AquilaChat-7B
      • RWKV-4-World
      • RWKV-4-pile-14B
      • RWKV-Raven-14B
      • OpenLLaMA-7B
      • Dolly-12B
      • MPT-7B-Instruct
      • MPT-30B-instruct
      • OA-Pythia-12B-SFT-4
      • Falcon-180B-Chat
      • RWKV-5-World
      • Flan-UL2
    • 续写 Completions
      • SQLCoder-7B
      • CodeLlama-7b-Instruct
      • AquilaCode-multi
      • Cerebras-GPT-13B
      • Pythia-12B
      • GPT-J-6B
      • GPT-NeoX-20B
      • GPT4All-J
      • StarCoder
      • StableLM-Alpha -7B
      • Pythia-6.9B
      • Cerebras-GPT-6.7B
    • 向量 Embeddings
      • Embedding-V1
      • bge-large-zh
      • bge-large-en
    • 图像 Images
      • Stable-Diffusion-XL
    • 自定义模型调用 API
      • 自定义模型调用 API
      • 续写模式
    • 模型服务
      • 创建服务
      • 查询服务详情
    • 模型管理
      • 获取模型版本详情
      • 获取模型详情
      • 训练任务发布为模型
    • 模型调优
      • 创建训练任务
      • 创建任务运行
      • 获取任务运行详情
      • 停止任务运行
    • 数据管理
      • 创建数据集
      • 发起数据集发布任务
      • 发起数据集导入任务
      • 获取数据集详情
      • 获取数据集状态详情
      • 发起数据集导出任务
      • 删除数据集
      • 获取数据集导出记录
      • 获取数据集导入错误详情
    • Prompt 工程
      • Prompt 模板
    • 插件应用
      • 知识库
      • 智慧图问
      • 天气
  • SDK 参考
    • 千帆 SDK 介绍
    • SDK 安装及使用流程
    • 对话 Chat
    • 续写 Completions
    • 向量 Embeddings
    • 模型服务
      • 创建服务
      • 查询服务详情
    • 模型管理
      • 获取模型详情
      • 获取模型版本详情
      • 训练任务发布为模型
    • 模型调优
      • 创建训练任务
      • 创建任务运行
      • 获取任务运行详情
      • 停止任务运行
    • 数据管理
      • 创建数据集
      • 发起数据集发布任务
      • 发起数据集导入任务
      • 获取数据集详情
      • 获取数据集状态详情
      • 发起数据集导出任务
      • 删除数据集
      • 获取数据集导出记录
      • 获取数据集导入错误详情
    • 插件应用
      • 知识库
      • 智能图问
      • 天气
  • 价格说明
    • 千帆大模型平台价格文档
  1. Prompt 工程使用技巧

Prompt 的使用技巧

为什么要学习如何使用Prompt?#

在生成式大模型推理场景下,Prompt的使用方式对于模型理解和生成文本的质量具有重要的意义。Prompt是一种文本模板,其中包含一些占位符,这些占位符将在运行时由实际值替换。在自然语言生成(NLG)任务中,更优质、更准确的Prompt能够帮助模型生成更具连贯性和准确性的文本
然而,不同的Prompt设计方法可能会产生不同的结果。如果Prompt设计不当,可能会导致模型生成的质量下降,甚至产生不准确或错误的文本。因此,对于Prompt的设计和使用方式进行优化和改进是非常重要的。通过优化和改进Prompt的设计方法,可以提高模型的针对性和准确度,从而生成更高质量的文本
例如,我们让ERNIE-Bot写一首诗,就会返回一个比较泛化的结果
image.png
但如果给定的主题与格式明确,ERNIE-Bot就会返回一个更符合预期的诗文
image.png

Prompt使用的基本原则#

①正确的语法、用词以及标点#

在Prompt中的实体对象存在多种谐音,而我们在拼写错的情况下,往往会获得错误的返回结果。同理,在语法错误以及标点错误的情况下,可能也会得到不符合预期的返回结果。因此,我们在构建Prompt时,需要保证语法、用词以及标点的准确性来引导模型生成更准确的内容
image.png

②避免歧义,简洁易懂#

生成式大模型很多时候也和人类的理解能力相似,需要输入一些更明确的指示内容助于理解并执行内容生成,意图不明的模糊指令会让模型生成内容与预期有些偏离,甚至影响原本Prompt指令的生成内容。如下例中,让大模型生成一个短点的故事内容,在结构上可能进行了缩短,但生成内容有些偏离“故事”本身;而明确让大模型生成一个故事并规定字数限制后,可见的表现变得更好了
image.png

③更完整的信息#

在针对一些实体对象进行评价、分析等场景时,大模型训练时不含这类实体对象的语料,就像我们无法对不认识的人产生评价一样,大模型也无法理解并生成对应的内容。因此,在针对特定对象以及特定场景进行内容生成时,需要补充更完整的背景信息
image.png

Prompt使用进阶技巧#

①设定身份视角#

在一些对话场景、创作场景下,不同的身份视角往往会基于Prompt具体的指令内容给出不同角度的生成内容,例如在法律咨询的场景,我们期待大模型基于律师的视角给与建议;在学生考前焦虑的提问对话场景下,可以让大模型基于老师、家长不同的视角给与建议与安抚
image.png

②提供生成示例#

提供更多明确的示例内容与格式,可以明确大模型生成的内容在可控范围内,是在很多通用场景下提升大模型生成内容质量的有效手段
image.png

③限定Prompt指令范围(To Do and Not To Do)#

在一些需要明确返回内容范围的场景,例如需要通过返回内容进行检索等,给出明确的指令输入模型,能够提升返回内容的准确度,来满足场景诉求。同时,这样限定生成内容范围的Prompt在某种程度上也减少了泛化内容的生成,节约了网络传输与资源成本
image.png

④思维链条#

在一些逻辑推理、数学计算场景下,即便加上示例可能也很难获取到准确的结果,大模型也需要一步一步引导来学习。此时,我们加上逻辑推理的步骤,大模型就可以正确推理出符合预期的结果。
以下是Few-shot Prompting的场景,在补充完成计算逻辑后,ERNIE Bot即可正确计算出结果
image.png
image.png
上一页
Prompt 优化
下一页
基础的 Basic Prompt Framework
Built with