当前位置: 首页 > news >正文

小白学习:提示工程(什么是prompt)

课程链接
https://www.bilibili.com/video/BV1PX9iYQEry/?spm_id_from=333.337.search-card.all.click

一 什么是提示工程

【提示工程】也叫【指令工程】
prompt就是给大模型发的指令,如“给我讲个笑话”
在这里插入图片描述

懂得提示工程原理会带来什么优势

懂得原理
为什么有的指令是有效的,有的指令是无效的
为什么同样的指令有时候有效,有时候无效
怎么提升指令有效的概率

使用prompt的两种目的

获得具体问题的具体结果
如:php是不是世界上最好的语言
固化一套prompt到程序中,成为系统功能的一部分
如:生成本公司的简报,发送给老板

高质量prompt核心要点

具体,丰富,少歧义

二 prompt的典型构成

如果底层大模型换了,prompt需要重新调优
大模型对prompt开头和结尾的内容更加敏感,注意重要信息放在开头和结尾(lost in middle:how language use long context)

prompt的典型构成

  • 角色:给ai一个最匹配任务的角色,比如:【你是一个软件工程师】(大家玩出来的窍门,可以在开头把问题域收窄,减少二义性)
  • 指令:对任务进行描述
  • 上下文:给出任务相关的背景知识
  • 例子:必要时给出举例
  • 输入:任务的输入信息
  • 输出:输出的格式描述

三 案例展示一个基本的prompt调优过程

某运营商的流量包产品

名称流量价格适用人群
经济套餐1050无限制
畅游套餐100180无限制
无限套餐1000300无限制
校园套餐200150在校生

需求:智能客服根据用户的资讯,推荐最合适的套餐

在这里插入图片描述
在这里插入图片描述

核心思路

1、把输入的自然语言对话,转化为结构化的表示
2、从结构化的表示,生成策略
3、把策略转为自然语言输出

用prompt进行实现

1、先用一个简单的提取用户输入关键词的prompt检测模型是否能理解需求功能,不能理解考虑换模型

你的任务是识别用户对于手机流量套餐产品的选择条件。
每种流量套餐产品包含三个属性:名称、月费价格、月流量
根据用户的输入,识别用户在上述三种属性上的倾向

输入信息:办个100g的套餐
输出:

  • 名称:用户倾向选择100g的套餐
  • 月费价格:用户未提及对月费价格的倾向
  • 月流量:用户倾向选择100g的套餐

2、调整输出格式,方便后续处理

你的任务是识别用户对于手机流量套餐产品的选择条件。
每种流量套餐产品包含三个属性:名称(name)、月费价格(price)、月流量(data)
根据用户的输入,识别用户在上述三种属性上的倾向
以json格式输出
1.name字段取值为string类型,取值必须为以下之一:经济套餐,畅游套餐,无限套餐,校园套餐
2.price字段的取值为一个结构体或者null,包含两个字段:
(1)operator,string类型,取值范围为'<='(小于等于),'>='(大于等于)
(2)value,int类型
3.data字段取值为结构体或者null,包含两个字段
(1)operator,string类型,取值范围为'<='(小于等于),'>='(大于等于)
(2)value,int类型或string类型,string类型只能是’无上限‘
4.用户意图可以按照price或data排序,以sort字段标识,取值为一个结构体
(1)结构体以"ordering"="descend"表示降序排序,以”value“字段存储待排序的字段
(2)结构体以"ordering"="ascend"表示升序排序,以”value“字段存储待排序的字段
输出中只包含用户提及的字段,不要猜测任何用户没有直接提及的字段,不输出值为null的字段

输入信息:我要个最便宜的套餐
输出信息:
{“name”:经济套餐}

小技巧
加No comments,no acknowlengments,可以有效减少模型无效输出
在这里插入图片描述

http://www.dtcms.com/a/62374.html

相关文章:

  • 计算机网络基础:简单渗透
  • sql语句分页的关键字是?
  • 【Linux】线程池
  • 解锁 Ryu API:从 Python 接口到 REST 设计全解析
  • Markdown 语法入门指南(VSCode 版)
  • NVSHMEM介绍、InfiniBand GPUDirect、和NVshmem使用案例说明
  • Scala编程_数组、列表、元组、集合与映射
  • GStreamer —— 2.18、Windows下Qt加载GStreamer库后运行 - “播放教程 6:音频可视化“(附:完整源码)
  • ubuntu挂载新硬盘
  • 5G工业路由器赋能无人码头,港口物流智能化管理
  • 大语言模型-语言模型发展历程
  • 安徽通信施工安全员ABC证备考练习题及答案
  • 项目部署到生产上遇到的网络问题
  • 【鸿蒙开发】MongoDB入门
  • minio数据迁移
  • 利用微软的 HTML 应用程序宿主程序的攻击
  • 【2025】基于python+django的考研自习室预约系统(源码、万字文档、图文修改、调试答疑)
  • 简要分析NETLINK_KOBJECT_UEVENT参数
  • SegMAN模型详解及代码复现
  • 预防痉挛性斜颈的护理方法
  • 华为hcia——Datacom实验指南——以太网帧和IPV4数据包格式(一)
  • DeepSeek-R1 论文阅读总结
  • skywalking部署与应用
  • ES5 vs ES6:JavaScript 演进之路
  • 软件安全分析与应用之综合安全应用 (三)
  • 01_LVGL 对象与盒子模型详解
  • GStreamer —— 2.15、Windows下Qt加载GStreamer库后运行 - “播放教程 1:Playbin 使用“(附:完整源码)
  • Windows批处理脚本入门教程
  • Ceph(2):Ceph简介
  • 自定义Linux网络协议的开发与测试