Amazon Bedrock 与 Amazon SageMaker:了解 AWS 的 AI/ML 生态系统之间的差异
随着企业和组织不断利用人工智能和机器学习的力量,像亚马逊网络服务 (AWS) 这样的云服务提供商正在不断创新,推出新服务来满足这些现代需求。在本文中,我们将揭开 AWS 两大核心 AI/ML 服务的面纱:新兴的 Amazon Bedrock 和久负盛名的 Amazon SageMaker。
我们将以友好的方式,让这两款产品相互竞争。我们将对它们进行权衡,重点关注以下几个关键点:总体差异、数据保护和安全、设置难度、可定制性以及潜在用例。
公平地说,Amazon Bedrock 尚未面向大众推出。目前,它仅面向部分客户和合作伙伴推出。不过不用担心,我们已经收集了足够的信息,可以将其与 SageMaker 进行对决。自 2023 年 9 月 28 日起,Amazon Bedrock 已在美国东部(弗吉尼亚北部)和美国西部(俄勒冈)的 AWS 区域全面开放
一般差异
亚马逊基岩
Amazon Bedrock 是一项完全托管的服务,提供对 Amazon/AWS 和知名 AI 初创公司预先训练的基础模型的访问。它不仅拥有一系列令人印象深刻的功能,还无需管理底层基础设施,并能无缝融入 AWS 服务环境。
Amazon Bedrock 功能概述:
多样化的基础模型: Amazon Bedrock 提供一系列预先训练的基础模型,相比其他通常仅提供文本基础模型的 AI 服务,其功能显著提升。这些模型包括用于文本摘要和生成的 Amazon Titan、用于多语言文本生成的 Jurassic-2、用于深度对话和内容创作的 Claude 2、用于商业应用程序文本生成的 Command and Embed 以及用于图像生成的 Stable Diffusion。
Amazon Bedrock 代理:代理允许开发者构建生成式 AI 系统,该系统能够通过基础模型 (FM) 私密安全地整合数据并与内部 API 集成,无需训练模型。除了生成文本或聊天之外,FM 还可以完成复杂的任务。
无服务器体验: Bedrock 是无服务器的,这意味着无需管理任何服务器或基础设施。用户只需与一个简单的 API 交互:提供输入并指定要使用的模型,Bedrock 就会提供输出。就是这么简单。
轻松的模型定制: Bedrock 支持通过微调轻松定制模型。客户只需将 Bedrock 指向 S3 存储桶中的几个带标签的示例,该服务即可针对特定任务对模型进行微调。您只需提供几十个提示/响应示例,即可开始使用。
数据隐私:用户数据不会被用于训练底层基础模型。所有数据均经过加密,不会离开用户的虚拟私有云 (VPC)。此功能对于基础模型在实际生产环境中的应用而言,是一个重要的里程碑。
服务集成: Bedrock 与其他 AWS 服务无缝集成,包括 SageMaker Experiments(用于测试不同模型)和 Pipelines(用于大规模管理基础模型)。
亚马逊 SageMaker
另一方面,Amazon SageMaker 是一项全面的服务,允许数据科学家和开发人员构建、训练和部署机器学习模型,以扩展用例。SageMaker 支持完整的机器学习生命周期,提供工具来标记和准备数据、选择算法、训练模型、调整和优化模型以进行部署、进行预测并采取行动。
Amazon SageMaker 附带一项名为“JumpStart”的功能,其功能与产品名称相符。它通过提供预构建的解决方案和经过训练的模型来加速机器学习项目,使用户能够更轻松地启动项目。对于希望快速上手、无需重复劳动的开发人员来说,这项功能无疑是一大福音。
Amazon SageMaker 功能概述:
全面的机器学习生命周期支持: Amazon SageMaker 支持机器学习过程的每个步骤,从数据标记和准备到模型部署和监控。
内置算法和框架: Amazon SageMaker 提供各种内置算法和框架,允许用户选择最适合自己需求的算法和框架,而无需从头开始构建所有内容。
自动模型调整: Amazon SageMaker 通过调整数千种不同的算法参数组合来自动调整模型,从而获得最优模型。
使用 SageMaker Studio 进行训练和推理: SageMaker Studio 提供了一个基于 Web 的单一可视化界面,您可以在其中执行所有 ML 开发步骤,从而更轻松地构建、训练和调整机器学习模型。
托管 Spot 训练: Amazon SageMaker 托管 Spot 训练允许用户使用 Amazon EC2 Spot 实例来训练 ML 模型,与按需实例相比,可节省高达 90% 的成本。
数据保护和安全要求
Bedrock 和 SageMaker 都提供了 AWS 生态系统固有的强大安全功能。然而,由于底层架构存在显著差异,这些服务在数据管理方面存在差异,这可能会影响您的用例。
借助 Amazon SageMaker,客户可以完全掌控其数据和底层基础设施。这意味着用户对数据的处理位置拥有完全的权限。他们可以加密静态数据和传输中的数据,通过身份和访问管理 (IAM) 角色管理数据访问,并通过 AWS 强大的合规性产品满足法规要求。用户还可以在其虚拟私有云 (VPC) 中使用 SageMaker 来实现网络级别的控制。对于对数据安全有严格要求的客户来说,这种级别的控制至关重要。
另一方面,Amazon Bedrock 作为一项托管服务,在 AWS 环境范围内处理数据。虽然这意味着用户无需担心基础设施管理,但也意味着他们对数据处理位置的直接控制权有所减弱。尽管如此,Bedrock 确保不会使用任何用户数据来训练底层基础模型,并且所有数据都经过加密,不会离开用户的 VPC。然而,对安全性要求极高的组织可能需要仔细评估这些因素。
虽然这两种服务都提供了强大的安全功能,但最终决定可能取决于您的组织需要对数据和基础设施进行多少直接控制。
努力设置
Bedrock 的设置完全托管,预计比 SageMaker 所需的工作量更少。用户只需选择合适的预训练基础模型,根据自己的数据进行自定义,即可开始使用。
相反,尽管 SageMaker 拥有强大的用户体验,但由于其功能集庞大,设置起来需要更多精力。用户需要准备数据、选择或创建算法、训练模型,然后部署模型。此外,与 Bedrock 相比,有效使用 SageMaker 需要更多的技术经验和额外的基础设施管理。
可定制性
SageMaker 在可定制性方面表现出色,它允许您使用自己的算法、内置算法,或从 AWS Marketplace 或第三方提供的众多算法中进行选择。您可以根据特定需求对这些模型进行微调。这意味着,SageMaker 更适合深入细节的需求,因为您可以使用任何可用的开源大型语言模型 (LLM) 并根据自己的偏好进行训练。
相比之下,Bedrock 的可定制性似乎不如 SageMaker 灵活。虽然它允许用户使用自己的数据定制基础模型,但 Bedrock 仅附带默认的基础语言模型,尽管具有微调功能。
用例
Bedrock 非常适合那些需要快速获得高级 AI 功能,且无需构建模型或管理基础架构的组织。用例包括创意内容生成、对话系统创建、文本摘要、多语言文本创建以及高级图像生成任务。
SageMaker 适用于更广泛的机器学习任务,这些任务需要对模型创建、训练和部署过程进行精细控制。它非常适合预测分析、推荐系统、异常检测或任何其他需要自定义机器学习模型的任务。
成本
在成本方面,Amazon Bedrock 可能比 Amazon SageMaker 更具优势。由于 Bedrock 是一项完全托管的服务,它抽象了大部分基础设施管理工作,从而有可能降低运营成本。此外,由于它是无服务器的,您只需为实际使用的资源付费。这与 SageMaker 不同,SageMaker 即使在不使用时也可能需要维护专用资源。
具体来说,Amazon Bedrock 的定价模型基于使用量,根据基础模型处理的令牌数量和微调所需的计算时间收费。这意味着成本会根据您的需求直接调整。
结论
Amazon Bedrock 和 Amazon SageMaker 都是 AWS AI/ML 服务领域的强大工具。选择哪款工具取决于您的具体需求。如果您需要快速集成高级 AI 功能且无需进行大量定制,那么 Bedrock 是您的最佳选择。但如果您的用例需要深度定制,并且您愿意投入更多精力来设置和管理模型训练流程,那么 SageMaker 会是更合适的选择。
比较链接:https://dev.to/aws-builders/amazon-bedrock-vs-amazon-sagemaker-understanding-the-difference-between-awss-aiml-ecosystem-5364