借助 Amazon SageMaker JumpStart 快速部署零一万物 Yi-1.5 基础模型

13a4c82e4a3995d47d0867527dae03f9.gif

本文作者 郑昊、张镎

近期,由零一万物提供的基础模型 Yi-1.5 6B/9B/34B 在Amazon SageMaker JumpStart 上线了 ,为中国企业提供丰富模型选择的同时满足了企业对安全合规、快速扩展、免运维的需求。作为首批登陆中国区域 Amazon SageMaker JumpStart 的中文基础模型,Yi-1.5 与亚马逊云科技托管服务深度集成,助力中国企业应用一流的生成式 AI 技术实现本土创新与业务转型。

本篇文章将介绍如何基于 Amazon SageMaker JumpStart 来发现和部署 Yi-1.5 模型和运行推理。

Amazon SageMaker JumpStart 

Amazon SageMaker JumpStart 是一个机器学习中心,可以帮助企业加速机器学习构建之旅。借助 Amazon SageMaker JumpStart ,企业可以快速发现、评估和部署包括来自 HuggingFace 和零一万物等的基础模型,来执行多种机器学习任务,比如文章摘要和图像生成。Amazon SageMaker JumpStart 中预训练模型还可以根据客户的用例和数据完全定制,客户可以轻松使用图形化界面或 SDK 将定制后的模型部署到生产环境中。此外,客户可以访问预制的解决方案来满足常见用例的需求,比如图像或文本分类, 并在组织内共享模型和笔记本,以加速机器学习模型的构建和部署。

Amazon SageMaker JumpStart 的主要优势包括:

  • 内置超过 400 种各类基础模型、算法和机器学习解决方案。

  • 可使用图形化或 SDK 访问,轻松点击几下即可部署,无需专业的机器学习知识。

  • 可基于自定义数据集定制基础模型,满足垂直领域场景需求。

  • 可在组织内灵活共享机器学习模型和笔记本,以加速机器学习模型的构建和部署。

 Yi-1.5 模型

Yi-1.5 系列开源大模型是零一万物此前推出的备受好评的 Yi 系列模型的升级版,分为 6B 、9B 、 34B 三个版本,采用 Apache 2.0 许可证。Yi-1.5 在前作的基础上使用高质量的 500B Token 进行持续预训练,因此延续了 Yi 系列开源模型的出色表现,其主要优势包括:

  • 支持 200K 长上下文:强大的 “大海捞针” 长文本检索能力,能够处理大量信息和长文本内容。

  • 卓越的语言理解和生成能力:在 MMLU 等基准测试中表现出色,展现了优秀的语言理解、常识推理、阅读理解等核心语言能力,能为客户提供高质量的文本分析和生成服务。

  • 强大的推理、执行和编码能力:Yi-1.5 版本在推理、指令执行、编码等领域得到全面提升,能够胜任更多复杂的任务,为客户解决实际问题提供了有力支持。

  • 高质量的对话交互能力:Yi 系列经过微调的对话模型在 LMSYS Chatbot Arena 等主要评估平台上获得了较高的人类偏好率,能够提供自然流畅的对话交互体验,满足客户对智能对话系统的需求。

1

发现模型

您可以通过 Amazon SageMaker Studio UI 和 Amazon SageMaker Python SDK 访问基础模型。这里,我们将介绍如何在 Amazon SageMaker Studio 中发现这些模型。

Amazon SageMaker Studio 是一个集成开发环境( IDE ),提供了一个基于 Web 的可视化界面,您可以在其中访问专门构建的工具,执行所有机器学习开发步骤,从准备数据到构建、训练和部署您的机器学习模型。有关如何开始使用和设置 Amazon SageMaker Studio 的更多详细信息,请参阅 Amazon SageMaker Studio。

73e99fca242f9ee6ba7618c204633a66.png

Amazon SageMaker Studio

扫码了解更多

从 Amazon SageMaker Studio 中的 JumpStart 入口进入之后,以零一万物的 Yi 模型为例, 您可以在 provider 的 search box 中搜索 yi 来找到所有的 Yi 系列模型。

f5560624012b41ed35a7824888d27a0b.png

单击模型卡片会打开如下的模型详情页面,从该页面点击右上方的 Deploy 可以快速进入模型的部署流程。

01bfd3cc7833292efac8dab89c5709a5.png

2

部署模型

进入模型部署界面之后,可以直接使用默认配置进行部署。或者,您可以自定义地对部署进行配置,如 Amazon SageMaker Endpoint 命名、实例类型、初始及可扩容的最大实例数量等。此处以 Yi-1.5 9B Chat 为例,默认使用单个 A10g GPU 的 ml.g5.2xlarge 实例。

291cf77418f32ba8f473aa476631e9fc.png

除了上述基于图形界面的部署形式,您也可以点击 Notebooks Tab,基于 JumpStart Notebook 进行部署,或直接在 Amazon SageMaker Studio 中启动 Jupyter Notebook  环境,使用 JumpStart API 部署,这种方式提供了更高的灵活性和更多的配置选项。

2ae9d4f4559eeca919520d8537ed93c0.png

触发部署后,可以在左侧 Endpoints 选项中,找到当前部署的 Amazon SageMaker Endpoint ,并跟踪其部署状态。

e4021f35df3c575dfaba8d450af85c5a.png

当 Statue 转为 In Service 之后,表示模型部署成功。

3

运行推理

完成部署后,可以通过 Endpoint 界面提供的 Test Inference Tab 来进行测试调用。

ff4254b25c4029cfe352efe717b88337.png

对于一般生产场景,可以通过 SDK 的形式来进行模型调用。比如,在您部署应用的服务器上,通过 Amazon SageMaker SDK , Amazon SDK for Python (boto3) 或 Amazon SDK for JAVA 等,来对以上部署的模型进行调用。以 Amazon SageMaker Python SDK 的调用为例,指定部署完成的 Amazon SageMaker Endpoint 名称(如 jumpstart-dft-hf-llm-yi-1-5-9b-chat-20240607-033836 ),即可快速进行调用并获取推理结果。

from sagemaker.predictor import retrieve_default


endpoint_name = "jumpstart-dft-hf-llm-yi-1-5-9b-chat-20240607-033836"
predictor = retrieve_default(endpoint_name)
payload = {
    "inputs": "You are a helpful assistant.<|im_start|>user\nWho won the world series in 2020?<|im_end|>\n<|im_start|>assistant\n",
    "parameters": {
        "max_new_tokens": 256,
        "temperature": 0.2,
        "return_full_text": False
    }
}
response = predictor.predict(payload)
print(response)
[{'generated_text': 'The Los Angeles Dodgers won the World Series in 2020. They defeated the Tampa Bay Rays in a best-of-seven series, clinching the championship in Game 6. This World Series was unique due to the pandemic-induced shortened season, which consisted of just 60 games per team.'}]

左右滑动查看完整示意

同时,通过调整推理参数可以进行生成结果的控制,如通过 temperature 来控制随机性,通过 return_full_text 来控制是否输出 input prompt 等。

对于需要使用流式 (Stream) 输出的场景,需要在以上 payload 中增加 "stream": True 参数,并使用 Stream API 接口进行调用,如 boto3 中的 invoke_endpoint_with_response_stream() API。

Yi-1.5 模型推理示例

Yi Chat 版本的模型可以通过使用其专有的 prompt 模板,来获得更好的生成效果。以下展示了使用 Yi-1.5-9B-Chat 来进行中文问答的一个示例。

输入提示文本如下,

你是一个 AI 助手。<|im_start|>user
丝绸之路起源于哪个朝代?<|im_end|>
<|im_start|>assistant

输出如下,

丝绸之路起源于中国西汉时期的张骞出使西域。根据史料记载,张骞于公元前 138 年和公元前 119 年两次出使西域,开辟了连接中国与中亚、西亚以及欧洲的贸易通道。这条古老的贸易路线被称为“丝绸之路”,它不仅促进了商品、文化和宗教的交流,也对世界历史的发展产生了深远的影响。

总结

本篇文章向您展示了如何在 Amazon SageMaker JumpStart 中发现和部署基础模型,以及以零一万物的 Yi-1.5-9B-Chat 为例运行推理。

您现在可以借助 Amazon SageMaker JumpStart 访问 Yi-1.5 6B 、 9B 和 34B 的 Base 和 Chat 优化的基础模型,未来我们还会上线包括百川智能在内的多款领先的中文基础模型。除此之外,您还可以访问来自 AI21Labs 和 HuggingFace 等公司的先进模型,进行微调定制和部署,有效地降低训练和基础设施成本,加速生成式 AI 应用的构建。现在就在 Amazon SageMaker JumpStart 中开启您的生成式 AI 构建之旅吧。

ece8d22ce24ee2cfcbe191056bb549f7.gif

星标不迷路,开发更极速!

关注后记得星标「亚马逊云开发者」

点击阅读原文查看博客,获得更详细内容

听说,点完下面4个按钮

就不会碰到bug了!

7bddc0e32ca1cc8f35bddb67a91321f7.gif

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值