你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
在本文中,你将了解如何使用 Azure OpenAI 服务和 Azure 容器应用为 Spring PetClinic 示例应用程序创建自然语言接口。
有关此应用程序体系结构详细信息,请参阅容器应用中的 Java PetClinic AI 示例概述。
注意事项
部署时间:本文中部署的启用了 AI 的应用程序需要一系列连接的服务才能运行。 部署可能需要 15 分钟以上才能完成。 在学习本教程时,请相应地规划好你的时间。
模型可用性:示例应用程序使用 Azure OpenAI 服务部署模块
gpt-4o
和text-embedding-ada-002
,这些模块可能并非在所有 Azure 区域都可用。有关可用性的详细信息,请参阅 Azure OpenAI 服务模型并选择所需的部署区域。 为获得最佳效果,请考虑使用以下区域之一:美国东部、美国东部 2、美国中北部、美国中南部、瑞典中部、美国西部或美国西部 3。
先决条件
- Azure 订阅。 免费创建一个。
-
Contributor
和User Access Administrator
角色或Owner
角色。 有关详细信息,请参阅使用 Azure 门户分配 Azure 角色。 - GitHub 帐户。
- 最新版本的 Git。
- Microsoft Build of Open JDK,版本 17 或更高版本。
- Azure 开发人员命令行界面。
- Azure CLI。
- Maven。
安装
使用以下命令将示例应用程序克隆到计算机上:
git clone https://github.com/Azure-Samples/spring-petclinic-ai.git
使用以下命令导航到 spring-petclinic-ai 文件夹:
cd spring-petclinic-ai
如果尚未安装,请使用以下命令为 Azure CLI 安装
containerapp
扩展:az extension add --name containerapp --upgrade
使用以下命令安全地登录到 Azure 帐户:
az auth login
此命令会打开一个网页,你可以在该网页中输入你的 Azure 凭据进行身份验证。
部署
使用以下命令自动部署应用程序:
azd up
当出现提示时,输入 my-first-ai 作为环境名称。
之后,输入
Azure Subscription
和Azure ___location
的值,用你实际的值替换以下提示中<..>
占位符的值:? Enter a new environment name: my-first-ai ? Select an Azure Subscription to use: <SUBSCRIPTION> ? Select an Azure ___location to use: <REGION>
提供所有必需的值后,可能需要等待 15 分钟以上,以便应用程序完成部署。
部署完成后,你会看到类似于以下的输出,通知你部署成功:
(✓) Done: Resource group: rg-my-first-ai (5.977s) (✓) Done: Virtual Network: vnet-my-first-ai (7.357s) (✓) Done: Container Registry: crb36onby7z5ooc (25.742s) (✓) Done: Azure OpenAI: openai-my-first-ai (25.324s) (✓) Done: Azure AI Services Model Deployment: openai-my-first-ai/text-embedding-ada-002 (42.909s) (✓) Done: Azure AI Services Model Deployment: openai-my-first-ai/gpt-4o (44.21s) (✓) Done: Container Apps Environment: aca-env-my-first-ai (3m1.361s) (✓) Done: Container App: petclinic-ai (22.701s) INFO: Deploy finish succeed! INFO: App url: petclinic-ai.<CLUSTER>.<REGION>.azurecontainerapps.io Packaging services (azd package) (✓) Done: Packaging service petclinic-ai Deploying services (azd deploy) (✓) Done: Deploying service petclinic-ai - Endpoint: https://petclinic-ai.<CLUSTER>.<REGION>.azurecontainerapps.io/ SUCCESS: Your up workflow to provision and deploy to Azure completed in 17 minutes 40 seconds.
找到应用程序 URL。
检查输出,找到部署成功的消息,然后将 URL 复制到剪贴板中。
成功消息类似于以下输出:
INFO: Deploy finish succeed! INFO: App url: https://petclinic-ai.<CLUSTER>.<REGION>.azurecontainerapps.io
试用应用程序
使用你在上一部分结尾处复制的 URL,在 Web 浏览器中查看应用程序。
可以通过如下所示的提示与聊天机器人交互:
- 列出所有已注册的宠物主人。
- 添加新的宠物主人 Steve。
- 将 Steve 的名字更改为 Steven。
- 添加名为 Spot 的宠物。
- 列出系统中的所有兽医。
下图显示了要求应用程序向系统中添加新宠物主人的结果:
更新
试用示例时,如果想将对应用程序所做的任何更改进行部署,可以使用以下命令来发布更改:
azd package
azd deploy
清理资源
如果打算继续学习后续的教程,可能需要保留这些资源。 当你不再需要资源时,请删除资源组,这也会删除其中的资源。