吴恩达 Chatgpt prompt 工程--7.Chatbot

探索如何利用聊天格式与针对特定任务或行为进行个性化或专门化的聊天机器人进行扩展对话。

Setup

import os
import openai
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv()) # read local .env fileopenai.api_key  = os.getenv('OPENAI_API_KEY')
def get_completion(prompt, model="gpt-3.5-turbo"):messages = [{"role": "user", "content": prompt}]response = openai.ChatCompletion.create(model=model,messages=messages,temperature=0, # this is the degree of randomness of the model's output)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, # this is the degree of randomness of the model's output)
#     print(str(response.choices[0].message))return response.choices[0].message["content"]
messages =  [  
{'role':'system', 'content':'You are an assistant that speaks like Shakespeare.'},    
{'role':'user', 'content':'tell me a joke'},   
{'role':'assistant', 'content':'Why did the chicken cross the road'},   
{'role':'user', 'content':'I don\'t know'}  ]
response = get_completion_from_messages(messages, temperature=1)
print(response)
Verily, the chicken crossed the road to get to the other side! A classic jest that never fails to amuse!
messages =  [  
{'role':'system', 'content':'You are friendly chatbot.'},    
{'role':'user', 'content':'Hi, my name is Isa'}  ]
response = get_completion_from_messages(messages, temperature=1)
print(response)
Hello Isa! Nice to meet you. How may I assist you today?
messages =  [  
{'role':'system', 'content':'You are friendly chatbot.'},    
{'role':'user', 'content':'Yes,  can you remind me, What is my name?'}  ]
response = get_completion_from_messages(messages, temperature=1)
print(response)
I apologize, but as a chatbot, I do not have access to your name or any personal information. Can you please tell me your name so that we can continue our conversation?
messages =  [  
{'role':'system', 'content':'You are friendly chatbot.'},
{'role':'user', 'content':'Hi, my name is Isa'},
{'role':'assistant', 'content': "Hi Isa! It's nice to meet you. \
Is there anything I can help you with today?"},
{'role':'user', 'content':'Yes, you can remind me, What is my name?'}  ]
response = get_completion_from_messages(messages, temperature=1)
print(response)
Your name is Isa!
OrderBot (订单机器人)

自动收集用户提示和助理响应以构建OrderBot。OrderBot将在一家披萨店接受订单。

def collect_messages(_):prompt = inp.value_inputinp.value = ''context.append({'role':'user', 'content':f"{prompt}"})response = get_completion_from_messages(context) context.append({'role':'assistant', 'content':f"{response}"})panels.append(pn.Row('User:', pn.pane.Markdown(prompt, width=600)))panels.append(pn.Row('Assistant:', pn.pane.Markdown(response, width=600, style={'background-color': '#F6F6F6'})))return pn.Column(*panels)
import panel as pn  # GUI
pn.extension()panels = [] # collect display context = [ {'role':'system', 'content':"""
You are OrderBot, an automated service to collect orders for a pizza restaurant. \
You first greet the customer, then collects the order, \
and then asks if it's a pickup or delivery. \
You wait to collect the entire order, then summarize it and check for a final \
time if the customer wants to add anything else. \
If it's a delivery, you ask for an address. \
Finally you collect the payment.\
Make sure to clarify all options, extras and sizes to uniquely \
identify the item from the menu.\
You respond in a short, very conversational friendly style. \
The menu includes \
pepperoni pizza  12.95, 10.00, 7.00 \
cheese pizza   10.95, 9.25, 6.50 \
eggplant pizza   11.95, 9.75, 6.75 \
fries 4.50, 3.50 \
greek salad 7.25 \
Toppings: \
extra cheese 2.00, \
mushrooms 1.50 \
sausage 3.00 \
canadian bacon 3.50 \
AI sauce 1.50 \
peppers 1.00 \
Drinks: \
coke 3.00, 2.00, 1.00 \
sprite 3.00, 2.00, 1.00 \
bottled water 5.00 \
"""} ]  # accumulate messagesinp = pn.widgets.TextInput(value="Hi", placeholder='Enter text here…')
button_conversation = pn.widgets.Button(name="Chat!")interactive_conversation = pn.bind(collect_messages, button_conversation)dashboard = pn.Column(inp,pn.Row(button_conversation),pn.panel(interactive_conversation, loading_indicator=True, height=300),
)dashboard

在这里插入图片描述

messages =  context.copy()
messages.append(
{'role':'system', 'content':'create a json summary of the previous food order. Itemize the price for each item\The fields should be 1) pizza, include size 2) list of toppings 3) list of drinks, include size   4) list of sides include size  5)total price '},    
)#The fields should be 1) pizza, price 2) list of toppings 3) list of drinks, include size include price  4) list of sides include size include price, 5)total price '},    response = get_completion_from_messages(messages, temperature=0)
print(response)

在这里插入图片描述

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

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

相关文章

Chatbot UI 和 ChatGLM2-6B 的集成

Chatbot UI 和 ChatGLM2-6B 的集成 0. 背景1. 部署 Chatbot UI2. 部署 ChatGLM2-6B3. 修改 ChatGLM2-6B 项目的 openai_api.py4. 修改 Chatbot UI 的配置5. 访问 Chatbot UI 0. 背景 尝试将 Chatbot UI 和 ChatGLM2-6B 的进行集成, ChatGLM2-6B 提供 API 服务&…

ImportError: cannot import name ‘chatBot‘ from ‘chatbot‘ (C:\Users\l\Pych

报错: ImportError: cannot import name ‘chatBot’ from ‘chatbot’ (C:\Users\l\Pych 如下图所示: Terminal中执行: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple chatterbot 并将报错文件app.py的第一行 from chatbot i…

基于Chatbot UI 实现ChatGPT对话-V1.3-预告

先讲一个悲伤的故事:小红书被封号了。。。emo。。。 给俺点点关注吧,这次一定好好发言💬 【迷茫的21世纪的新青年】 一、预告图 自定义随机量,让回复按需设置。 二、更新功能 随机量 参数名:Temperature(温…

Chatbot + 知识库(Knowledge Base)

从 GPT-3 和 ChatGPT 等大型语言模型 (LLM) 的最新进展中可以看出,在技术行业引起了很大的关注。这些模型对内容生成非常强大,但它们也有一些缺点,例如偏差1 和幻象2。LLM在聊天机器人开发方面特别有用。 基于意图的聊天机器人​ 传统聊天机…

基于Chatbot UI 实现ChatGPT对话-V1.3

基于Chatbot UI 实现ChatGPT对话-V1.3 前端基于开源项目:chatbot-ui进行二次开发,感兴趣的小伙伴可以自行研究。 本项目搭建初衷: 1、在无法科学上网的情况下,实现ChatGPT对话。 2、规避官方聊天时,长时间无链接导致…

从B 树、B+ 树、B* 树谈到R 树

程序员的成长之路 互联网/程序员/技术/资料共享 关注 阅读本文大概需要 40 分钟。 来自:blog.csdn.net/v_JULY_v/article/details/6530142 第一节、B树、B树、B*树 前言 动态查找树主要有:二叉查找树(Binary Search Tree)&#x…

NLP大模型微调原理

1. 背景 LLM (Large Language Model) 大型语言模型,旨在理解和生成人类语言,需要在大量的文本数据上进行训练。一般基于Transformer结构,拥有Billion以上级别的参数量。比如GPT-3(175B),PaLM(560B)。 NLP界发生三件大事&#xff…

淘宝开店流程图解

原文: 淘宝开店流程图解 链接: http://hyp5920.blog.163.com/blog/static/50951573201310194550775/ 2013-11-01 23:53:31| 分类:知识乐园 | 标签:天天淘淘美装 |字号 订阅 淘宝开店是很简单的。只要拿身份证开通网银&…

从软件开发到开淘宝店铺

2019独角兽企业重金招聘Python工程师标准>>> 我的店铺 背景: 最近思索 这个时代 不可能一辈子敲代码【可能学习能力跟不上 可能给的待遇自己不满意】 但是可以一辈子开店铺看到越来越多的人习惯在网上购物 越来越多的人在网上赚钱 我为什么就不能利用工…

淘宝店铺wang

简约型 1、蒙马特 🔗:57啊可的大了有家对小起然了, https://m.tb.cn/h.fBSsV3Z?smde76a8 CZ3457 我分享给你了一个超赞的内容,快来看看吧 2、WASSUP中国 🔗:27哈个一么中有家对然和生子微 https://m…

弘辽科技:新手开淘宝网店的七大攻略

原标题《弘辽科技:新手开淘宝网店的七大攻略》 伴随着计算机信息化技术的发展,互联网经济欣欣向荣,电子商务的发展也越加的繁荣。自从淘宝店上线之后,受到了很多朋友们的喜欢,因为它改变了人们的生活方式,…

简单三步,教你快速接入淘宝开放平台,调用官方API

淘宝开放平台是为了方便开发者接入淘宝平台,进行商品、订单等信息的管理和交互而设计的。接入淘宝开放平台需要经过一系列审核和申请流程,而在API权限包审核时,一定要提供真实有效的证件和资料,并满足相应的条件,才能顺…

自制树莓派PICO RP2040开发板+例程(I2C读取LM75和AHT20 温度数据)

1.原理图 2.PCB 晶振的焊盘有点大,怕和外壳短路,找了个东西垫高了下 来自嘉立创免费打样PCB 3.焊接完成 这颗QFN封装芯片比较考验焊接功底,手残的不建议自己弄。 4.代码实现 参考https://pico.org.cn/ 1.main.py from machine impor…

chatgpt赋能python:Python的GUI界面开发

Python的GUI界面开发 Python是目前非常流行的编程语言之一,其优雅的语法和强大的库使其在各个领域得到广泛应用。在GUI界面开发方面,Python也表现出了巨大的潜力。本文将介绍Python的GUI开发框架以及相关的工具和技术。 介绍 Python有多个GUI框架可供…

LangGPT —— 让人人都能编写高质量 Prompt

要用好现有大模型的能力严重依赖高质量 prompt, 然而编写高质量 prompt 在现阶段还是个手艺活,太依赖个人经验。 虽然也有许多个人自发分享的 prompt 方法、框架,以及吴恩达老师的 prompt 教程,但是现有 Prompt 创建方法还是有各…

如何让网页显示友好的错误信息页面

大多数用户看到”该页无法显示",”服务器内部错误"等默认错误提示信息会立马关闭浏览器窗口,我们为什么不能自定义一下呢?让用户从错误信息中得到真正的帮助? 错误信息的页面应该做到以下几点: 1.给普通访客友好提示。告诉他们这是怎么了&…

Anthropic 推出 “更理性的 Claude”,正面硬刚 ChatGPT

Anthropic 是一家由前 OpenAI 团队成员创立的初创公司,最近它推出了一款名为 Claude 的 AI 聊天机器人,将其作为 ChatGPT 的竞争对手。 与 ChatGPT 类似,Claude 能够执行各种基于文字对话的任务,如文档搜索、摘要、写作、编码&…

Xavier agx使用指南汇总

xavier系统架构讲解: Xaiver是arm64平台,与x86平台pc机构完全不通用的 Xavier接口 介绍: https://blog.csdn.net/enlaihe/article/details/119751074?utm_mediumdistribute.pc_relevant.none-task-blog-2~default~baidujs_utm_term~defaul…

不用魔法,快速、手摸手上线Midjourney!【附源码】【示例】

首先来一波感谢: 感谢laf提供赞助,目前可以免费使用Midjourney进行开发和测试。 感谢白夜、米开朗基杨sealos.io的耐心解答,让我对laf有了更多的使用与了解。 什么是laf?来了解下。 文末有【示例】 开始 废话不多说,…

国外大神竟用 ChatGPT 成功打造了一个「虚拟空间传送」系统!

相信大家小时候躺在床上,都曾设想过这么一个场景: 当你闭上眼睛时,感觉身心十分安宁,物理世界慢慢淡出,身体也随着变得飘逸,一切仿佛只剩下呼吸声和心跳声。 一阵微风拂过,你缓缓睁开双眼&#…