Google Cloud 架构良好的框架中的本文档介绍了一些原则和建议,可帮助您设计、构建和管理 AI 和机器学习工作负载, Google Cloud 以满足您的运营、安全性、可靠性、费用和性能目标。
本文档的目标受众群体包括在 Google Cloud中设计、构建、部署和维护 AI 和机器学习工作负载的决策者、架构师、管理员、开发者和运维人员。
以下页面介绍了适用于“良好架构框架”的每个支柱的 AI 和机器学习专用原则和建议:
贡献者
作者:
- Benjamin Sadik | AI 和机器学习专家客户工程师
- Filipe Gracio,博士 | 客户工程师
- Isaac Lo | AI 业务发展经理
- Kamilla Kurta | GenAI/ML 专家客户工程师
- Mohamed Fawzi | 比荷卢安全和合规性主管
- Rick (Rugui) Chen | AI Infrastructure Solutions Architect
- Sannya Dang | AI 解决方案架构师
其他贡献者:
- Daniel Lees | 云安全架构师
- Gary Harmson | 客户工程师
- Jose Andrade | 企业基础架构客户工程师
- Kumar Dhanagopal | 跨产品解决方案开发者
- Marwan Al Shawi | 合作伙伴客户工程师
- Nicolas Pintaux | 客户工程师,应用现代化改造专家
- Radhika Kanakam | Cloud GTM 高级项目经理
- Ryan Cox | 首席架构师
- Stef Ruinard | 生成式 AI 现场解决方案架构师
- Wade Holmes | 全球解决方案总监
- Zach Seils | 网络专家
AI 和机器学习视角:卓越运营
良好架构框架:AI 和机器学习视角中的这篇文档简要介绍了一些原则和建议,可帮助您在 Google Cloud上构建和运行强大的 AI 和机器学习系统。这些建议可帮助您设置可观测性、自动化和可伸缩性等基本元素。本文档中的建议与 Google Cloud 良好架构框架的卓越运营支柱保持一致。
在 AI 和机器学习领域实现卓越运营意味着能够无缝部署、管理和治理复杂的 AI 和机器学习系统和流水线,从而助力组织实现战略目标。卓越运营可让您高效应对变化、降低运营复杂性,并确保运营始终与业务目标保持一致。
为模型开发奠定坚实基础
打下坚实的基础,从问题定义到部署简化模型开发流程。这样的基础可确保您的 AI 解决方案基于可靠、高效的组件和选项构建而成。这种基础有助于您快速轻松地发布更改和改进。
请考虑以下建议:
- 定义 AI 系统要解决的问题以及您希望的结果。
- 确定并收集训练和评估模型所需的相关数据。然后,清理和预处理原始数据。实施数据验证检查,以确保数据质量和完整性。
- 为任务选择合适的机器学习方法。在设计模型的结构和参数时,请考虑模型的复杂性和计算要求。
- 采用适用于代码、模型和数据的版本控制系统。
自动执行模型开发生命周期
从数据准备和训练到部署和监控,自动化功能可帮助您提高运营质量和效率。自动化功能可实现无缝、可重复且无错误的模型开发和部署。自动化可最大限度地减少手动干预,加快发布周期,并确保各个环境之间的一致性。
请考虑以下建议:
- 使用托管式流水线编排系统编排和自动执行机器学习工作流。该流水线必须处理开发生命周期的主要步骤:准备、训练、部署和评估。
- 为模型开发生命周期实现 CI/CD 流水线。这些流水线应自动构建、测试和部署模型。流水线还应包含连续训练,以便根据需要使用新数据重新训练模型。
- 实现分阶段发布方法(例如 Canary 版部署或 A/B 测试),以安全可控的方式发布模型。
实现可观测性
实现可观测性后,您可以深入了解模型性能、数据漂移和系统运行状况。实现持续监控、提醒和日志记录机制,以主动发现问题、触发及时响应并确保运营连续性。
请考虑以下建议:
- 为模型实现永久性和自动化的性能监控。 使用指标和成功标准持续评估部署后的模型。
- 监控部署端点和基础架构,确保服务可用。
- 根据业务专用阈值和异常情况设置自定义提醒,以确保及时发现和解决问题。
- 使用可解释 AI 技术来理解和解读模型输出。
打造卓越运营文化
卓越运营的基础是人员、文化和专业实践。团队和企业的成败取决于贵组织在多大程度上能够有效实施可确保可靠快速地开发 AI 功能的方法。
请考虑以下建议:
- 将自动化和标准化作为核心开发方法。使用 MLOps 技术简化工作流并高效管理机器学习生命周期。自动执行任务,腾出时间进行创新,并标准化流程,以实现一致性并简化问题排查。
- 优先考虑持续学习和改进。提供学习机会,让团队成员能够提升技能,及时了解 AI 和机器学习方面的最新进展。鼓励进行实验并定期进行回顾,以找出需要改进的地方。
- 培养负责任和承担责任的文化。明确定义角色,让每个人都能了解自己的贡献。为团队赋能,让他们能够使用透明的指标在边界内做出决策并跟踪进度。
- 将 AI 伦理和安全融入企业文化。将伦理考虑因素纳入机器学习生命周期的每个阶段,以便优先考虑负责任的系统。制定明确的伦理原则,并就与伦理道德相关的挑战开展公开讨论。
实现可伸缩的设计
构建 AI 解决方案,以应对不断增长的数据量和用户需求。 使用可伸缩的基础架构,以便模型能够随着项目扩展而进行调整并实现最佳性能。
请考虑以下建议:
- 规划容量和配额。预测未来增长情况,并相应地规划基础架构容量和资源配额。
- 为峰值事件做好准备。确保您的系统能够在高峰活动期间处理流量或工作负载的突然激增。
- 扩缩 AI 应用以用于生产环境。设计为支持横向扩缩,以适应工作负载的增加。使用 Ray on Vertex AI 等框架在多台机器上并行执行任务。
- 在适当的情况下使用托管式服务。使用有助于您扩容的服务,同时最大限度地减少手动干预的运维开销和复杂性。
贡献者
作者:
- Sannya Dang | AI 解决方案架构师
- Filipe Gracio,博士 | 客户工程师
其他贡献者:
- Kumar Dhanagopal | 跨产品解决方案开发者
- Marwan Al Shawi | 合作伙伴客户工程师
- Ryan Cox | 首席架构师
- Stef Ruinard | 生成式 AI 现场解决方案架构师
AI 和机器学习视角:安全
良好架构框架:AI 和机器学习视角中的本文档概要介绍了一些原则和建议,以确保您的 AI 和机器学习部署符合贵组织的安全和合规性要求。本文档中的建议与 Google Cloud 良好架构框架的安全支柱保持一致。
安全部署 AI 和机器学习工作负载是一项关键要求,尤其是在企业环境中。为满足此要求,您需要采用从 AI 和机器学习解决方案的初始概念设计开始,延伸到开发、部署和持续运营的全面安全方法。 Google Cloud 提供强大的工具和服务,旨在帮助您保护 AI 和机器学习工作负载。
明确定义目标和要求
与在开发后添加控制措施相比,在设计和开发流程的早期集成所需的安全和合规控制措施更为容易。从设计和开发流程开始,就做出适合您的具体风险环境和具体业务重点的决策。
请考虑以下建议:
- 从一开始就识别潜在的攻击途径,并采用安全和合规性视角。在设计和改进 AI 系统时,请留意受攻击面、潜在风险以及您可能面临的义务。
- 将 AI 和机器学习安全工作与业务目标保持一致,并确保安全是整体策略中不可或缺的一部分。了解您的安全选择对主要业务目标的影响。
确保数据安全并防止丢失或误处理
数据是一种宝贵且敏感的资产,必须妥善保护。数据安全有助于您维护用户信任、实现业务目标并满足合规性要求。
请考虑以下建议:
- 请勿收集、保留或使用对实现业务目标没有严格必要的数据。如果可能,请使用合成数据或完全匿名化数据。
- 监控数据收集、存储和转换。维护所有数据访问和操作活动的日志。这些日志可帮助您审核数据访问情况、检测未经授权的访问尝试,以及防止不必要的访问。
- 根据用户角色实现不同级别的访问权限(例如无访问权限、只读或写入)。确保根据最小权限原则分配权限。用户必须仅拥有执行其角色活动所需的最低权限。
- 实施加密、安全边界和数据移动限制等措施。这些措施有助于您防范数据渗漏和数据丢失。
- 防范机器学习训练系统的数据中毒。
确保 AI 流水线安全可靠,防范篡改
您的 AI 和机器学习代码以及代码定义的流水线是关键资产。未经保护的代码可能会被篡改,这可能会导致数据泄露、违反合规性要求以及关键业务活动中断。确保 AI 和机器学习代码的安全有助于确保模型和模型输出的完整性和价值。
请考虑以下建议:
- 在模型开发过程中,采用安全编码实践(例如依赖项管理或输入验证和清理)来防范漏洞。
- 保护您的流水线代码和模型工件(例如文件、模型权重和部署规范)免遭未经授权的访问。根据用户角色和需求,为每个工件实现不同的访问权限级别。
- 强制执行资产和流水线运行的沿袭和跟踪。此强制执行功能可帮助您满足合规性要求,并避免生产系统遭到入侵。
使用安全的工具和工件在安全的系统上部署
确保您的代码和模型在具有强大访问控制系统的安全环境中运行,并对在该环境中部署的工具和工件提供安全保障。
请考虑以下建议:
- 在具有适当访问权限控制措施且可防范未经授权的使用或操纵的安全环境中训练和部署模型。
- 针对 AI 专用工件(例如模型和软件包)遵循标准的软件工件的供应链级别 (SLSA) 指南。
- 请优先使用专为 AI 工作负载设计且经过验证的预构建容器映像。
保护和监控输入
AI 系统需要输入信息才能进行预测、生成内容或自动执行操作。某些输入可能会造成风险或被用作攻击途径,因此必须进行检测和清理。尽早检测潜在的恶意输入有助于确保 AI 系统安全无虞并按预期运行。
请考虑以下建议:
- 实施安全做法,为生成式 AI 系统开发和管理提示,并确保对提示进行筛查以防范有害意图。
- 监控预测性或生成式系统的输入,以防止端点过载或系统无法处理的问题。
- 确保只有部署的系统的预期用户才能使用该系统。
监控、评估输出并做好回应准备
AI 系统之所以能够创造价值,是因为它们生成的输出可以增强、优化或自动执行人类决策。为了确保 AI 系统和应用的完整性和可信性,您需要确保输出安全且在预期参数范围内。您还需要制定突发事件响应计划。
请考虑以下建议:
- 监控 AI 和机器学习模型在生产环境中的输出,并找出任何性能、安全和合规性问题。
- 通过实现可靠的指标和安全措施(例如在预测模型中识别超出范围的生成式回答或极端输出)来评估模型性能。收集用户对模型性能的反馈。
- 实施健全的提醒和突发事件响应流程,以解决任何潜在问题。
贡献者
作者:
- Kamilla Kurta | GenAI/ML 专家客户工程师
- Filipe Gracio,博士 | 客户工程师
- Mohamed Fawzi | 比荷卢安全和合规性主管
其他贡献者:
- Daniel Lees | 云安全架构师
- Kumar Dhanagopal | 跨产品解决方案开发者
- Marwan Al Shawi | 合作伙伴客户工程师
- Wade Holmes | 全球解决方案总监
AI 和机器学习视角:可靠性
架构良好的框架:AI 和机器学习视角中的本文档简要介绍了在 Google Cloud上设计和运行可靠 AI 和机器学习系统的原则和建议。该课程探讨了如何将高级可靠性实践和可观测性集成到架构蓝图中。本文档中的建议与 Google Cloud 良好架构框架的可靠性支柱保持一致。
在快速发展的 AI 和机器学习领域,可靠的系统对于确保客户满意度和实现业务目标至关重要。您需要 AI 和机器学习系统能够强大、可靠且具有适应性,以满足预测性机器学习和生成式 AI 的独特需求。为了应对 MLOps 的复杂性(从开发到部署再到持续改进),您需要采用以可靠性为先的方法。 Google Cloud 提供符合站点可靠性工程 (SRE) 原则的专用 AI 基础架构,为可靠的 AI 和机器学习系统奠定了坚实的基础。
确保基础架构可扩缩且具有高可用性
通过采用可伸缩且可靠的架构,您可以让应用能够在不中断服务或降低性能的情况下处理不同级别的需求。这意味着,在基础架构中断和流量非常高的情况下,用户仍可使用您的 AI 服务。
请考虑以下建议:
- 设计具有自动和动态扩缩功能的 AI 系统,以应对需求波动。这有助于确保即使在流量激增时也能获得理想的性能。
- 通过负载测试和性能监控,主动管理资源并预测未来需求。利用历史数据和预测分析,就资源分配做出明智的决策。
- 通过在 Google Cloud 中采用多可用区和多区域部署原型并实现冗余和复制,从而实现高可用性和容错性。
- 将传入流量分布到 AI 和机器学习服务和端点的多个实例。负载均衡有助于防止任何单个实例过载,并有助于确保一致的性能和可用性。
使用模块化和松散耦合的架构
为了让 AI 系统能够对各个组件的故障具有弹性,请使用模块化架构。例如,将数据处理和数据验证组件设计为单独的模块。当某个组件发生故障时,模块化架构有助于最大限度地缩短停机时间,让您的团队能够更快地开发和部署修复程序。
请考虑以下建议:
- 将 AI 和机器学习系统拆分为小型自包含模块或组件。这种方法有助于提高代码可重用性,简化测试和维护,并让您能够独立开发和部署各个组件。
- 设计具有明确定义的接口的松散耦合模块。这种方法可最大限度地减少依赖项,让您在不影响整个系统的情况下进行独立更新和更改。
- 做好优雅降级的规划。当某个组件发生故障时,系统的其他部分必须继续提供足够的功能级别。
- 使用 API 在模块之间创建明确的边界,并隐藏模块级实现细节。通过这种方法,您可以更新或替换各个组件,而不会影响与系统其他部分的互动。
构建自动化 MLOps 平台
借助自动化 MLOps 平台,模型生命周期的各个阶段和输出更可靠。通过促进一致性、松散耦合和模块化,并将操作和基础架构表示为代码,您可以消除脆弱的手动步骤,并维护更强大、更可靠的 AI 和机器学习系统。
请考虑以下建议:
- 自动执行模型开发生命周期,从数据准备和验证到模型训练、评估、部署和监控。
- 以代码形式管理基础架构 (IaC)。这种方法支持高效的版本控制、必要时快速回滚和可重复部署。
- 使用相关数据验证模型是否按预期运行。 自动监控模型的性能,并针对意外输出构建适当的提醒。
- 验证 AI 和机器学习流水线的输入和输出。例如,验证数据、配置、命令参数、文件和预测。为意外值或不允许的值配置提醒。
- 为模型端点采用受管理的版本控制策略。这种策略支持增量发布,并能在出现问题时快速恢复。
通过数据和模型治理来维护信任和控制
AI 和机器学习系统的可靠性取决于数据和模型的可信度和治理能力。AI 输出可能会以静默的方式不符合预期。例如,输出可能在形式上是一致的,但可能不正确或不受欢迎。通过实现可追溯性和强大的治理,您可以确保输出可靠且值得信赖。
请考虑以下建议:
- 使用数据和模型目录高效跟踪和管理您的素材资源。为方便跟踪和审核,请在整个生命周期内全面记录数据和模型版本。
- 实施严格的访问控制和审核轨迹,以保护敏感数据和模型。
- 解决 AI 偏见这一关键问题,尤其是在生成式 AI 应用中。为了赢得信任,请努力提高模型输出的透明度和可解释性。
- 自动生成特征统计信息并实现异常检测,以主动识别数据问题。为确保模型可靠性,请建立机制来检测和减少数据分布变化的影响。
实施全面的 AI 和机器学习可观测性和可靠性实践
为了不断改进 AI 运维,您需要制定有意义的可靠性目标并衡量进度。可观测性是可靠系统的基础要素。借助可观测性,您可以管理正在进行的操作和关键事件。良好实现的可观测性有助于您为用户构建和维护可靠的服务。
请考虑以下建议:
- 跟踪处理器(CPU、GPU 和 TPU)以及内存用量、网络延迟时间和磁盘用量等其他资源的基础架构指标。执行负载测试和性能监控。使用监控中的测试结果和指标来管理 AI 和机器学习系统的扩缩和容量。
- 设定可靠性目标并跟踪应用指标。衡量您构建的 AI 应用的吞吐量和延迟时间等指标。监控应用和公开端点的使用模式。
- 建立特定于模型的指标(例如准确性或安全指标),以评估模型的可靠性。跟踪这些指标在一段时间内的变化,以发现任何偏移或降级。如需高效地进行版本控制和自动化,请将监控配置定义为代码。
- 定义和跟踪业务级指标,了解模型和可靠性对业务成效的影响。如需衡量 AI 和 ML 服务的可靠性,不妨考虑采用 SRE 方法并定义服务等级目标 (SLO)。
贡献者
作者:
- Rick (Rugui) Chen | AI Infrastructure Solutions Architect
- Filipe Gracio,博士 | 客户工程师
其他贡献者:
- Jose Andrade | 企业基础架构客户工程师
- Kumar Dhanagopal | 跨产品解决方案开发者
- Marwan Al Shawi | 合作伙伴客户工程师
AI 和机器学习视角:费用优化
架构良好的框架:AI 和机器学习视角中的本文档概述了在整个机器学习生命周期中优化 AI 系统费用的原则和建议。通过采用积极且明智的成本管理方法,贵组织可以充分发挥 AI 和机器学习系统的潜力,同时保持财务纪律。本文档中的建议与 Google Cloud 良好架构框架的费用优化支柱保持一致。
AI 和机器学习系统可以帮助您从数据中发掘有价值的分析洞见和预测能力。例如,您可以减少内部流程中的摩擦、改善用户体验,以及获得更深入的客户洞察。云端提供大量资源,可让您快速实现价值,而无需为 AI 和机器学习工作负载进行大量前期投资。为了最大限度地提高业务价值并使支出与业务目标保持一致,您需要了解费用驱动因素、主动优化费用、设置支出控制措施,并采用 FinOps 做法。
定义和衡量费用和回报
如需在 Google Cloud中有效管理 AI 和机器学习费用,您必须定义和衡量云资源的支出以及 AI 和机器学习计划的业务价值。 Google Cloud 提供全面的账单和费用管理工具,可帮助您精细跟踪支出。您可以衡量的业务价值指标包括客户满意度、收入和运营成本。通过为成本和业务价值建立具体的指标,您可以就资源分配和优化做出明智的决策。
请考虑以下建议:
- 为 AI 和机器学习项目制定明确的业务目标和关键绩效指标 (KPI)。
- 使用 Google Cloud 提供的结算信息来实现费用监控和报告流程,这有助于您将费用归因于特定 AI 和机器学习活动。
- 建立信息中心、提醒和报告系统,以便根据 KPI 跟踪费用和回报。
优化资源分配
如需在 Google Cloud中为 AI 和机器学习工作负载实现成本效益,您必须优化资源分配。通过仔细调整资源分配以满足工作负载需求,您可以避免不必要的开支,并确保 AI 和机器学习系统拥有实现最佳性能所需的资源。
请考虑以下建议:
- 使用自动扩缩功能动态调整训练和推理资源。
- 从小型模型和数据开始。尽可能以较小规模测试假设,从而节省费用。
- 通过实验了解您的计算需求。根据您的机器学习要求,合理调整用于训练和服务的资源规模。
- 采用 MLOps 实践,减少重复性工作、人工流程和低效的资源分配。
强制执行数据管理和治理做法
有效的数据管理和治理做法在成本优化中发挥着至关重要的作用。井然有序的数据有助于贵组织避免不必要的重复,减少获取高质量数据所需的工作量,并鼓励团队重复使用数据集。通过主动管理数据,您可以降低存储成本、提升数据质量,并确保机器学习模型的训练和运作基于最相关、最有价值的数据。
请考虑以下建议:
- 建立并采用明确定义的数据治理框架。
- 在数据提取时,将标签和相关元数据应用于数据集。
- 确保数据集可在整个组织中被发现和访问。
- 尽可能让数据集和特征在整个机器学习生命周期内可重复使用。
利用 MLOps 实现自动化和简化
采用 MLOps 实践的一个主要好处是,从技术角度和人员活动角度来看,成本会降低。自动化功能可帮助您避免重复机器学习活动,并提高数据科学家和机器学习工程师的工作效率。
请考虑以下建议:
- 提高数据收集和处理技术的自动化和标准化水平,从而减少开发工作量和时间。
- 开发自动化训练流水线,以减少手动干预的需求并提高工程师的工作效率。为流水线实现机制,以重复使用准备就绪的数据集和训练好的模型等现有资产。
- 使用 Google Cloud 中的模型评估和调优服务,以便通过更少的迭代次数提升模型性能。这样,AI 和机器学习团队就可以在更短的时间内实现更多目标。
使用托管式服务以及预训练或现有模型
利用 AI 和机器学习实现业务目标的方法有很多。采用增量方法进行模型选择和模型开发。这有助于避免每次从头开始所带来的过高费用。如需控制费用,请先采用简单的方法:使用机器学习框架、托管式服务和预训练模型。
请考虑以下建议:
- 使用笔记本环境进行探索性和快速的机器学习实验。
- 使用现有模型和预训练模型作为起点,加快模型选择和开发流程。
- 使用托管式服务训练或部署模型。AutoML 和托管式自定义模型训练服务都可以帮助降低模型训练费用。代管式服务还有助于降低模型服务基础架构的费用。
培养成本意识和持续优化的文化
营造鼓励沟通和定期审核的协作环境。这种方法有助于团队在整个机器学习生命周期中发现并实施节省费用的机会。
请考虑以下建议:
- 在整个机器学习生命周期中采用 FinOps 原则。
- 确保为 AI 和机器学习项目的所有费用和业务利益分配了明确负责的所有者。
贡献者
作者:
- Isaac Lo | AI 业务发展经理
- Filipe Gracio,博士 | 客户工程师
其他贡献者:
- Kumar Dhanagopal | 跨产品解决方案开发者
- Marwan Al Shawi | 合作伙伴客户工程师
- Nicolas Pintaux | 客户工程师,应用现代化改造专家
AI 和机器学习视角:性能优化
良好架构框架:AI 和机器学习视角中的这篇文档简要介绍了一些原则和建议,可帮助您优化 Google Cloud上的 AI 和机器学习工作负载的性能。本文档中的建议与 Google Cloud 良好架构框架的性能优化支柱保持一致。
AI 和机器学习系统可为贵组织赋予新的自动化和决策能力。这些系统的性能可能会直接影响您的业务驱动因素,例如收入、成本和客户满意度。为了充分发挥 AI 和机器学习系统的潜力,您需要根据业务目标和技术要求优化其性能。性能优化过程通常涉及某些权衡。例如,提供所需性能的设计选择可能会导致成本更高。本文档中的建议将性能置于成本等其他因素之上。
为了优化 AI 和机器学习的性能,您需要就模型架构、参数和训练策略等因素做出决策。在做出这些决策时,请考虑 AI 和机器学习系统及其部署环境的整个生命周期。例如,非常大的 LLM 可以在庞大的训练基础架构上实现高性能,但在容量受限的环境(例如移动设备)中,非常大的模型可能无法取得理想的效果。
将业务目标转化为效果目标
若要做出有助于优化性能的架构决策,请先明确一组业务目标。设计 AI 和机器学习系统,以提供支持您的业务目标和优先事项所需的技术性能。您的技术团队必须了解效果目标与业务目标之间的映射。
请考虑以下建议:
- 将业务目标转化为技术要求:将 AI 和机器学习系统的业务目标转化为具体的技术性能要求,并评估未满足这些要求的影响。例如,对于用于预测客户流失情况的应用,机器学习模型应在准确率和召回率等标准指标方面表现出色,并且应用应满足低延迟时间等操作要求。
- 在模型生命周期的所有阶段监控性能:在模型部署后的实验和训练期间,监控关键绩效指标 (KPI),并观察与业务目标存在的任何偏差。
- 自动执行评估,使其可重复且标准化:借助标准化且可比较的实验评估平台和方法,工程师可以加快性能改进速度。
运行和跟踪频繁的实验
要将创新和创造力转化为效果提升,您需要营造一种支持实验的文化,并打造一个支持实验的平台。由于 AI 和机器学习技术在不断快速发展,因此性能改进是一个持续的过程。为了保持快速迭代的过程,您需要将实验环境与训练和服务平台分开。制定标准化且可靠的实验流程至关重要。
请考虑以下建议:
- 构建实验环境:若要提升性能,需要专用的强大交互式环境,以支持机器学习流水线的实验和协作开发。
- 将实验作为一种文化植入:在任何生产环境部署之前运行实验。迭代发布新版本,并始终收集性能数据。使用不同的数据类型、特征转换、算法和超参数进行实验。
构建和自动执行训练和服务
训练和部署 AI 模型是 AI 服务的核心组成部分。您需要强大的平台和实践,以支持快速可靠地创建、部署和提供 AI 模型。请花些时间和精力,为您的核心 AI 训练和服务任务创建基础平台。这些基础平台有助于您的团队缩短工作时间和减少工作量,并在中长期内提高输出质量。
请考虑以下建议:
- 使用训练服务的 AI 专用组件:此类组件包括高性能计算组件和 MLOps 组件,例如特征存储区、模型注册表、元数据存储区和模型性能评估服务。
- 使用预测服务的 AI 专用组件:此类组件可提供高性能且可伸缩的资源,支持特征监控,并实现模型性能监控。为防止和管理性能下降,请实施可靠的部署和回滚策略。
将设计选项与性能要求相匹配
在做出设计决策以提升性能时,请仔细评估这些决策是否符合您的业务要求,还是会造成浪费和适得其反。如需选择合适的基础架构、模型或配置,请找出性能瓶颈并评估它们与性能指标之间的关联。例如,即使在功能强大的 GPU 加速器上,您的训练任务也可能会因存储层的数据 I/O 问题或模型本身的性能限制而出现性能瓶颈。
请考虑以下建议:
- 根据性能目标优化硬件用量:为了训练和部署符合性能要求的机器学习模型,您需要优化计算层、存储层和网络层的基础架构。您必须衡量和了解影响效果目标的变量。这些变量在训练和推理阶段是不同的。
- 侧重于工作负载专用要求:将性能优化工作重点放在 AI 和机器学习工作负载的独特要求上。依赖于托管服务来确保底层基础架构的性能。
- 选择适当的训练策略:我们提供了多个预训练基础模型,并且会经常发布更多此类模型。选择可为您的任务提供最佳性能的训练策略。确定您是应构建自己的模型、根据您的数据调整预训练模型,还是使用预训练模型 API。
- 认识到效果优化策略的回报率可能会递减:如果某种特定的效果优化策略未能带来可衡量的增量业务价值,请停止采用该策略。
将效果指标与设计和配置选项相关联
为了创新、排查和调查性能问题,请在设计选择和性能结果之间建立明确的联系。除了实验之外,您还必须可靠地记录资产、部署、模型输出以及生成输出的配置和输入的谱系。
请考虑以下建议:
- 构建数据和模型谱系系统:所有已部署的资产及其效果指标都必须回溯到导致部署系统的数据、配置、代码和选择。此外,模型输出必须与特定的模型版本以及输出生成方式相关联。
- 使用可解释性工具提升模型性能:采用并标准化用于模型探索和可解释性的工具和基准。这些工具可帮助机器学习工程师了解模型行为,并提升性能或消除偏差。
贡献者
作者:
- Benjamin Sadik | AI 和机器学习专家客户工程师
- Filipe Gracio,博士 | 客户工程师
其他贡献者:
- Kumar Dhanagopal | 跨产品解决方案开发者
- Marwan Al Shawi | 合作伙伴客户工程师
- Zach Seils | 网络专家