AI 应用模板
本部分文档介绍了 AI 应用模板以及使用这些模板来演示如何执行关键开发人员任务的相关文章。 AI 应用模板为你提供了维护良好、易于部署的参考实现,可帮助确保 AI 应用有一个高质量的起点。
AI 应用模板有两种类别,构建基块和端到端解决方案。 以下各部分将在本文开头选择的编程语言介绍每个类别中的一些关键模板。 若要浏览包括这些模板和其他模板在内的更全面的列表,请参阅 AI 应用模板库中的 AI 应用模板。
构建基块
构建基块是规模较小的样本,侧重于特定方案和任务。 大多数构建基块都展示了利用端到端解决方案的功能,以实现使用自己的数据的聊天应用。
构建基块 | 说明 |
---|---|
使用 Azure 容器应用程序实现负载均衡 | 了解如何向应用程序添加负载均衡,以将聊天应用扩展到 Azure OpenAI 令牌和模型配额限制之外。 此方法使用 Azure 容器应用创建三个 Azure OpenAI 终结点以及一个主容器,将传入流量定向到三个终结点中的一个。 |
构建基块 | 说明 |
---|---|
为聊天应用配置文档安全性 | 在使用 RAG 模式和自己的数据创建聊天应用程序时,请确保每个用户都能根据自己的权限收到答案。 经授权的用户应能访问聊天应用文档中的答案。 未经授权的用户不应该从他们没有权限查看的安全文档中获取答案。 |
评估聊天应用答案 | 了解如何根据一组正确或理想的答案(称为基本事实)来评估聊天应用的答案。 每当更改聊天应用程序并对答案造成影响时,都要运行一次评估来比较更改。 此演示应用程序提供了现在就可以使用的工具,以便更轻松地进行评估。 |
使用 Azure 容器应用程序实现负载均衡 | 了解如何向应用程序添加负载均衡,以将聊天应用扩展到 Azure OpenAI 令牌和模型配额限制之外。 此方法使用 Azure 容器应用创建三个 Azure OpenAI 终结点以及一个主容器,将传入流量定向到三个终结点中的一个。 |
使用 API Management 进行负载均衡 | 了解如何向应用程序添加负载均衡,以将聊天应用扩展到 Azure OpenAI 令牌和模型配额限制之外。 这种方法使用 Azure API 管理来创建三个 Azure OpenAI 终结点以及一个主容器,以便将传入流量导向三个终结点中的一个。 |
使用 Locust 负载测试 Python 聊天应用 | 了解使用流行的开源负载测试工具 Locust 的 RAG 模式对 Python 聊天应用程序执行负载测试的过程。 负载测试的主要目的是确保聊天应用程序的预期负载不超过当前的 Azure OpenAI 每分钟事务 (TPM) 配额。 通过模拟大负载下的用户行为,可以找出应用程序中潜在的瓶颈和可扩展性问题。 |
使用无密钥身份验证保护 AI 应用 | 了解使用无密钥身份验证保护 Python Azure OpenAI 聊天应用程序的过程。 对大多数 Azure 服务的应用程序请求应使用无密钥连接或无密码连接进行身份验证。 与帐户密钥相比,无密钥身份验证具有更好的管理和安全优势,因为无需存储密钥(或连接字符串)。 |
构建基块 | 说明 |
---|---|
使用 Azure 容器应用程序实现负载均衡 | 了解如何向应用程序添加负载均衡,以将聊天应用扩展到 Azure OpenAI 令牌和模型配额限制之外。 此方法使用 Azure 容器应用创建三个 Azure OpenAI 终结点以及一个主容器,将传入流量定向到三个终结点中的一个。 |
构建基块 | 说明 |
---|---|
评估聊天应用答案 | 了解如何根据一组正确或理想的答案(称为基本事实)来评估聊天应用的答案。 每当更改聊天应用程序并对答案造成影响时,都要运行一次评估来比较更改。 此演示应用程序提供了现在就可以使用的工具,以便更轻松地进行评估。 |
使用 Azure 容器应用程序实现负载均衡 | 了解如何向应用程序添加负载均衡,以将聊天应用扩展到 Azure OpenAI 令牌和模型配额限制之外。 此方法使用 Azure 容器应用创建三个 Azure OpenAI 终结点以及一个主容器,将传入流量定向到三个终结点中的一个。 |
使用 API Management 进行负载均衡 | 了解如何向应用程序添加负载均衡,以将聊天应用扩展到 Azure OpenAI 令牌和模型配额限制之外。 这种方法使用 Azure API 管理来创建三个 Azure OpenAI 终结点以及一个主容器,以便将传入流量导向三个终结点中的一个。 |
端到端解决方案
端到端解决方案是全面的参考示例,其中包括文档、源代码和部署,使你能够出于自己的目的进行采取和扩展。
通过 .NET 使用 Azure OpenAI 和 Azure AI 搜索与数据聊天
此模板是一个完整的端到端解决方案,展示了在 Azure 中运行的检索增强生成 (RAG) 模式。 它使用 Azure AI 搜索进行检索,并使用 Azure OpenAI 大型语言模型提供 ChatGPT 式和问答体验。
要开始使用此模板,请参阅使用自己的 .NET 数据示例开始聊天。 要访问源代码并阅读有关模板的详细信息,请参阅 azure-search-openai-demo-csharp GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure Container Apps Azure Functions |
Azure OpenAI Azure 计算机视觉 Azure 表单识别器 Azure AI 搜索 Azure 存储 |
GPT 3.5 Turbo GPT 4.0 |
使用 .NET 和语义内核的 Contoso 聊天零售 Copilot
此模板实现了 Contoso Outdoors 的概念,这是一家专门为远足和露营爱好者提供户外用品的商店。 此虚拟商店通过智能聊天代理增强了客户参与度和销售支持。 代理由 Microsoft Azure AI Stack 中的检索增强生成 (RAG) 模式提供支持,并辅以语义内核和 Prompty 支持。
要访问源代码并深入了解该模板的详细信息,请参阅 contoso-chat-csharp-prompty GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure Container Apps |
Azure OpenAI Microsoft Entra ID Azure 托管标识 Azure Monitor Azure AI 搜索 Azure AI Foundry Azure SQL Azure 存储 |
GPT 3.5 Turbo GPT 4.0 |
使用 .NET 和 GPT 3.5 Turbo 将语音转换为文本和摘要实现流程自动化
此模板是一个流程自动化解决方案,用于接收一家名为 Contoso Manufacturing 的汽车电池制造公司的现场和车间工人报告的问题。 工作人员可以通过麦克风现场交流问题,也可以预先录制音频文件。 此解决方案可将语音输入转化为文本,然后使用 LLM 和 Prompty 或 Promptflow 汇总问题,并以解决方案指定的格式返回结果。
要访问源代码并阅读有关模板的详细信息,请参阅 summarization-openai-csharp-prompty GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure Container Apps | 语音转文本 汇总 Azure OpenAI |
GPT 3.5 Turbo |
通过 Python 使用 Azure OpenAI 和 Azure AI 搜索与数据聊天
此模板是一个完整的端到端解决方案,展示了在 Azure 中运行的检索增强生成 (RAG) 模式。 它使用 Azure AI 搜索检索和 Azure OpenAI 大型语言模型为 ChatGPT 样式和问答(Q&A)体验提供支持。
要开始使用此模板,请参阅使用自己的 Python 数据示例开始聊天。 要访问源代码并阅读有关模板的详细信息,请参阅 azure-search-openai-demo GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure Container Apps | Azure OpenAI Azure AI 搜索 Azure Blob 存储 Azure Monitor Azure 文档智能 |
GPT 3.5 Turbo GPT 4 GPT 4o GPT 4o-mini |
与 DALL-E 合作的多模式创意写作 Copilot
此模板是一个帮助用户撰写文章的创意写作多代理解决方案。 它演示了如何创建和使用由 Azure OpenAI 驱动的 AI 代理。
其中包括:
- 一个 Flask 应用,它从用户获取文章和说明。
- 使用 必应搜索 API 研究文章的研究代理。
- 使用 Azure AI 搜索 对矢量存储中的相关产品执行语义相似性搜索的产品代理。
- 一个编写者代理,将研究和产品信息合并到一篇有用的文章中。
- 用于优化向用户呈现的文章的编辑器代理。
要访问源代码并阅读有关模板的详细信息,请参阅 agent-openai-python-prompty GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure 容器注册表 Azure Kubernetes |
Azure OpenAI 必应搜索 Azure 托管标识 Azure Monitor Azure AI 搜索 Azure AI Foundry |
GPT 3.5 Turbo GPT 4.0 DALL-E |
使用 Azure AI Foundry 的 Contoso Chat Retail Copilot
此模板实现 Contoso Chat - Contoso Outdoor 的零售 copilot 解决方案,该解决方案使用 检索增强的生成 设计模式来对零售商的产品和客户数据中的聊天机器人响应进行地面聊天机器人响应。 客户可以使用自然语言从网站提问,并根据购买历史记录获取潜在建议的相关回复,并采用负责任的 AI 做法来确保响应质量和安全。
此模板演示了使用 Azure AI 和 Prompty 构建基于 RAG 的 copilot 代码的 端到端工作流(GenAIOps)。 通过探索和部署此示例,了解如何:
- 使用 Prompty 快速迭代应用原型
- 部署和使用 Azure OpenAI 模型进行聊天、嵌入和评估
- 对数据使用 Azure AI 搜索(索引)和 Azure Cosmos DB (数据库)
- 使用 AI 辅助评估流评估聊天响应质量
- 将应用程序托管为部署到 Azure 容器应用的 FastAPI 终结点
- 使用 Azure 开发人员 CLI 预配和部署解决方案
- 通过内容安全和评估支持负责任的 AI 实践
要访问源代码并深入了解该模板的详细信息,请参阅 contoso-chat GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure Container Apps |
Azure OpenAI Azure AI 搜索 Azure AI Foundry Prompty Azure Cosmos DB |
GPT 3.5 Turbo GPT 4.0 托管集成运行时 (MIR) |
利用语音转文本技术实现流程自动化,并利用 Azure AI Foundry 生成摘要
此模板创建一个基于 Web 的应用,该应用允许 Contoso Manufacturing 公司的员工通过文本或语音报告问题。 音频输入将转换为文本,然后汇总以突出显示重要信息,并将报告发送到相应的部门。
若要访问源代码并阅读有关模板的深入详细信息,请参阅 摘要 openai-python-promptflow GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure Container Apps | Azure AI Foundry 语音转文本服务 Prompty 托管集成运行时 (MIR) |
GPT 3.5 Turbo |
使用 Python 和 Azure AI Foundry 的助手 API 分析 Copilot
此模板是一个助手 API,可与表格数据聊天并使用自然语言进行分析。
要访问源代码并深入阅读有关模板的详细信息,请参阅 assistant-data-openai-python-promptflow GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
机器学习服务 | Azure AI 搜索 Azure AI Foundry 托管集成运行时 (MIR) Azure OpenAI |
GPT 3.5 Turbo GPT 4 |
通过 Java 使用 Azure OpenAI 和 Azure AI 搜索与数据聊天
此模板是一个完整的端到端解决方案,展示了在 Azure 中运行的检索增强生成 (RAG) 模式。 它使用 Azure AI 搜索进行检索,并使用 Azure OpenAI 大型语言模型提供 ChatGPT 式和问答体验。
要开始使用此模板,请参阅使用自己的 Java 数据示例开始聊天。 要访问源代码并阅读有关模板的详细信息,请参阅 azure-search-openai-demo-java GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure 应用程序服务 Azure Container Apps Azure Kubernetes 服务 |
Azure OpenAI Azure AI 搜索 Azure 文档智能 Azure 存储 Azure App Insights Azure 服务总线 Azure 事件网格 |
gpt-35-turbo |
基于 Java 和语义内核的多代理银行助手
此项目设计为概念证明 (PoC),旨在探索多代理体系结构上下文中生成 AI 的创新领域。 通过利用 Java 和 Microsoft 语义内核 AI 业务流程框架,我们的目标是构建聊天 Web 应用,以展示使用生成 AI 代理将用户体验从 Web 点击转换为自然语言对话的可行性和可靠性,同时最大限度重用现有工作负载数据和 API。
核心用例围绕银行个人助手,旨在彻底改变用户与其银行账户信息、交易历史记录和付款功能交互的方式。 利用多代理体系结构中生成 AI 的强大功能,此助手旨在提供无缝的对话界面,用户可通过该界面轻松访问和管理其财务数据。
发票示例包含在数据文件夹中,以便轻松浏览付款功能。 配备光学字符识别 (OCR) 工具(Azure 文档智能)的付款代理引导与用户进行对话、提取发票数据并启动付款过程。 其他帐户虚假数据(如交易、付款方式和帐户余额)也可供用户查询。 所有数据和服务都公开为外部 REST API,代理使用这些 API 向用户提供请求的信息。
要访问源代码并阅读有关模板的详细信息,请参阅 agent-openai-java-banking-assistant GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure Container Apps | Azure OpenAI Azure 文档智能 Azure 存储 Azure Monitor |
gpt-4o gpt-4o-mini |
通过 JavaScript 使用 Azure OpenAI 和 Azure AI 搜索与数据聊天
此模板是一个完整的端到端解决方案,展示了在 Azure 中运行的检索增强生成 (RAG) 模式。 它使用 Azure AI 搜索进行检索,并使用 Azure OpenAI 大型语言模型提供 ChatGPT 式和问答体验。
要开始使用此模板,请参阅使用自己的 JavaScript 数据示例开始聊天。 要访问源代码并阅读有关模板的详细信息,请参阅 azure-search-openai-javascript GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure Container Apps Azure 静态 Web 应用 |
Azure OpenAI Azure AI 搜索 Azure 存储 Azure Monitor |
text-embedding-ada-002 |
Azure OpenAI 聊天前端
此模板是一个最小的 OpenAI 聊天 Web 组件,可以作为客户端连接到任何后端实现。
要访问源代码并阅读有关模板的详细信息,请参阅 azure-openai-chat-frontend GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure 静态 Web 应用 | Azure AI 搜索 Azure OpenAI |
GPT 3.5 Turbo GPT4 |
使用 LangChain.js 与 RAG 进行无服务器 AI 聊天
该模板是一个使用 LangChain.js 和 Azure 进行检索增强生成的无服务器 AI 聊天机器人,它使用一组企业文档来生成对用户查询的响应。 它使用了一家名为 Contoso Real Estate 的虚构公司,客户可以在体验中就其产品的使用向支持人员提问。 示例数据包括一套文件,其中介绍了服务条款、隐私政策和支持指南。
要了解如何部署和运行此模板,请参阅使用 LangChain.js 通过 RAG 进行无服务器 AI 聊天入门。 要访问源代码并深入了解该模板的详细信息,请参阅 serverless-chat-langchainjs GitHub 存储库。
此模板演示了这些功能的使用。
Azure 托管解决方案 | 技术 | AI 模型 |
---|---|---|
Azure 静态 Web 应用 Azure Functions |
Azure AI 搜索 Azure OpenAI Azure Cosmos DB Azure 存储 Azure 托管标识 |
GPT4 Mistral Ollama |