以下可部署架构自动在 IBM Cloud 上部署示例 gen AI 模式,包括所有底层 IBM Cloud 和 WatsonX 基础架构。此架构实现了 IBM Cloud 上 watsonx gen AI Pattern 部署的最佳实践,如参考架构中所述。
这种可部署的架构为信任、可观察性、安全性和法规遵从性提供了全面的基础。该架构配置 IBM Cloud 帐户以与合规性设置保持一致。它还部署密钥管理和机密管理服务以及基础设施来支持持续集成 (CI)、持续交付 (CD) 和持续合规性 (CC) 管道,从而实现应用程序生命周期的安全管理。它还部署 WatsonX 服务套件和 IBM Cloud Elasticsearch 以促进 RAG 模式。这些管道有助于应用程序的部署、检查漏洞和可审计性,并帮助确保在 IBM Cloud 上安全且值得信赖地部署生成式 AI 应用程序。
此可部署架构有两种变体:
基本变化:
标准偏差:
此可部署架构旨在展示通过 IBM Cloud Projects 实现检索增强生成应用程序的完全自动化部署。它为您在 IBM Cloud 上自己的 watsonx 应用程序提供了灵活且可定制的基础。此架构默认部署以下示例应用程序。
通过使用此架构,您可以加速部署并对其进行定制以满足您的业务需求和企业目标。
该架构可以帮助您实现以下目标:
在部署可部署架构之前,请确保完成以下操作:
重要的
您必须使用与用户关联的 API 密钥。您不能使用服务 ID 密钥或受信任的配置文件。
复制 API 密钥的值。您在以下步骤中需要它。
在测试或评估环境中,您可以授予以下服务的管理员角色
User API key creator
角色,因为它对于成功的 OpenShift 集群部署是必需的。要限制生产环境的访问范围,请参阅此可部署架构的权限选项卡中的最低权限级别。
gpg --gen-key
创建或获取签名密钥(如果未过期,您可以使用以前生成的密钥)。gpg --export-secret-key <email address> | base64
导出签名密钥gpg --export-secret-key <email address> | base64
。有关存储密钥的更多信息,请参阅生成 GPG 密钥。添加名称和描述。
为项目选择区域和资源组。例如,出于评估目的,您可以选择距离您最近的区域和默认资源组。
有关企业帐户结构的更多信息,请参阅管理中心帐户白皮书。
输入配置名称。例如,“RAG”、“dev”或“prod”。该名称可以帮助您稍后匹配您的部署目标。
您现在可以通过设置变量来创建配置。
从“安全”面板中,选择要用于部署架构的身份验证方法。
添加开始之前中先决条件中的 API 密钥。
在“配置”部分的“安全” > “身份验证”选项卡中,选择 API 密钥。
从“必填”选项卡中输入必填字段的值。
查看“可选”选项卡中可选字段的值:
signing_key
变量。单击“保存” 。验证输入值后,按钮将更改为“查看堆栈配置” 。
您可以通过两种方式通过 IBM Cloud 控制台部署堆叠式可部署架构:
通过使用自动部署:该部署方法对于演示和非生产环境非常有用。通过自动部署,所有堆栈成员配置都会经过验证,然后得到批准和部署。
您可以通过单击管理>设置来检查项目的自动部署设置。通过打开自动部署,您可以启用项目中所有配置的设置。
通过单独部署每个成员配置。手动方法适用于拥有生产环境的项目。您可以在运行自动化之前查看每个成员配置中的更改。
提示
批准配置后,您可能会收到错误消息“无法验证您的配置”。要解决该问题,请刷新浏览器。
您可能会在项目配置的“需要注意”列中看到“新版本可用”通知。您可以忽略这些消息,因为它们不会阻止您部署堆栈。
单击查看堆栈配置旁边的选项图标,然后单击验证。
如果项目中的自动部署设置处于关闭状态,则仅验证准备好的成员配置。
在您的项目中,单击“配置”选项卡。
如果堆栈的第一个成员配置 ( Account Infrastructure Base
) 未标记为Ready to validate ,请刷新浏览器中的页面。
单击Account Infrastructure Base
行中的草稿状态中的验证。
批准配置并在验证成功完成后单击“部署” 。
部署初始成员配置后,您可以同时验证和部署剩余的成员配置。对架构中的每个成员配置重复这些部署步骤。
检索增强生成模式可部署架构现已部署在目标帐户中。
部署架构后,示例应用程序将在新配置的 DevOps 服务中启动。
要监控应用程序的构建和部署,请执行以下步骤:
resource_group_name
输入。Workload - Sample RAG App Configuration
行。Outputs
选项卡中,已部署应用程序的 URL 列在sample_app_public_url
输出下。 为了最大限度地降低成本,自动化部署了 Secrets Manager 的试用定价计划。您只能创建一个 Secrets Manager 试用实例。您可以从堆栈的可选设置部署 Secrets Manager 的标准计划实例。
要修复此问题,请删除试用实例。删除后,还将服务从回收状态中删除。
在 IBM Cloud 中,当您删除资源时,它不会立即消失。相反,它会进入回收状态,在被永久删除之前会保留很短的时间(通常为 7 天)。在回收状态期间,您可以根据需要恢复资源。
运行以下 IBM Cloud CLI 命令将服务从回收状态删除。
第一个命令列出所有处于回收状态的资源。
# List all the resources in reclamation state with its reclamation ID
ibmcloud resource reclamations
查找 Secrets Manager 服务的回收 ID。在以下命令中使用该 ID。
ibmcloud resource reclamation-delete < reclamation-id >
当您的 ALM/工具链部署超过 14 天并且应用程序配置 DA 已取消部署/重新部署时,可能会出现此特定问题。这是因为需要持续交付服务来创建和删除管道属性,并且在 CD 服务可能不存在时进行部署。我们正在研究针对此错误的长期解决方案,但与此同时,可以通过确保预期创建工具链的资源组中存在 CD 服务来缓解该错误。
该问题将出现在代码引擎和 OCP 变体中的Workload - Sample RAG App Configuration
可部署架构中。该错误通常包含以下消息:
"errors": [
{
"code": 403,
"message": "Continuous Delivery service required"
}
]
这种架构可以进行许多定制。这些是一些常见的选项。
每个成员配置都包含大量的输入参数。您可以编辑配置来更改默认值。
例如,通过编辑成员配置,您可以完成以下操作:
要编辑成员配置,请从成员配置行的选项图标中选择编辑。
您可以从堆栈中删除其他配置不依赖的成员配置。
您可以在此架构中删除以下配置:
要删除成员配置,请从成员配置行的选项图标中选择从堆栈中删除。
您可以按照以下步骤在堆栈级别添加或删除输入和输出变量:
您可以按照以下步骤有选择地配置可观测性资源,例如 Activity Tracker 路由和目标以及 Cloud Monitoring 实例:
cloud_logs_provision
):设置此选项以供应或跳过供应 IBM Cloud Logs 实例。cloud_monitoring_provision
):设置此选项以供应或跳过供应 IBM Cloud Monitoring 实例。enable_at_event_routing_to_cos_bucket
):设置此项以启用或禁用从活动跟踪器到对象存储存储桶的事件路由。enable_at_event_routing_to_cloud_logs
):设置此选项可启用或禁用从 Activity Tracker 到 Cloud Logs 的事件路由。修改项目中的可部署架构后,您可以通过私有 IBM Cloud 目录与其他人共享。要共享您的可部署架构,请按照向您的企业共享您的可部署架构中的步骤操作。
您可以使用此示例自动化的代码作为指南来自定义示例应用程序以满足您的要求。该代码可从 https://github.com/terraform-ibm-modules/terraform-ibm-rag-sample-da 获取。
要使用您自己的应用程序,请从堆栈中删除Workload - Sample RAG App Configuration
成员配置。此成员配置特定于默认示例应用程序。
清理配置
如果您计划销毁所有 Watson 资源,则此步骤是可选的。作为取消部署 Watson 资源的一部分,应用程序创建的工件将被删除。
按照 cleanup.md 文件中概述的步骤删除示例应用程序的配置。
删除 CI 工具链创建的资源
在项目中取消部署堆栈时,工具链创建的以下资源不会被破坏。
删除项目。
要取消部署由可部署架构创建的基础架构,请按照 IBM Cloud 文档中删除项目中的步骤操作。