随着最近的进展 生成式人工智能,关于如何跨不同行业使用生成式人工智能来解决特定业务问题的讨论正在进行中。 生成式人工智能是一种可以创造新内容和想法的人工智能,包括对话、故事、图像、视频和音乐。 它全部由非常大的模型支持,这些模型经过大量数据的预先训练,通常称为 基础模型 (FM)。 这些 FM 可以执行跨越多个领域的广泛任务,例如撰写博客文章、生成图像、解决数学问题、参与对话以及根据文档回答问题。 FM 的规模和通用性质使其不同于传统的 ML 模型,传统的 ML 模型通常执行特定的任务,例如分析文本的情感、对图像进行分类和预测趋势。
虽然组织希望利用这些 FM 的强大功能,但他们也希望基于 FM 的解决方案能够在自己的受保护环境中运行。 在全球金融服务、医疗保健和生命科学等受到严格监管的领域运营的组织对于在 VPC 中运行其环境有听觉和合规性要求。 事实上,很多时候,在这些环境中甚至会禁用直接互联网访问,以避免暴露于任何意外流量(包括入口和出口)。
亚马逊SageMaker JumpStart 是一个提供算法、模型和 ML 解决方案的 ML 中心。 借助 SageMaker JumpStart,ML 从业者可以从不断增长的性能最佳开源 FM 列表中进行选择。 它还提供了在您自己的中部署这些模型的能力 虚拟私有云(VPC).
在这篇文章中,我们演示了如何使用 JumpStart 来部署 法兰-T5 XXL 没有互联网连接的 VPC 中的模型。 我们讨论以下主题:
- 如何在无法访问 Internet 的 VPC 中使用 SageMaker JumpStart 部署基础模型
- 在 VPC 模式下通过 SageMaker JumpStart 模型部署 FM 的优势
- 通过 JumpStart 自定义基础模型部署的其他方法
除了 FLAN-T5 XXL 之外,JumpStart 还为各种任务提供了许多不同的基础模型。 如需完整列表,请查看 开始使用 Amazon SageMaker JumpStart.
解决方案概述
作为解决方案的一部分,我们涵盖以下步骤:
- 设置没有互联网连接的 VPC。
- 成立 亚马逊SageMaker Studio 使用我们创建的 VPC。
- 在无法访问 Internet 的 VPC 中使用 JumpStart 部署生成式 AI Flan T5-XXL 基础模型。
以下是该解决方案的架构图。
让我们逐步了解实施此解决方案的不同步骤。
先决条件
要跟进这篇文章,您需要具备以下条件:
设置没有互联网连接的 VPC
创建新的 CloudFormation 堆栈 通过使用 01_networking.yaml 模板。 此模板创建一个新的 VPC,并在两个没有 Internet 连接的可用区中添加两个私有子网。 然后,它部署网关 VPC 端点以进行访问 亚马逊简单存储服务 (Amazon S3) 以及 SageMaker 和其他一些服务的接口 VPC 终端节点,以允许 VPC 中的资源通过以下方式连接到 AWS 服务: AWS私有链接.
提供堆栈名称,例如 No-Internet
,并完成堆栈创建过程。
该解决方案的可用性不高,因为 CloudFormation 模板仅在一个子网中创建接口 VPC 终端节点,以降低按照本文中的步骤操作时的成本。
使用 VPC 设置 Studio
使用创建另一个 CloudFormation 堆栈 02_sagemaker_studio.yaml,它创建 Studio 域、Studio 用户配置文件以及 IAM 角色等支持资源。 为堆栈选择一个名称; 对于这篇文章,我们使用名称 SageMaker-Studio-VPC-No-Internet
。 提供您之前创建的 VPC 堆栈的名称 (No-Internet
)作为 CoreNetworkingStackName
参数并将其他一切保留为默认值。
等待 AWS CloudFormation 报告堆栈创建已完成。 您可以确认 Studio 域可在 SageMaker 控制台上使用。
要验证 Studio 域用户没有 Internet 访问权限, 使用 SageMaker 控制台启动 Studio。 选 文件, 全新及 终端,然后尝试访问 Internet 资源。 如下图所示,终端会一直等待资源,最终超时。
这证明 Studio 正在无法访问 Internet 的 VPC 中运行。
使用 JumpStart 部署生成式 AI 基础模型 Flan T5-XXL
我们可以通过 Studio 以及 API 部署这个模型。 JumpStart 提供了通过可从 Studio 内访问的 SageMaker 笔记本部署模型的所有代码。 在这篇文章中,我们展示了 Studio 的这种功能。
- 在 Studio 欢迎页面上,选择 快速启动 在预构建和自动化解决方案下。
- 选择下面的 Flan-T5 XXL 型号 基础模型.
- 默认情况下,它会打开 部署 标签。 展开 部署配置 部分更改
hosting instance
和endpoint name
,或添加任何其他标签。 还有一个选项可以更改S3 bucket location
将存储用于创建端点的模型工件的位置。 对于这篇文章,我们将所有内容保留为默认值。 记下调用端点进行预测时要使用的端点名称。
- 展开 安全设置 部分,您可以在其中指定
IAM role
用于创建端点。 您还可以指定VPC configurations
通过提供subnets
和security groups
。 子网 ID 和安全组 ID 可以从 AWS CloudFormation 控制台上的 VPC 堆栈的输出选项卡中找到。 SageMaker JumpStart 需要至少两个子网作为此配置的一部分。 子网和安全组控制对模型容器的访问。
注意:无论 SageMaker JumpStart 模型是否部署在 VPC 中,该模型始终在网络隔离模式下运行,该模式会隔离模型容器,因此无法对模型容器进行入站或出站网络调用。 由于我们使用的是 VPC,因此 SageMaker 通过我们指定的 VPC 下载模型工件。 在网络隔离中运行模型容器不会阻止您的 SageMaker 端点响应推理请求。 服务器进程与模型容器一起运行并向其转发推理请求,但模型容器没有网络访问权限。
- 部署 部署模型。 我们可以看到端点创建过程中的近实时状态。 端点创建可能需要 5-10 分钟才能完成。
观察字段的值 模型数据位置 在本页。 所有 SageMaker JumpStart 模型均托管在 SageMaker 托管的 S3 存储桶上(s3://jumpstart-cache-prod-{region}
)。 因此,无论从 JumpStart 选择哪个模型,该模型都会从可公开访问的 SageMaker JumpStart S3 存储桶进行部署,并且流量永远不会进入公共模型库 API 来下载该模型。 这就是为什么即使我们在无法直接访问 Internet 的 VPC 中创建终端节点,模型终端节点创建仍能成功启动的原因。
模型工件还可以复制到任何私有模型动物园或您自己的 S3 存储桶,以进一步控制和保护模型源位置。 您可以使用以下命令将模型下载到本地 AWS命令行界面 (AWS CLI):
aws s3 cp s3://jumpstart-cache-prod-eu-west-1/huggingface-infer/prepack/v1.0.2/infer-prepack-huggingface-text2text-flan-t5-xxl.tar.gz .
- 几分钟后,端点创建成功并显示状态为 在服务。 选
Open Notebook
,在Use Endpoint from Studio
部分。 这是作为 JumpStart 体验的一部分提供的示例笔记本,用于快速测试端点。
- 在笔记本中,选择图像作为 数据科学3.0 和内核为 Python的3。 当内核准备就绪时,您可以运行笔记本单元以在端点上进行预测。 请注意,笔记本使用 调用端点() API 来自 适用于Python的AWS开发工具包 做出预测。 或者,您可以使用 SageMaker Python SDK 的预测() 方法来达到相同的结果。
这就结束了在无法访问 Internet 的 VPC 中使用 JumpStart 部署 Flan-T5 XXL 模型的步骤。
在 VPC 模式下部署 SageMaker JumpStart 模型的优势
以下是在 VPC 模式下部署 SageMaker JumpStart 模型的一些优势:
- 由于 SageMaker JumpStart 不会从公共模型库下载模型,因此它可以在完全锁定的环境以及无法访问互联网的环境中使用
- 由于 SageMaker JumpStart 模型的网络访问可以受到限制并缩小范围,这有助于团队改善环境的安全状况
- 由于 VPC 边界,对终端节点的访问也可以通过子网和安全组进行限制,这增加了额外的安全层
通过 SageMaker JumpStart 自定义基础模型部署的其他方法
在本节中,我们分享一些部署模型的替代方法。
从您的首选 IDE 使用 SageMaker JumpStart API
SageMaker JumpStart 提供的模型不需要您访问 Studio。 您可以从任何 IDE 将它们部署到 SageMaker 端点,这要归功于 JumpStart API。 您可以跳过本文前面讨论的 Studio 设置步骤,并使用 JumpStart API 来部署模型。 这些 API 提供了也可以提供 VPC 配置的参数。 API 是 SageMaker Python 开发工具包 本身。 欲了解更多信息,请参阅 预训练模型.
使用 SageMaker Studio 中的 SageMaker JumpStart 提供的笔记本
SageMaker JumpStart 还提供笔记本来直接部署模型。 在模型详细信息页面上,选择 打开笔记本 打开包含部署端点的代码的示例笔记本。 笔记本使用的是 SageMaker JumpStart 行业 API 允许您列出和过滤模型、检索工件以及部署和查询端点。 您还可以根据特定于用例的要求编辑笔记本代码。
清理资源
查询 清理.md 文件中查找删除 Studio、VPC 以及本文中创建的其他资源的详细步骤。
故障排除
如果您在创建 CloudFormation 堆栈时遇到任何问题,请参阅 CloudFormation 故障排除.
结论
由大型语言模型提供支持的生成式人工智能正在改变人们从信息中获取和应用见解的方式。 然而,在严格监管的空间中运营的组织需要以一种既能加快创新速度又能简化此类功能的访问模式的方式使用生成式人工智能功能。
我们鼓励您尝试本文中提供的方法,将生成式 AI 功能嵌入到您现有的环境中,同时仍将其保留在您自己的 VPC 内,无法访问互联网。 如需进一步阅读 SageMaker JumpStart 基础模型,请查看以下内容:
关于作者
维克什·潘迪 是 AWS 的机器学习专家解决方案架构师,帮助金融行业的客户设计和构建基于生成式 AI 和 ML 的解决方案。 工作之余,Vikesh 喜欢尝试不同的美食和进行户外运动。
迈赫兰·尼库 是 AWS 的高级解决方案架构师,与英国的数字原生企业合作并帮助他们实现目标。 他热衷于将自己的软件工程经验应用到机器学习中,专门研究端到端机器学习和 MLOps 实践。
- SEO 支持的内容和 PR 分发。 今天得到放大。
- PlatoData.Network 垂直生成人工智能。 赋予自己力量。 访问这里。
- 柏拉图爱流。 Web3 智能。 知识放大。 访问这里。
- 柏拉图ESG。 汽车/电动汽车, 碳, 清洁科技, 能源, 环境, 太阳能, 废物管理。 访问这里。
- 块偏移量。 现代化环境抵消所有权。 访问这里。
- Sumber: https://aws.amazon.com/blogs/machine-learning/use-generative-ai-foundation-models-in-vpc-mode-with-no-internet-connectivity-using-amazon-sagemaker-jumpstart/
- :具有
- :是
- :不是
- :在哪里
- $UP
- 100
- 7
- a
- 对,能力--
- 关于
- ACCESS
- 无障碍
- 访问
- 获得
- 横过
- 加
- 额外
- 添加
- 进步
- 优点
- AI
- 算法
- 所有类型
- 让
- 允许
- 沿
- 靠
- 还
- 时刻
- Amazon
- 亚马逊SageMaker
- 亚马逊SageMaker JumpStart
- 亚马逊网络服务
- 量
- an
- 分析
- 和
- 另一个
- 任何
- API
- APIs
- 使用
- 应用
- 的途径
- 架构
- 保健
- 参数
- AS
- At
- 自动化
- 可用性
- 可使用
- 避免
- AWS
- AWS CloudFormation
- 已备份
- 基于
- BE
- 因为
- 最佳
- 博客
- 博客文章
- 都
- 边界
- 建立
- 商业
- 企业
- 但是
- by
- 呼叫
- CAN
- 能力
- 能力
- 细胞
- 更改
- 改变
- 查
- 云端技术
- 码
- 常用
- 完成
- 符合
- 配置
- 确认
- 分享链接
- 地都
- 连接方式
- 安慰
- 容器
- 内容
- 控制
- 对话
- 成本
- 可以
- 外壳
- 创建信息图
- 创建
- 创建
- 创造
- 创建
- 合作伙伴
- 定制
- data
- 默认
- 演示
- 部署
- 部署
- 部署
- 部署
- 部署
- 设计
- 细节
- 详细
- 对话框
- 不同
- 数字
- 直接
- 直接
- 禁用
- 讨论
- 讨论
- 讨论
- 文件
- 不会
- 域
- 域名
- 别
- 向下
- 下载
- 下载
- 此前
- 其他
- 嵌
- 鼓励
- 端至端
- 端点
- 从事
- 工程师
- 环境
- 环境中
- 甚至
- 终于
- 一切
- 现有
- 扩大
- 体验
- 曝光
- 额外
- 事实
- 快
- 少数
- 部分
- 文件
- 过滤
- 金融
- 金融业
- 金融服务
- 找到最适合您的地方
- 遵循
- 以下
- 针对
- 发现
- 基金会
- 止
- 充分
- 进一步
- 网关
- 一般用途
- 发电
- 生成的
- 生成式人工智能
- 全球
- 全球金融
- 理想中
- GOES
- 团队
- 组的
- 成长
- 事件
- 有
- he
- 医疗保健
- 严重
- 帮助
- 帮助
- 高度
- 他的
- 托管
- 创新中心
- How To
- 但是
- HTML
- HTTP
- HTTPS
- 中心
- 思路
- IDS
- 图片
- 图片
- 实施
- 改善
- in
- 包含
- 行业
- 行业中的应用:
- 信息
- 创新
- 内
- 可行的洞见
- 接口
- 网络
- 互联网接入
- 网络连接
- 不管
- 隔离
- 问题
- IT
- 它的
- 本身
- JPG
- 保持
- 保持
- 语言
- 大
- 层
- 学习
- 最少
- 离开
- 生活
- 生命科学
- 喜欢
- 有限
- Line
- 清单
- 当地
- 圖書分館的位置
- 寻找
- 占地
- 机
- 机器学习
- 制成
- 使
- 制作
- 管理
- 数学
- 可能..
- 方法
- 分钟
- ML
- 多播
- 时尚
- 模型
- 模型
- 更多
- 多
- 音乐
- 姓名
- 本地人
- 自然
- 需求
- 网络
- 决不要
- 全新
- 没有
- 笔记本
- of
- 提供
- on
- 一
- 仅由
- 打开
- 开放源码
- 打开
- 操作
- 附加选项
- or
- 组织
- 其他名称
- 我们的
- 输出
- 学校以外
- 己
- 页
- 参数
- 部分
- 多情
- 模式
- 员工
- 为
- 演出
- 执行
- 采摘的
- 柏拉图
- 柏拉图数据智能
- 柏拉图数据
- 播放
- 帖子
- 帖子
- 功率
- 供电
- 做法
- 预测
- 预测
- 预报器
- 首选
- 防止
- 私立
- 问题
- 过程
- 本人简介
- 进展
- 保护
- 证明
- 提供
- 提供
- 提供
- 优
- 国家
- 公然
- 蟒蛇
- 有疑问吗?
- 很快
- 范围
- 阅读
- 准备
- 最近
- 减少
- 简称
- 监管
- 业务报告
- 要求
- 要求
- 必须
- 岗位要求
- 需要
- 资源
- 资源
- 回应
- 导致
- 角色
- 运行
- 运行
- 运行
- sagemaker
- 同
- 科学
- 科学
- SDK
- 部分
- 安全
- 保安
- 看到
- 前辈
- 情绪
- 特色服务
- 格局
- Share
- 展示
- 如图
- 作品
- 简易
- 尺寸
- So
- 软件
- 软件工程
- 方案,
- 解决方案
- 解决
- 解决
- 一些
- 来源
- 剩余名额
- 跨度
- 专家
- 专业
- 具体的
- 指定
- 运动
- 堆
- 堆栈
- 开始
- Status
- 步
- 步骤
- 仍
- 存储
- 存储
- 故事
- 工作室
- 子网
- 子网
- 顺利
- 这样
- 提供
- 支持
- 采取
- 任务
- 队
- 模板
- 终端
- test
- 谢谢
- 这
- 英国
- 其
- 他们
- 然后
- 那里。
- 因此
- 博曼
- 他们
- Free Introduction
- 通过
- 次
- 时
- 至
- Topics
- 传统
- 交通
- 趋势
- 尝试
- 二
- 类型
- 一般
- Uk
- 下
- 直到
- 使用
- 用过的
- 用户
- 使用
- 运用
- 折扣值
- 价值观
- 各个
- 广阔
- 确认
- 非常
- 通过
- 视频
- 等候
- 想
- 方法..
- 方法
- we
- 卷筒纸
- Web服务
- 欢迎进入
- 井
- ,尤其是
- 是否
- 这
- 而
- 为什么
- 宽
- 大范围
- 维基百科上的数据
- 将
- 中
- 工作
- 加工
- 写作
- 雅姆
- 完全
- 您一站式解决方案
- 和风网
- 区
- 动物园