修改第四、五章,添加第八章

This commit is contained in:
LiuWH
2023-07-23 15:58:41 +08:00
parent 7df5669864
commit ca879c4429
3 changed files with 54 additions and 19 deletions

File diff suppressed because one or more lines are too long

View File

@ -244,7 +244,7 @@
"id": "af474353",
"metadata": {},
"source": [
"下一步,我们将深入挖掘客户评论中的丰富信息。信息提取是自然语言处理NLP的重要组成部分它帮助我们从文本中抽取特定的、我们关心的信息。在接下来的示例中我们将要求模型识别两个关键元素购买的商品和商品的制造商。\n",
"信息提取是自然语言处理NLP的重要组成部分它帮助我们从文本中抽取特定的、我们关心的信息。我们将深入挖掘客户评论中的丰富信息。在接下来的示例中,我们将要求模型识别两个关键元素:购买的商品和商品的制造商。\n",
"\n",
"想象一下,如果你正在尝试分析一个在线电商网站上的众多评论,了解评论中提到的商品是什么、由谁制造,以及相关的积极或消极情绪,将极大地帮助你追踪特定商品或制造商在用户心中的情感趋势。\n",
"\n",
@ -532,7 +532,7 @@
"id": "76ccd189",
"metadata": {},
"source": [
"这就是我们关于推断的全面介绍。在短短几分钟内,我们已经能够建立多个用于文本推理的系统,这是以前需要机器学习专家数天甚至数周时间才能完成的任务。这一变化无疑是令人兴奋的,因为无论你是经验丰富的机器学习开发者,还是刚入门的新手,都能利用输入 Prompt 快速建立并启动复杂的自然语言处理任务。"
"这就是我们关于推断的全面介绍。在短短几分钟内,我们已经能够建立多个用于文本推理的系统,这是以前需要机器学习专家数天甚至数周时间才能完成的任务。这一变化无疑是令人兴奋的,因为无论你是经验丰富的机器学习开发者,还是刚入门的新手,都能利用输入 Prompt 快速开始复杂的自然语言处理任务。"
]
},
{

View File

@ -15,8 +15,7 @@
"id": "f0bdc2c9",
"metadata": {},
"source": [
"\n",
"使用一个大型语言模型的一个令人兴奋的事情是,我们可以用它来构建一个定制的聊天机器人 (Chatbot) ,只需要很少的工作量。在这一节中,我们将探索如何利用聊天的方式,与个性化(或专门针对特定任务或行为的)聊天机器人进行扩展对话。"
"大型语言模型带给我们的激动人心的一种可能性是我们可以通过它构建定制的聊天机器人Chatbot而且只需很少的工作量。在这一章节的探索中我们将带你了解如何利用会话形式与具有个性化特性或专门为特定任务或行为设计的聊天机器人进行深度对话。"
]
},
{
@ -24,7 +23,7 @@
"id": "e6fae355",
"metadata": {},
"source": [
"像 ChatGPT 这样的聊天模型实际上是组装成以一系列消息作为输入,并返回一个模型生成的消息作为输出的。这种聊天格式原本的设计目标是简便多轮对话,但我们通过之前的学习可以知道,它对于不会涉及任何对话的**单轮任务**也同样有用。\n"
"像 ChatGPT 这样的聊天模型实际上是组装成以一系列消息作为输入,并返回一个模型生成的消息作为输出的。这种聊天格式原本的设计目标是简便多轮对话,但我们通过之前的学习可以知道,它对于不会涉及任何对话的**单轮任务**也同样有用。"
]
},
{
@ -93,9 +92,18 @@
"id": "e105c1b4",
"metadata": {},
"source": [
"### 1.1 讲笑话\n",
"\n",
"系统消息说,你是一个说话像莎士比亚的助手。这是我们向助手描述**它应该如何表现的方式**。然后,第一个用户消息是*给我讲个笑话*。接下来以助手身份给出回复是,*为什么鸡会过马路?* 最后发送用户消息是*我不知道*。"
"### 1.1 讲笑话"
]
},
{
"cell_type": "markdown",
"id": "a0b37933",
"metadata": {},
"source": [
"我们通过系统消息来定义:“你是一个说话像莎士比亚的助手。”这是我们向助手描述**它应该如何表现的方式**。\n",
"然后,第一个用户消息是*给我讲个笑话*。\n",
"接下来以助手身份给出回复是,*为什么鸡会过马路?* \n",
"最后发送用户消息是*我不知道*。"
]
},
{
@ -182,7 +190,9 @@
"id": "5f76bedb",
"metadata": {},
"source": [
"让我们看另一个例子。助手的消息是*你是一个友好的聊天机器人*,第一个用户消息*嗨我叫Isa*。我们想要得到第一个用户消息。"
"让我们看另一个例子。系统消息来定义:“*你是一个友好的聊天机器人*,第一个用户消息:“*嗨我叫Isa*。”\n",
"\n",
"我们想要得到第一个用户消息的回复。"
]
},
{
@ -221,7 +231,7 @@
"id": "1e9f96ba",
"metadata": {},
"source": [
"让我们再试一个例子。系统消息是,你是一个友好的聊天机器人,第一个用户消息是,是的,你能提醒我我的名字是什么吗?"
"让我们再试一个例子。系统消息来定义:“你是一个友好的聊天机器人,第一个用户消息:“是的,你能提醒我我的名字是什么吗?"
]
},
{
@ -299,12 +309,30 @@
"id": "bBg_MpXeYnTq"
},
"source": [
"## 三、订餐机器人\n",
"\n",
"现在,我们构建一个 “订餐机器人”,我们需要它自动收集用户信息,接受比萨饼店的订单。\n",
"\n",
"### 3.1 构建机器人\n",
"\n",
"## 三、订餐机器人"
]
},
{
"cell_type": "markdown",
"id": "8f0f678c",
"metadata": {},
"source": [
"在这一新的章节中,我们将探索如何构建一个 “点餐助手机器人”。这个机器人将被设计为自动收集用户信息,并接收来自比萨饼店的订单。让我们开始这个有趣的项目,深入理解它如何帮助简化日常的订餐流程。"
]
},
{
"cell_type": "markdown",
"id": "4edeede6",
"metadata": {},
"source": [
"### 3.1 构建机器人"
]
},
{
"cell_type": "markdown",
"id": "3357a655",
"metadata": {},
"source": [
"下面这个函数将收集我们的用户消息,以便我们可以避免像刚才一样手动输入。这个函数将从我们下面构建的用户界面中收集 Prompt ,然后将其附加到一个名为上下文( ```context``` )的列表中,并在每次调用模型时使用该上下文。模型的响应也会添加到上下文中,所以用户消息和模型消息都被添加到上下文中,上下文逐渐变长。这样,模型就有了需要的信息来确定下一步要做什么。"
]
},
@ -434,7 +462,14 @@
"source": [
"此处我们另外要求模型创建一个 JSON 摘要,方便我们发送给订单系统。\n",
"\n",
"因此我们需要在上下文的基础上追加另一个系统消息,作为另一条指示 (instruction) 。我们说*创建一个刚刚订单的 JSON 摘要,列出每个项目的价格,字段应包括 1披萨包括尺寸2配料列表3饮料列表4辅菜列表包括尺寸最后是总价格*。此处也可以定义为用户消息,不一定是系统消息。\n",
"因此我们需要在上下文的基础上追加另一个系统消息,作为另一条指示 (instruction) 。我们说创建一个刚刚订单的 JSON 摘要,列出每个项目的价格,字段应包括\n",
"1. 披萨,包括尺寸\n",
"2. 配料列表\n",
"3. 饮料列表\n",
"4. 辅菜列表,包括尺寸,\n",
"5. 总价格。\n",
"\n",
"此处也可以定义为用户消息,不一定是系统消息。\n",
"\n",
"请注意,这里我们使用了一个较低的温度,因为对于这些类型的任务,我们希望输出相对可预测。"
]
@ -510,7 +545,7 @@
"id": "ef17c2b2",
"metadata": {},
"source": [
"现在,我们已经建了自己的订餐聊天机器人。请随意自定义并修改系统消息,以更改聊天机器人的行为,并使其扮演不同的角色,拥有不同的知识。"
"我们已经成功创建了自己的订餐聊天机器人。你可以根据自己的喜好和需求,自由地定制和修改机器人的系统消息,改变它的行为,让它扮演各种各样的角色,赋予它丰富多彩的知识。让我们一起探索聊天机器人的无限可能性吧!"
]
},
{