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

昆明学网站建设购物网站建设网站

昆明学网站建设,购物网站建设网站,做网站需要备几个案,龙岗区是深圳最差的区这篇文章分为三个部分#xff1b;他们是#xff1a; 什么是指令遵循模型#xff1f;如何查找遵循模型的指令构建一个简单的聊天机器人废话不多说直接开始吧#xff01;#xff01;#xff01; 什么是指令遵循模型#xff1f; 语言模型是机器学习模型#xff0c;可以根… 这篇文章分为三个部分他们是 什么是指令遵循模型如何查找遵循模型的指令构建一个简单的聊天机器人废话不多说直接开始吧 什么是指令遵循模型  语言模型是机器学习模型可以根据句子的先验单词来预测单词概率。如果我们向模型询问下一个单词并将其反馈给模型以要求更多则该模型正在进行文本生成。 文本生成模型是许多大型语言模型例如 GPT3背后的思想。然而指令遵循模型是经过微调的文本生成模型可以了解对话和指令。它的运作方式就像两个人之间的对话当一个人说完一句话后另一个人做出相应的反应。 因此文本生成模型可以帮助您用前导句完成一个段落。但是遵循模型的说明可以回答您的问题或根据要求做出回应。 这并不意味着您不能使用文本生成模型来构建聊天机器人。但是您应该通过遵循指令的模型找到质量更好的结果该模型针对此类用途进行了微调。 如何查找遵循模型的指令 现在你可能会发现很多遵循模型的说明。但要构建聊天机器人您需要一些可以轻松使用的东西。 您可以搜索的一个方便的存储库是 Hugging Face。那里的模型应该与 Hugging Face 的 Transformers 库一起使用。这很有帮助因为不同模型的工作方式可能略有不同。让你的 Python 代码支持多种模型是很乏味的但是 Transformer 库统一了它们并隐藏了代码中的所有这些差异。 通常模型后面的指令在模型名称中带有关键字“instruct”。在Hugging Face上用这个关键词搜索可以找到一千多个模型。但并不是所有的都可以工作。您需要检查每个模型并阅读其模型卡以了解该模型的功能以便选择最合适的模型。 选择有几个技术标准 模型接受的训练内容具体来说这意味着模型可以说哪种语言。用小说中的英文文本训练的模型可能对德国物理聊天机器人没有帮助。它使用的深度学习库是什么 Hugging Face 中的模型通常是使用 TensorFlow、PyTorch 和 Flax 构建的。并非所有模型都有适用于所有库的版本。您需要确保安装了特定的库然后才能使用变压器运行模型。模型需要什么资源模型可能非常庞大。通常它需要 GPU 才能运行。但有些模型需要一个非常高端的GPU甚至多个高端GPU。您需要验证您的资源是否可以支持模型推理。 构建一个简单的聊天机器人  让我们构建一个简单的聊天机器人。聊天机器人只是一个在命令行上运行的程序它接受用户的一行文本作为输入并用语言模型生成的一行文本进行响应。 为此任务选择的模型是falcon-7b-instruct。这是一个70亿参数的模型。您可能需要在现代 GPU例如 nVidia RTX 3000 系列上运行因为它被设计为在 bfloat16 浮点上运行以获得最佳性能。也可以选择使用 Google Colab 上的 GPU 资源或 AWS 上合适的 EC2 实例。 要使用 Python 构建聊天机器人如下所示简单 while True:user_input input( )print(response) 该input( )函数接受用户的一行输入。 您将在屏幕上看到您输入的字符串。按 Enter 键后将捕获输入。 剩下的问题是如何获得响应。在 LLM 中您以一系列令牌 ID整数的形式提供输入或提示它将使用另一个令牌 ID 序列进行响应。您应该在与 LLM 交互之前和之后在整数序列和文本字符串之间进行转换。令牌 ID 特定于每个型号也就是说对于相同的整数不同的模型意味着不同的单词。 Hugging Face 库transformers就是为了让这些步骤变得更简单。您只需创建一个管道并指定模型名称和其他一些参数即可。以 tiiuae/falcon-7b-instruct 为模型名称使用 bfloat16 浮点运算并允许模型在可用的情况下使用 GPU 的管道设置如下 from transformers import AutoTokenizer, pipeline import torchmodel tiiuae/falcon-7b-instruct tokenizer AutoTokenizer.from_pretrained(model) pipeline pipeline(text-generation,modelmodel,tokenizertokenizer,torch_dtypetorch.bfloat16,trust_remote_codeTrue,device_mapauto, ) 创建管道是text-generation因为它是模型卡建议您使用该模型的方式。管道transformers是特定任务的一系列步骤。文本生成就是这些任务之一。 要使用管道您需要指定更多参数来生成文本。回想一下该模型不是直接生成文本而是生成标记的概率。您必须根据这些概率确定下一个单词是什么并重复该过程以生成更多单词。通常这个过程会引入一些变化即不选择概率最高的单个标记而是根据概率分布进行采样。 以下是您将如何使用管道 newline_token tokenizer.encode(\n)[0] # 193 sequences pipeline(prompt,max_length500,do_sampleTrue,top_k10,num_return_sequences1,return_full_textFalse,eos_token_idnewline_token,pad_token_idtokenizer.eos_token_id, ) 您在变量中提供了提示prompt以生成输出序列。你可以要求模型给你几个选项但你在这里设置num_return_sequences1所以只有一个。您还让模型使用采样生成文本但仅从 10 个最高概率的标记 ( top_k10) 中进行。返回的序列将不包含您的提示因为您有return_full_textFalse. 最重要的参数是eos_token_idnewline_token 和pad_token_idtokenizer.eos_token_id。这些是为了让模型连续生成文本但仅限于换行符。换行符的标记 ID 是 193从代码片段的第一行获取。 返回的sequences是一个字典列表在本例中为一个字典的列表。每个字典包含标记序列和字符串。我们可以轻松打印字符串如下所示 print(sequences[0][generated_text]) 语言模型是无记忆的。它不会记住您使用过该模型多少次以及之前使用过的提示。每次都是新的因此您需要向模型提供前一个对话框的历史记录。这很容易做到。但由于它是一个遵循指令的模型知道如何处理对话因此您需要记住识别哪个人在提示中说了些什么。我们假设这是Alice和Bob或任何名字之间的对话。您可以在他们在提示中说出的每个句子中添加名称前缀如下所示 Alice: What is relativity? Bob: 然后模型应该生成与对话框匹配的文本。获得模型的响应后将其与 Alice 的另一个文本一起附加到提示中然后再次发送到模型。将所有内容放在一起下面是一个简单的聊天机器人 from transformers import AutoTokenizer, pipeline import torchmodel tiiuae/falcon-7b-instruct tokenizer AutoTokenizer.from_pretrained(model) pipeline pipeline(text-generation,modelmodel,tokenizertokenizer,torch_dtypetorch.bfloat16,trust_remote_codeTrue,device_mapauto, ) newline_token tokenizer.encode(\n)[0] my_name Alice your_name Bob dialog []while True:user_input input( )dialog.append(f{my_name}: {user_input})prompt \n.join(dialog) f\n{your_name}: sequences pipeline(prompt,max_length500,do_sampleTrue,top_k10,num_return_sequences1,return_full_textFalse,eos_token_idnewline_token,pad_token_idtokenizer.eos_token_id,)print(sequences[0][generated_text])dialog.append(Bob: sequences[0][generated_text]) 请注意如何dialog更新变量以跟踪每次迭代中的对话框以及如何使用它prompt为管道的下一次运行设置变量。 当你尝试向聊天机器人询问“什么是相对论”时它听起来并不是很有知识。这就是您需要进行一些即时工程的地方。您可以让Bob成为物理学教授这样他就可以得到关于这个主题的更详细的答案。这就是它的魔力可以通过简单的提示更改来调整响应。您所需要的只是在对话框开始之前添加描述。更新后的代码如下现在看到的dialog是用角色描述初始化的 from transformers import AutoTokenizer, pipeline import torchmodel tiiuae/falcon-7b-instruct tokenizer AutoTokenizer.from_pretrained(model) pipeline pipeline(text-generation,modelmodel,tokenizertokenizer,torch_dtypetorch.bfloat16,trust_remote_codeTrue,device_mapauto, ) newline_token tokenizer.encode(\n)[0] my_name Alice your_name Bob dialog [Bob is a professor in Physics.]while True:user_input input( )dialog.append(f{my_name}: {user_input})prompt \n.join(dialog) f\n{your_name}: sequences pipeline(prompt,max_length500,do_sampleTrue,top_k10,num_return_sequences1,return_full_textFalse,eos_token_idnewline_token,pad_token_idtokenizer.eos_token_id,)print(sequences[0][generated_text])dialog.append(Bob: sequences[0][generated_text]) 如果您没有足够强大的硬件此聊天机器人可能会很慢。您可能看不到确切的结果但以下是上述代码的示例对话框。 What is Newtonian mechanics? Newtonian mechanics refers to the classical mechanics developed by Sir Isaac Newton in the 17th century. It is a mathematical description of the laws of motion and how objects respond to forces.A: What is the law of inertia? How about Lagrangian mechanics? Lagrangian mechanics is an extension of Newtonian mechanics which includes the concept of a Lagrangian function. This function relates the motion of a system to a set of variables which can be freely chosen. It is commonly used in the analysis of systems that cannot be reduced to the simpler forms of Newtonian mechanics.A: Whats the principle of inertia? 聊天机器人将一直运行直到您按 Ctrl-C 停止它或满足max_length500管道输入中的最大长度 ( )。最大长度是您的模型一次可以读取的数量。您的提示不得超过这么多令牌。这个最大长度越高模型运行速度就越慢并且每个模型都对可以设置这个长度的大小有限制。该falcon-7b-instruct模型仅允许您将其设置为 2048。另一方面ChatGPT 是 4096。 您可能还注意到输出质量并不完美。部分是因为您在发送回用户之前没有尝试完善模型的响应部分是因为我们选择的模型是一个包含 70 亿个参数的模型这是其系列中最小的模型。通常使用较大的模型您会看到更好的结果。但这也需要更多的资源来运行。
http://www.dnsts.com.cn/news/57449.html

相关文章:

  • 无锡有什么网站外国知名个人网站
  • 淘宝做网站的店咸宁网站seo
  • 如何做网站赚钱jsp小型网站开发代码
  • 中国做的很好的食品网站自己做网站不用WordPress
  • 电子商务网站规划书石嘴山网站建设
  • 电子商务网站建设及推广方案论文oa系统登录界面
  • 没有备案的网站使用微信坪地网站建设教程
  • 建设网站一定要电脑吗wordpress禁止标题关键词
  • 长沙招工 最新招聘信息廊坊seo软件
  • 做网站练手项目网络营销的方法和手段
  • 佛山cms建站升级wordpress很慢
  • 济南搜索引擎优化网站网站建设工具有哪些
  • 深圳机票网站建设网站及微信建设是否涉及知识产权
  • 网站icp不备案有关系吗互联网代运营公司
  • 营销型网站托管厦门的商城网站建设
  • 网站客户端怎么做的网站建设项目内控单
  • 温州电力建设有限公司网站5分钟的企业宣传片多少钱
  • 南江县建设局网站一个人是否可以做公司网站
  • 海口 做网站站长工具a级
  • 如何建设一家网站北京公司注册资金
  • wordpress多站点用户同步wordpress主题免费中文版
  • 福州网站制作建设制作一个网站需要多少小时
  • 网站建设中 html模板免费杂志模板
  • 做一件代发网站巨久科技网站建设
  • 编程基础知识大全seo建站工具
  • 在线搭建网站安徽住房和城乡建设厅网站
  • 微信推送怎么做购物网站类似站酷的网站建站
  • 皇家梅陇公馆网站建设郑州网课老师
  • 南宁做网站外贸平台都有哪些
  • 家具做网站专业做网站排名多少钱