Prompt Engineering | 对话聊天prompt

😄 使用LLM来搭建一个定制的聊天机器人,只需要很少的工作量。
⭐ 本文将讲解如何利用聊天格式与个性化或专门针对特兹那个任务或行为的聊天机器人进行多伦对话。

文章目录

  • 1、提供对话的早期部分,引导模型继续聊天
  • 2、示例:构建一个“订餐机器人”

⭐ 下面以openai的chatgpt为例讲解,通过openai的接口调用自己的chatgpt账号

import openai
openai.api_key = 'sk-xxxxx' # 填自己的api key

接下来,我们将定义两个辅助函数。第一个是单轮的,我们将prompt放入看起来像是某种用户消息的东西中。另一个则传入一个消息列表。这些消息可以来自不同的角色,我们会描述一下这些角色。

def get_completion(prompt, model="gpt-3.5-turbo"):messages = [{"role": "user", "content": prompt}]response = openai.ChatCompletion.create(model=model,messages=messages,temperature=0, # 控制模型输出的随机程度)return response.choices[0].message["content"]def get_completion_from_messages(messages, model="gpt-3.5-turbo", temperature=0):response = openai.ChatCompletion.create(model=model,messages=messages,temperature=temperature, # 控制模型输出的随机程度)return response.choices[0].message["content"]

1、提供对话的早期部分,引导模型继续聊天

每次与语言模型的交互都是一个独立的交互,这意味着我们必须提供所有相关的消息,以便模型在当前对话中进行引用。如果想让模型引用或 “记住” 对话的早期部分,则必须在模型的输入中提供早期的交流。我们将其称为上下文,如下所示,我们给模型输入了早期的对话内容,并考查他是否记住,模型也正确的做出了回应。

  • 第一条消息是一个系统消息,它提供了一个总体的指示,然后在这个消息之后,我们有用户和助手之间的交替。如果你曾经使用过 ChatGPT 网页界面,那么你的消息是用户消息,而 ChatGPT 的消息是助手消息。系统消息则有助于设置助手的行为和角色,并作为对话的高级指示。你可以想象它在助手的耳边低语,引导它的回应,而用户不会注意到系统消息。
    在这里插入图片描述

因此,作为用户,如果你曾经使用过 ChatGPT,你可能不知道 ChatGPT 的系统消息是什么,这是有意为之的。系统消息的好处是为开发者提供了一种方法,在不让请求本身成为对话的一部分的情况下,引导助手并指导其回应。

messages =  [  
{'role':'system', 'content':'你是个友好的聊天机器人。'},
{'role':'user', 'content':'Hi, 我是Isa'},
{'role':'assistant', 'content': "Hi Isa! 很高兴认识你。今天有什么可以帮到你的吗?"},
{'role':'user', 'content':'是的,你可以提醒我, 我的名字是什么?'}  ]
response = get_completion_from_messages(messages, temperature=1)
print(response)输出:
当然可以!您的名字是Isa。

类似地,在chatgpt中我们可以这样问:
在这里插入图片描述

2、示例:构建一个“订餐机器人”

任务:我们需要它自动收集用户信息,接受比萨饼店的订单。

因为是聊天机器人,所以需要保存每次的聊天记录(上下文),方便以后再次聊天时回顾之前的记录来继续聊天。下面我们用列表context来记录每次的聊天内容,新的聊天内容会不断append到context中。上下文逐渐变长。这样,模型就有了需要的信息来确定下一步要做什么。

初始的上下文包含了包含菜单的系统消息。请注意,上下文会随着时间的推移而不断增长。

context = [{'role':'system', 'content':"""
你是订餐机器人,为披萨餐厅自动收集订单信息。
你要首先问候顾客。然后等待用户回复收集订单信息。收集完信息需确认顾客是否还需要添加其他内容。
最后需要询问是否自取或外送,如果是外送,你要询问地址。
最后告诉顾客订单总金额,并送上祝福。请确保明确所有选项、附加项和尺寸,以便从菜单中识别出该项唯一的内容。
你的回应应该以简短、非常随意和友好的风格呈现。菜单包括:菜品:
意式辣香肠披萨(大、中、小) 12.95、10.00、7.00
芝士披萨(大、中、小) 10.95、9.25、6.50
茄子披萨(大、中、小) 11.95、9.75、6.75
薯条(大、小) 4.50、3.50
希腊沙拉 7.25配料:
奶酪 2.00
蘑菇 1.50
香肠 3.00
加拿大熏肉 3.50
AI酱 1.50
辣椒 1.00饮料:
可乐(大、中、小) 3.00、2.00、1.00
雪碧(大、中、小) 3.00、2.00、1.00
瓶装水 5.00
"""} ]  # accumulate messages

现在我们可以要求模型创建一个 JSON 摘要发送给订单系统。
所以我们追加另一个系统消息,它是另一条prompt,我们说创建一个刚刚订单的 JSON 摘要,列出每个项目的价格,字段应包括1)披萨,包括尺寸,2)配料列表,3)饮料列表,4)辅菜列表,包括尺寸,最后是总价格。也可以在这里使用用户消息,不一定是系统消息。
请注意,这里我们使用了一个较低的temperature,因为对于这些类型的任务,我们希望输出相对可预测。

messages.append(
{'role':'system', 'content':'创建上一个食品订单的 json 摘要。\
逐项列出每件商品的价格,字段应该是 1) 披萨,包括大小 2) 配料列表 3) 饮料列表,包括大小 4) 配菜列表包括大小 5) 总价'},    
)

输出:

response = get_completion_from_messages(messages, temperature=0)
print(response)以下是上一个食品订单的 JSON 摘要:```
{"order": {"pizza": {"type": "芝士披萨","size": "大","price": 10.95},"toppings": [{"name": "蘑菇","price": 1.5}],"drinks": [{"name": "雪碧","size": "大","price": 3},{"name": "雪碧","size": "大","price": 3}],.........}
}
```

以上,便建立了自己的订餐聊天机器人(你也可以加个界面封装一下,这样看起来像是背后一个专人在服务你哈哈哈)。请随意自定义并修改系统消息,以更改聊天机器人的行为,并使其扮演不同的角色和拥有不同的知识。







参考链接:
[1] OpenAI
[2] 吴恩达老师的:DeepLearning.AI
[3] DataWhale
[4] https://learn.deeplearning.ai/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/10363.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

建议收藏chatGPT说的Ubuntu常用命令合集

写在前面 这个是当下最流行最时髦的AI神器chatGPT和我一起合作写的一篇通用技术文章,请读者笑纳! chatGPT说 咚咚咚,咚咚咚,嘿嘿;咚咚咚,咚咚咚,嘿嘿;AI等一会,我来发答案…

有点慌了!ChatGPT 可能影响 80% 工作岗位!

这是「进击的Coder」的第 818 篇技术分享 作者:机器之心编辑部 来源:机器之心报道 “ 阅读本文大概需要 9 分钟。 ” ChatGPT 的影响涵盖所有收入阶层,且高收入工作可能面临更大的风险。 ChatGPT 来了,失业还会远吗?前…

三分钟搭建一个自己的 ChatGPT (从开发到上线)

原文链接:https://icloudnative.io/posts/build-chatgpt-web-using-laf/ 视频教程:https://www.bilibili.com/video/BV1cx4y1K7B2/ 前提条件:你需要准备一个 ChatGPT 账号并且生成一个 API Key (这一步可以问 Google ) 云函数教学 首先需要登…

我的ChatGPT学习笔记001

大家好啊,我是了不起! 前一段时间ChatGPT突然火爆,大佬们纷纷下场。我也跟着努力学习,做了一些笔记。 下面将陆续放出笔记,共享给小伙伴们! 笔记一:ChatGPT的基础知识简介 1)什么是…

【微信小程序】2022最新用户信息授权方式

先看一波调整公告 用户信息授权方式变更为”头像昵称填写“ 最新授权方式 可自定义 也可使用微信信息 代码&#xff1a; <button class"avatar-wrapper" open-type"chooseAvatar" bind:chooseavatar"onChooseAvatar"><image class&qu…

1.下架已上线的小程序;2.设置不允许被用户搜索到

下架已上线的小程序&#xff1a; 登录微信开发者后台【设置】-【功能设置】-【暂停服务设置】-【暂停服务】&#xff0c;如图 设置小程序不允许被用户搜索到&#xff1a; 登录微信开发者后台【设置】-【功能设置】-【隐私设置】-【关闭】&#xff0c;如图 操作过程中遇到的问…

chatgpt赋能python:模拟手机App登陆:Python实现

模拟手机App登陆&#xff1a;Python实现 在移动互联网时代&#xff0c;手机App已经成为人们日常生活不可或缺的一部分。而对于开发人员来说&#xff0c;模拟App登陆是一项基本的技能要求。本文将介绍如何使用Python实现模拟手机App登陆&#xff0c;并进一步探讨其中的优势和应…

iOS-汤姆猫项目总结

功能分析 点击对应的按钮后&#xff0c;让汤姆猫展现对应的动画 步骤分析 1、搭建UI界面 2、监听按钮点击 3、根据点击的按钮执行对应的动画 知识点&#xff1a; 1、UIImageView帧动画的使用 2、UIImage的2种加载方式 3、重复代码的封装抽取 4、文档注释的写法 UIIm…

一夜爆火的现象级产品ChatGPT,是AI突破还是昙花乍现?

导语 | 编写代码、翻译小说、参加考试……2022 年末&#xff0c;人工智能聊天机器人 ChatGPT 风靡全网。自 2016 年 AlphaGo 击败围棋世界冠军李世石后&#xff0c;ChatGPT 再次掀起了人工智能发展应用的高潮。它将会给我们带来哪些影响&#xff1f;人工智能的颠覆性应用是否即…

ChatGPT泄露用户聊天记录标题;Adobe加入AIGC战局;阿里大模型前带头人杨红霞加盟字节跳动丨每日大事件...

‍ ‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 企业动态 诸葛智能推出“诸葛CDP 2.0”等三大产品升级 3月22日&#xff0c;容联云旗下场景化数据智能服务商“诸葛智能”举办2023春季发布会&#xff0c;推出客户数据管理平台“诸葛CDP 2.0”、一站式用户行为分析平台“…

刚问世的ChatGPT聊天机器人如何带你把握蔚来Android车载面试

2023年初&#xff0c;一款名为ChatGTP的AI聊天机器人引起了科技圈的骚动。 美国OpenAI公司2022年11月30日正式发布ChatGPT&#xff0c;上线仅5天&#xff0c;ChatGPT的注册用户数突破100万&#xff1b;今年1月末&#xff0c;ChatGPT的月活用户数破亿&#xff0c;就此成为史上用…

2023最新抖音取图小程序源码分享,带会员功能对接支付部署教程

文章目录 系统简介一&#xff1a;代码分享二、上线教程总结 前言 小程序平台&#xff1a;抖音 小程序名称&#xff1a;云云壁纸 版本号&#xff1a;3.0 基础功能&#xff1a;壁纸表情包头像封面图上传、达人入驻、达人管理、广告配置、达人分销、团队管理、数据图表&#xf…

抖音小程序实践四:实现小程序分享

有时候我们要把一个小程序分享给别人&#xff0c;去看套餐、买东西之类的&#xff0c;是一个很常见的功能&#xff0c;但是在接入抖音小程序的时候&#xff0c;初始化右上角三个点并没有分享的入口&#xff0c;那看来不是要申请&#xff0c;就是有别的开发的口子了。下面我们一…

原创精美微信小程序UI界面——抖音版的“知乎”来啦

大家好&#xff0c;我又回来啦>3< 最近其实没做成什么事情&#xff0c;去了一个本地的公司实习了三个月&#xff0c;做的是全栈的工作&#xff0c;对于未来的工作有了一点小小的感触&#xff0c;也增进了一些技术方面的知识。薪资是比去年找的实习涨了1.5倍&#xff0c;不…

微信小程序——仿抖音短视频切换效果

一直以为抖音短视频切换假如用小程序做的话应该是比较简单的&#xff0c;直接用swiper实现就好&#xff0c;但在实际写的过程中才发现没那么简单&#xff0c;要控制的逻辑还是挺多的。 还是先看效果 体验路径 自定义组件系列》》仿抖音短视频切换 代码逻辑 直接调用自定义…

基于Uni-APP多端「h5+小程序+App」高仿抖音小视频|直播|聊天实例

uni-ttLive 基于uni-appuView-ui跨端开发短视频直播聊天实例。 全新研发的一款多端仿制抖音短视频直播聊天项目&#xff0c;基于uniAppVue.jsVuexNvueuViewUIuaPopup等技术开发而成。支持播放/暂停/上下滑动切换、全屏沉浸式体验。 功能特点 导航条底部菜单透明式全屏模式流畅…

最新抖音娱乐测评小程序源码 Thinkphp后端 抖音引流小程序

最新抖音娱乐测评小程序源码 thinkphp后端 抖音引流小程序 附搭建教程 测试环境 NginxPHP7.0MySQL5.6 网站运行目录设置为 /web 数据库配置文件 \source\application\database.php 后台登录地址 http://你的域名/index.php?s/admin/passport/login

谷歌广告账号注册很难?请收下这篇谷歌账号注册指南

做跨境电商这一行业的&#xff0c;相信都会去了解谷歌广告账户。Google广告是Google的广告平台&#xff0c;一般在用户使用引擎搜索的时候推送。为什么大家都要去开通Google广告账户呢&#xff1f;因为Google广告能够快速提升品牌曝光度&#xff0c;特别是当用户使用谷歌浏览器…

谷歌登录登录

一、下载 https://pan.tencent.com/web/share/5b2b9738edeee25803d8ec22ad8967c6 二、打开谷歌 点点点 -- > 更多工具 -- > 扩展程序 点击已解压的扩展程序&#xff0c;添加下载的文件夹 三、然后就能打开啦