级别:中间
本教程演示如何将 Azure OpenAI、Azure 通信服务 和 Microsoft Graph/Microsoft Graph 工具包集成到业务线(LOB)应用程序中,以提高用户工作效率、提升用户体验并将 LOB 应用提升到下一级别。 应用程序中的主要功能包括:
- AI:允许用户以自然语言提问并将其答案转换为可用于查询数据库的 SQL,允许用户定义可用于自动生成电子邮件和短信的规则,并了解如何使用自然语言从你自己的自定义数据源检索数据。 Azure OpenAI 用于这些功能。
- 通信:使用 Azure 通信服务为客户启用应用内电话呼叫和电子邮件/短信功能。
- 组织数据:拉取用户可能需要的相关组织数据(文档、聊天、电子邮件、日历事件),以避免上下文切换。 提供对此类组织数据的访问权限可减少用户切换到 Outlook、Teams、OneDrive、其他自定义应用、其手机等的需求,因为它们需要的特定数据和功能直接在应用中提供。 Microsoft Graph 和 Microsoft Graph 工具包用于此功能。
该应用程序是一个简单的客户管理应用,允许用户管理其客户和相关数据。 它由使用 TypeScript 构建的前端组成,它调用后端 API 来检索数据、与 AI 功能交互、发送电子邮件/短信以及拉取组织数据。 下面是在本教程中逐步介绍的应用程序解决方案的概述:
本教程将指导你完成设置所需的 Azure 和 Microsoft 365 资源的过程。 它还将引导你完成用于实现 AI、通信和组织数据功能的代码。 虽然不需要复制和粘贴代码,但某些练习将让你修改代码以尝试不同的方案。
本教程将生成的内容
选择自己的冒险
可以从头到尾完成整个教程,也可以完成感兴趣的特定主题。 本教程分为以下主题:
- 克隆项目练习 (必需的练习)。
- AI 练习:创建 Azure OpenAI 资源 并将其用于将自然语言转换为 SQL、生成电子邮件/短信以及处理自己的数据和文档。
- 通信练习:创建 Azure 通信服务资源 ,并使用它从应用拨打电话并发送电子邮件/短信。
- 组织数据练习: 创建Microsoft Entra ID 应用注册 ,以便Microsoft Graph 和 Microsoft Graph 工具包可用于对组织数据进行身份验证并将组织数据拉取到应用程序中。
先决条件
- 节点 - 节点 20+ 和 npm 10+ 将用于此项目
- git
- Visual Studio Code (尽管建议使用 Visual Studio Code,但可以使用任何编辑器)
- Azure 订阅
- Microsoft 365 开发人员租户
- Docker Desktop 或其他符合 OCI(开放容器计划)的容器运行时,例如 Podman 或能够运行容器的 nerdctl 。
本教程中使用的Microsoft云技术
- Azure 通信服务
- Azure OpenAI 服务
- Microsoft Entra 身份识别系统
- Microsoft Graph
- Microsoft Graph 工具包