Azure Machine Learning - 聊天机器人构建

这篇具有很好参考价值的文章主要介绍了Azure Machine Learning - 聊天机器人构建。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文介绍如何部署和运行适用于 Python 的企业聊天应用示例。 此示例使用 Python、Azure OpenAI 服务和 Azure AI 搜索中的检索扩充生成(RAG)实现聊天应用,以获取虚构公司员工福利的解答。

关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人文章来源地址https://www.toymoban.com/news/detail-804838.html

聊天机器人架构概述

下图显示了聊天应用的简单体系结构:

Azure Machine Learning - 聊天机器人构建,azure,人工智能,机器学习,深度学习,microsoft

体系结构的关键组件包括:

  • 用于托管交互式聊天体验的 Web 应用程序。
  • 用于从自己的数据获取答案的 Azure AI 搜索资源。
  • 要提供的 Azure OpenAI 服务:
    • 用于增强自有数据搜索性能的关键字。
    • 来自 OpenAI 模型的解答。
    • 来自 ada 模型的嵌入

消耗成本

此体系结构中的大多数资源使用基本定价层或消耗定价层。 消耗定价基于使用量,这意味着你只需为使用的部分付费。 完成本文将收取一定费用,但费用极少。 完成本文后,可以删除资源以停止产生费用。

详细了解 示例存储库中的成本。

环境准备

开发容器 环境提供了完成本文所需的所有依赖项。 可以在 GitHub Codespaces(在浏览器中)或在本地使用 Visual Studio Code 运行开发容器。

若要使用本文,需要满足以下先决条件:

  1. Azure 订阅 - 免费创建订阅
  2. Azure 帐户权限 - Azure 帐户必须具有 Microsoft.Authorization/roleAssignments/write 权限,例如[用户访问管理员]或[所有者]。
  3. 已在所需的 Azure 订阅中授予对 Azure OpenAI 的访问权限。 目前,仅应用程序授予对此服务的访问权限。 可以通过在 https://aka.ms/oai/access 上填写表单来申请对 Azure OpenAI 的访问权限。 如果有任何问题,请在此存储库上提出问题以联系Azure。
  4. [Azure 开发人员 CLI]
  5. Docker Desktop - 启动 Docker Desktop (如果尚未运行)
  6. Visual Studio Code
  7. 开发容器扩展

打开开发环境

现在从安装了完成本文所需的所有依赖项的开发环境开始。

适用于 Visual Studio Code 的开发容器扩展要求在本地计算机上安装 Docker。 扩展使用 Docker 主机在本地托管开发容器,该主机已预安装完成本文所需的合适的开发人员工具和依赖项。

  1. 在空目录的上下文中打开 Visual Studio Code

  2. 确保在 Visual Studio Code 中安装了开发容器扩展。

  3. 在编辑器中打开新终端。 可以使用主菜单导航到“终端”菜单选项,然后选择“新建终端”选项。

Azure Machine Learning - 聊天机器人构建,azure,人工智能,机器学习,深度学习,microsoft

  1. 使用 Azure Developer CLI 登录到 Azure。

    azd auth login
    

    出现提示时,请从终端复制代码,然后将其粘贴到浏览器中。 按照说明使用 Azure 帐户进行身份验证。

  2. 创建一个文件夹并将其初始化,以在 Azure Developer CLI 中使用示例项目:

    azd init -t azure-search-openai-demo
    

    无需克隆此存储库。

  3. 打开命令面板,搜索“开发容器”命令,然后选择“开发容器:在容器中重新打开”。Visual Studio Code 可能会自动提示重新打开在开发容器中的现有文件夹。 这在功能上等效于使用命令面板重新打开容器中的当前工作区。

  4. 再次重新打开终端窗口(Ctrl + `),将其保持打开状态。

  5. 此项目中的剩余练习在此开发容器的上下文中进行。

部署和运行

示例存储库包含将聊天应用部署到 Azure 所需的所有代码和配置文件。 以下步骤将指导完成将示例部署到 Azure 的过程。

将聊天应用部署到 Azure

重要

在本部分中创建的 Azure 资源的即时成本,主要来自 Azure AI 搜索资源。 即使在完全执行命令之前中断命令,这些资源也会产生费用。

  1. 运行以下 Azure Developer CLI 命令来预配 Azure 资源并部署源代码:

    azd up
    
  2. 当系统提示输入环境名称时,请使用小写字母的简短名称。 例如 myenv。 它用作资源组名称的一部分。

  3. 出现提示时,选择要在其中创建资源的订阅。

  4. 当系统第一次提示你选择位置时,请选择你附近的位置。 此位置用于大多数资源,包括托管。

  5. 如果系统提示你输入 OpenAI 模型的位置,请选择你附近的位置。 如果可以使用与第一个位置相同的位置,请选择该位置。

  6. 等待应用部署完成。 部署可能需要 5-10 分钟才能完成。

  7. 成功部署应用程序后,终端中会显示一个 URL。

  8. 选择标记为 (✓) Done: Deploying service webapp 的 URL 在浏览器中打开聊天应用程序。
    Azure Machine Learning - 聊天机器人构建,azure,人工智能,机器学习,深度学习,microsoft

使用聊天应用从 PDF 文件获取答案

聊天应用预加载了 PDF 文件中的员工权益信息。 可以使用聊天应用询问有关权益的问题。 以下步骤将引导你完成使用聊天应用的过程。

  1. 在浏览器中,选择或输入 在性能评审中会发生什么情况? 在聊天文本框中。

Azure Machine Learning - 聊天机器人构建,azure,人工智能,机器学习,深度学习,microsoft
2. 从答案中选择引文。

Azure Machine Learning - 聊天机器人构建,azure,人工智能,机器学习,深度学习,microsoft

  1. 在右窗格中,使用选项卡了解如何生成答案。

    Tab 说明
    思考过程 这是聊天中交互的脚本。 可以查看系统提示 (content) 和用户问题 (content)。
    支持内容 这包括用于回答你的问题的信息和来源材料。 开发人员设置中记录了来源材料引文的数量。 默认值为 3。
    引文 这会显示包含引文的原始页面。
  2. 完成后,再次选择所选选项卡以关闭窗格。

使用聊天应用设置更改答复行为

聊天的智能由 OpenAI 模型和用于与模型交互的设置确定。

Azure Machine Learning - 聊天机器人构建,azure,人工智能,机器学习,深度学习,microsoft

设置 说明
替代提示模板 这是用于生成答案的提示。
检索这么多搜索结果 这是用于生成答案的搜索结果数。 可以在引文的“思考过程”和“支持内容”选项卡中看到这些返回的来源。
排除类别 这是从搜索结果中排除的文档类别。
使用语义排名程序进行检索 这是 Azure AI 搜索的一项功能,它使用机器学习来提高搜索结果的相关性。
使用查询上下文摘要而不是整个文档 当同时检查 Use semantic rankerUse query-contextual summaries 时,LLM 使用从排名最高的文档中的关键段落(而不是所有段落)中提取的标题。
建议后续问题 让聊天应用根据答案建议后续问题。
检索模式 矢量 + 文本意味着搜索结果基于文档的文本和文档嵌入。 矢量意味着搜索结果基于文档嵌入。 文本意味着搜索结果基于文档的文本。
流式聊天完成响应 流式处理响应,而不是等待,直到完整的答案可用于响应。

以下步骤将引导你完成更改设置的过程。

  1. 在浏览器中,选择**“开发人员设置**”选项卡。

  2. 选中“建议后续问题”复选框,然后再次提出相同的问题。

    What happens in a performance review?
    

    聊天返回了建议的后续问题,例如:

    1. What is the frequency of performance reviews?
    2. How can employees prepare for a performance review?
    3. Can employees dispute the feedback received during the performance review?
    
  3. 在“设置”选项卡中,取消选择“使用语义排名程序进行检索”。

  4. 再次问同样的问题?

    What happens in a performance review?
    
  5. 答案有什么区别?

    借助语义排名器:在 Contoso Electronics 进行绩效审查期间,员工将有机会讨论他们在工作场所的成功和挑战(1)。 审查将提供积极和建设性的反馈,以帮助员工发展和发展其角色(1)。 员工将收到绩效评审的书面摘要,其中包括对即将到来的一年(1)绩效、反馈和目标和目标的评级。 绩效评审是经理和员工之间的双向对话(1)。

    没有语义排名器:在 Contoso Electronics 进行绩效评审期间,员工有机会在工作场所讨论他们的成功和挑战。 提供了积极和建设性的反馈,以帮助员工发展和发展其角色。 给出绩效评审的书面摘要,包括即将来临的一年的性能、反馈和目标评分。 审查是经理和员工之间的双向对话(1)。

关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人

到了这里,关于Azure Machine Learning - 聊天机器人构建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用LangChain构建问答聊天机器人案例实战(一)

    使用LangChain构建问答聊天机器人案例实战 现场演示GPT-4代码生成 本节我们会通过一个综合案例,跟大家讲解LangChain,这个案例产生的代码会直接在浏览器中运行,并且会输出结果,如图14-1所示,用户问:“What was the highest close price of IBM?”(“IBM的最高收盘价是多少?”)

    2024年02月15日
    浏览(72)
  • 使用LangChain构建问答聊天机器人案例实战(三)

    使用LangChain构建问答聊天机器人案例实战 LangChain开发全流程剖析 接下来,我们再回到“get_prompt()”方法。在这个方法中,有系统提示词(system prompts)和用户提示词(user prompts),这是从相应的文件中读取的,从“system.prompt”文件中读取系统提示词(system_template),从“u

    2024年02月14日
    浏览(53)
  • ChatGPT实践-构建简单的AI聊天机器人(python)

    本文指导如何通过调用OpenAI的API完成一个简单的聊天机器人。 我们可以通过任何语言的 HTTP 请求、官方 Python 、 Node.js 库或社区维护的库与 ChatGPT的API 进行交互,官方API文档: API Reference - OpenAI API (可自行去查看) 所以python是有现成包用的,会比调用原始的HTTP请求容易一些

    2024年02月09日
    浏览(51)
  • 使用ChatGPT构建一个AIML聊天机器人是什么体验

    ​ 使用ChatGPT构建一个AIML聊天机器人是什么体验,使用ChatGPT将C#代码转换为Swift代码以实现Swift版的Aiml聊天机器人,AIML(全名为Artificial Intelligence Markup Language)是一种基于XML模式匹配的人工智能标记语言,最早是一个名为\\\"A.L.I.C.E.\\\" (“Artificial Linguistic Internet Computer Entity”)的高

    2024年02月11日
    浏览(49)
  • 如何使用OpenAI API和Python SDK构建自己的聊天机器人

    近日,OpenAI公司的ChatGPT模型走红网络。同时,OpenAI也推出了Chat API和gpt-3.5-turbo模型,让开发者能够更轻松地使用与ChatGPT类似的自然语言处理模型。 通过OpenAI API,我们可以使用gpt-3.5-turbo模型,实现多种任务,包括:撰写电子邮件或其他文本内容,编写Python代码,创建对话代

    2024年02月01日
    浏览(45)
  • 用通俗易懂的方式讲解:使用 MongoDB 和 Langchain 构建生成型AI聊天机器人

    想象一下:你收到了你梦寐以求的礼物:一台非凡的时光机,可以将你带到任何地方、任何时候。 你只有10分钟让它运行,否则它将消失。你拥有一份2000页的PDF,详细介绍了关于这台时光机的一切:它的历史、创造者、构造细节、操作指南、过去的用户,甚至还有一种回到过

    2024年01月23日
    浏览(48)
  • 用通俗易懂的方式讲解:使用 LangChain 和 LlamaIndex 从零构建PDF聊天机器人

    随着大型语言模型(LLM)(如ChatGPT和GPT-4)的兴起,现在比以往任何时候都更容易搭建智能聊天机器人,并且可以堆积如山的文档,为你的输入提供更准确的响应。 无论你是想构建个人助理、定制聊天机器人还是自动文档分析系统,本系列都将为你提供构建自己的LLM聊天机器

    2024年01月18日
    浏览(56)
  • 【虹科分享】基于Redis Enterprise,LangChain,OpenAI 构建一个电子商务聊天机器人

    如何构建你自己的商务聊天机器人?注意哦,是你自己的聊天机器人。一起来看看 Redis Enterprise的向量检索是怎么帮你实现这个愿望的吧。   鉴于最近人工智能支持的 API和网络开发工具的激增,似乎每个人都在将聊天机器人集成到他们的应用程序中。   LangChain是一种备受欢

    2024年02月05日
    浏览(71)
  • 基于GPT-4和LangChain构建云端定制化PDF知识库AI聊天机器人

    参考: GitHub - mayooear/gpt4-pdf-chatbot-langchain: GPT4 LangChain Chatbot for large PDF docs 使用新的GPT-4 api为多个大型PDF文件构建chatGPT聊天机器人。 使用的技术栈包括LangChain, Pinecone, Typescript, Openai和Next.js。LangChain是一个框架,可以更容易地构建可扩展的AI/LLM大语言模型应用程序和聊天机器

    2024年02月11日
    浏览(50)
  • 基于Llama2和LangChain构建本地化定制化知识库AI聊天机器人

    参考: 本项目 https://github.com/PromtEngineer/localGPT 模型 https://huggingface.co/TheBloke/Llama-2-7B-Chat-GGML 云端知识库项目:基于GPT-4和LangChain构建云端定制化PDF知识库AI聊天机器人_Entropy-Go的博客-CSDN博客          相比OpenAI的LLM ChatGPT模型必须网络连接并通过API key云端调用模型,担心

    2024年02月08日
    浏览(63)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包