你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

平民 AI 和 Power Platform

Azure 机器学习
Microsoft Power 平台
Power Apps
Power Automate
Power BI

以下体系结构在“使用 Azure Synapse Analytics 进行端到端分析”场景的基础上进行了扩展。 得益于此,自定义机器学习 (ML) 模型可在 Azure 机器学习中进行训练,并且借由使用 Microsoft Power Platform 构建的自定义应用程序实现。

体系结构

Diagram that shows the architecture for citizen AI with Microsoft Power Platform.

下载此体系结构的 Visio 文件

工作流

工作流包括以下步骤:

  • 引入
  • 存储
  • 训练和部署模型
  • 使用

引入

使用 Azure Synapse Pipelines 从各种源(本地和云中)拉取批量数据。 此 Lambda 体系结构包含两个数据引入流:流式处理和批处理。 此处对其进行了介绍:

  • 流式处理:在上述体系结构关系图的上半部分中,是流式处理数据流(例如,大数据流和 IoT 设备)。
    • 可以使用 Azure 事件中心或 Azure IoT 中心引入客户端应用程序或 IoT 设备生成的数据流。 事件中心或 IoT 中心会引入并存储流数据,从而保留接收事件的序列。 使用者可以连接到中心终结点,以检索要处理的消息。
  • 批处理:在体系结构关系图的下半部分中,数据是以批处理的方式引入和处理的,例如:
    • 非结构化数据(例如视频、图像、音频和自由文本)

    • 半结构化数据(例如 JSON、XML、CSV 和日志)

    • 结构化数据(例如关系数据库和 Azure 数据服务)

      Azure Synapse Link 在 Azure Cosmos DB 和 Azure Synapse Analytics 之间建立紧密无缝集成。 Azure Synapse Pipelines 基于预定义日程安排触发或在对事件作出响应时触发。 还可以通过调用 REST API 来调用 Pipelines。

存储

引入的数据可以直接以原始格式获取,然后在 Azure Data Lake 上进行转换。 数据经过策展并转换为关系结构后,即可在 Azure Synapse Analytics 中显示以供使用。

训练和部署模型

机器学习是一项企业级 ML 服务,可快速构建和部署模型。 可为各种技能级别的用户提供低代码设计器、自动化 ML 和托管的 Jupyter 笔记本环境。 模型可以部署为 Azure Kubernetes 服务上的实时终结点,也可以部署为机器学习托管终结点。 批量推理 ML 模型时,可以使用机器学习管道

使用

在机器学习中批量或实时发布的模型可以生成 REST 终结点,该终结点可在使用低代码 Power Apps 平台生成的自定义应用程序中使用。 还可以调用 Power BI 报表中的实时机器学习终结点,以在业务报告中显示预测。

注意

机器学习和 Power Platform 堆栈都有一系列内置连接器,有助于直接引入数据, 这些连接器可能对一次性最小可行产品 (MVP) 实用。 但该体系结构的“引入”和“存储”部分对标准化数据管道从不同源获取和存储大规模数据的作用提出了建议。 这些模式通常由企业数据平台团队实现和维护。

组件

可使用以下组件。

Power Platform 服务

  • Power Platform:一组用于分析数据、生成解决方案、实现流程自动化和创建虚拟代理的工具。 其中包括 Power Apps、Power Automate、Power BI 和 Power Virtual Agents。
  • Power Apps:由应用、服务、连接器和数据平台构成的套件。 可提供快速的应用程序开发环境,以根据业务需求生成自定义应用。
  • Power Automate:一项有助于你在喜爱的应用和服务之间创建自动化工作流的服务。 可用于同步文件、获取通知、收集数据等。
  • Power BI:由软件服务、应用和连接器构成的集合,他们共同协作,将不相关的数据源转换为一致的、直观逼真的交互式见解。

Azure 服务

  • 机器学习:用于快速生成和部署模型的企业级 ML 服务。 为各种技能级别的用户提供低代码设计器、自动化 ML 和托管的 Jupyter 笔记本环境,以支持首选 IDE。
  • 机器学习托管终结点:联机终结点,借助此终结点,无需创建和管理底层基础结构即可部署模型。
  • Azure Kubernetes 服务:ML 为不同的计算目标提供不同的支持。 Azure Kubernetes 服务以此为目标,非常适合企业级实时模型终结点。
  • Azure Data Lake:与 Hadoop 兼容的文件系统。 具有集成的分层命名空间,以及 Azure Blob 存储的大规模和经济性。
  • Azure Synapse Analytics:一种无限制的分析服务,可将数据集成、企业数据仓库和大数据分析结合在一起。
  • 事件中心和 IoT 中心:两种服务均可引入客户端应用程序或 IoT 设备生成的数据流. 随后会引入并存储流数据,从而保留接收事件的序列。 使用者可以连接到中心终结点,以检索要处理的消息。

平台服务

若要提高 Azure 解决方案的质量,请遵循 Azure 架构良好的框架中的建议和指南。 该框架包含卓越体系结构的五大要素:

  • 成本优化
  • 卓越运营
  • 性能效率
  • 可靠性
  • 安全性

若要创建遵循这些建议的设计,请考虑使用以下服务:

  • Microsoft Entra ID:跨 Azure 工作负载提供标识服务、单一登录和多重身份验证。
  • Azure 成本管理和计费:对 Azure 工作负载进行财务治理。
  • Azure Key Vault:保护凭据和证书管理。
  • Azure Monitor:收集、分析并显示 Azure 资源的遥测数据。 使用 Monitor 主动发现问题,以最大程度地提高性能和可靠性。
  • Microsoft Defender for Cloud:增强并监视 Azure 工作负载的安全状况。
  • Azure DevOpsGitHub:实施 DevOps 做法,加强 Azure Synapse Analytics 和机器学习工作负载开发和部署管道的自动化和合规性。
  • Azure Policy:实施组织标准和治理以满足资源一致性、法规遵从性、安全性、成本和管理方面的要求。

备选方法

机器学习 MVP 受益于从速度到结果。 在某些情况下,预训练的 Azure 认知服务或 Azure 应用 AI 服务可满足自定义模型的需求。 在其他情况下,Power Apps AI Builder 可能会提供适合用途的模型。

方案详细信息

驯化 AI 的角色日益普及,正成为普遍技术趋势。 此类角色通常由希望通过应用 ML 和 AI 技术来改善业务流程的从业者担任。 导致这一趋势的重要因素是用于开发 ML 模型的低代码工具日益成熟,可用性不断增强。

由于此类计划失败率极高,因此,能够在现实环境中快速构建 AI 应用程序原型并进行验证成为快速失败方法的关键推动因素。 可借助两种关键工具开发模型,从而实现流程现代化并推动变革性结果:

  • 适用于所有技能级别的 ML 工具包
    • 无论是无代码还是全代码 ML 开发,均受支持
    • 具有灵活的低代码 GUI
    • 确保用户能够快速获取和准备数据
    • 确保用户能够快速生成和部署模型
    • 具有适用于 ML 算法开发的高级自动化 ML 功能
  • 低代码应用程序开发工具包
    • 确保用户能够生成自定义应用程序和自动化工作流
    • 创建工作流,确保使用者和业务流程能够与 ML 模型交互

机器学习在 ML 开发中充当低代码 GUI 的角色。 具有自动化 ML,可部署到批量终结点或实时终结点。 Power Platform(包括 Power Apps 和 Power Automate)提供工具包,用于快速生成实现 ML 算法的自定义应用程序和工作流。 业务用户现可构建生产级 ML 应用程序,以转换旧的业务流程。

可能的用例

如欲针对 ML 模型对业务流程的优势构建原型,上述工具包可最大程度地减少所需的时间和精力, 可以轻松将原型扩展到生产级应用程序。 相关技术的用途如下:

  • 制造运营所采用的旧式应用程序使用过时确定性预测。 提升 ML 模型的准确度,有望改善此情况。 若要证明准确度有所提升,既需要模型,也需要开发工作,以与本地旧系统集成。
  • 呼叫中心运营所采用的旧式应用程序在数据偏移时无法进行调整。 自动重新训练的模型可显著提升流失预测或风险分析的准确度。 若要进行验证,则需要与现有的客户关系管理系统和票证管理系统进行集成。 集成可能很昂贵。

注意事项

使用上述服务创建概念证明或 MVP 后,依然尚未大功告成。 制定生产解决方案仍任重道远。 架构良好的框架等框架提供了适用于体系结构的参考指南和最佳做法。

可用性

本示例方案中使用的大多数组件均为可自动缩放的托管服务。 本例中使用的服务可用性因区域而异。

基于 ML 的应用通常需要一组资源用于训练,另一组资源用于提供服务。 用于训练的资源通常无需高可用性,因为实时生产请求不会直接影响这些资源, 而为请求提供服务所需的资源需要高可用性。

DevOps

DevOps 做法用于协调本例中使用的端到端方法。 如果贵组织是 DevOps 新用户,DevOps 清单可以助你快速入门。

机器学习 DevOps 指南介绍了利用机器学习在企业中采用 ML 操作 (MLOps) 的最佳做法和知识。

DevOps 自动化可应用于本例中提供的 Power Platform 解决方案。 有关 Power Platform DevOps 的详细信息,请参阅用于 Azure DevOps 的 Power Platform Build Tools - Power Platform

成本优化

成本优化是关于寻找减少不必要的费用和提高运营效率的方法。 有关详细信息,请参阅成本优化支柱概述

Azure 定价:Azure 上的第一方基础结构即服务 (IaaS) 和平台即服务 (PaaS) 使用基于使用的定价模型。 无需许可证或订阅费用。 通常,使用 Azure 定价计算器来估算成本。 有关其他注意事项,请参阅“架构良好的框架”中的成本优化

Power Platform 定价:Power Apps、Power Automate 和 Power BI 均属于 SaaS 应用程序,其拥有自己的定价模型,包括按应用计划和按用户定价。

部署此方案

请思考如下业务场景。 业务人员需使用一款应用来估算汽车的市场价。 你可以使用机器学习快速构建此应用 ML 模型的原型。 使用低代码设计器和 ML 功能来制作模型,然后将其部署为实时 REST 终结点。

该模型可能会实现上述概念,但用户无法轻松地使用作为 REST API 实现的模型。 Power Platform 有助于解决这最后的难题,如下所示。

Screenshot that shows an ML model that's created in Machine Learning. The model obtains car data from Azure Data Lake, and it provides inferences to an endpoint.

使用 Power Apps 提供的低代码接口在 Power Apps 中创建应用,其用户界面如下所示:

Screenshot that shows buttons and dropdown lists for the user to enter car data. The app predicts a price and displays it when the user selects the Predict button.

可以使用 Power Automate 生成低代码工作流,以分析用户输入、将其传递给机器学习终结点,并检索预测。 还可使用 Power BI 与机器学习模型交互并创建自定义业务报表和仪表板。

Diagram that shows architecture showing the schematic of the workflow.

要部署此端到端示例,请按照 Car Price Predictor - Azure ML + Power App 解决方案 中的分步说明进行操作。

扩展方案

请考虑以下方案。

部署到 Teams

上例中提供的示例应用也可以部署到 Microsoft Teams。 Teams 可为应用提供出色的分发渠道,并为用户提供协作应用体验。 有关如何使用 Power Apps 将应用部署到 Teams 的详细信息,请参阅在 Teams 中使用 Power Apps 发布应用:Power Apps

使用来自多个应用和自动化的 API

本例中,我们将配置 Power Automate 云端流,以将 REST 终结点用作 HTTP 操作。 我们可以改为设置适用于 REST 终结点的自定义连接器,并直接从 Power Apps 或 Power Automate 中使用。 如果希望多个应用使用同一终结点,此方法非常有用。 借助此方法,还可以在 Power Platform 管理员中心使用连接器数据丢失预防 (DLP) 策略进行治理。 如需创建自定义连接器,请参阅 Power Apps 应用中的自定义连接器。 有关 Power Platform 连接器 DLP 的详细信息,请参阅数据丢失预防策略 - Power Platform

作者

本文由 Microsoft 维护, 它最初由以下人编写:

后续步骤