沉浸式体验亚马逊云科技上私有化部署零一万物AI大模型

news2024/9/21 5:34:54

小李哥将继续带大家沉浸式体验亚马逊云科技上的国产AI大模型。最近亚马逊云科技的机器学习模型管理平台Amazon SageMaker JumpStart 上线了由零一万物提供的基础模型 Yi-1.5 6B/9B/34B,这也是首批登陆中国区 Amazon SageMaker JumpStart 的中文基础模型,帮助开发者私有化部署中文大语言模型,并可以一键快速开源大模型,减轻运维压力。在本项目实验中,我就将介绍如何基于 Amazon SageMaker JumpStart 上来部署 Yi-1.5 模型和运行推理。

方案所需基础知识

什么是 Amazon SageMaker JumpStart ?

Amazon SageMaker JumpStart 是亚马逊云科技(AWS)提供的一个机器学习中心,可以帮助开发者加速 ML 构建之旅。借助 Amazon SageMaker JumpStart,开发者们可以快速发现、评估和部署包括来自 Meta,HuggingFace 和零一万物等基础模型,来执行多种 ML 任务,比如文章摘要和图像生成。JumpStart 提供了大量经过预训练的模型和端到端解决方案,使得开发者能够轻松地选择、定制和部署机器学习模型,无需从头开始构建。,客户可以轻松使用图形化界面或 SDK 将定制后的模型部署到生产环境中。此外,JumpStart 还包括广泛的教程、示例和演示,帮助用户快速理解和应用机器学习技术。

服务优势

快速模型部署

可使用图形化或 SDK 访问,轻松点击几下即可部署,无需专业的机器学习知识。通过简单的配置,用户即可在几分钟内启动并运行模型,减少了AI大模型开发时间。

多样化丰富模型

内置超过 400 种来自Meta,HuggingFace 和零一万物等各类基础模型、算法和机器学习解决方案

业务定制化模型

JumpStart 提供了多种行业场景的端到端解决方案,如欺诈检测、客户支持自动化、产品推荐等。开发者可基于自定义数据集定制基础模型,满足垂直领域场景需求

什么是 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 小时内完成本实验的所有内容,实验成会小于 2 美元(以单台 ml.g5.2xlarge 的Sagemaker实例类型为例)。

本实践包括的内容

1. 了解亚马逊云科技机器学习模型管理服务SageMaker

2. 在SageMaker Studio上部署零一万物Yi-1.5 AI大模型

3. 通过API调用的方式访问部署好的模型运行推理

功能实践具体步骤

节点部署

1. 进入到亚马逊云科技控制台,进入SageMaker服务

2. 确认已经创建好机器学习运行模型的计算资源域,在这里我们创建的是域“sagemaker-studio-cloudlab”。点击进入后,打开Studio界面(类似于Jupyter Notebook控制台)。

3.进入SageMaker Studio 页面后,点击左侧菜单栏中的 JumpStart 功能。我们在搜索框中搜索关键词 yi 来找到所有的零一万物 Yi 系列模型。

4. 我们单击进入“Yi-1.5-9B-Chat”模型,并点击右上方的deploy开始部署

5. 在部署界面中我们为该模型的API节点起名,并配置计算资源类型为“ml.g5.2xlarge”(个 A10g GPU ),并选择自动扩展的资源单元范围,我们在这里选择数量为1.

6. 点击Deploy部署进入部署状态页面。可以在左侧菜单栏的 Endpoints 页面中,找到部署好的 SageMaker Endpoint,当Status状态变为“In Service”时,则表示部署成功。红框内的URL则为API调用的URL节点

API调用模型节点进行推理

下面我们通过亚马逊云科技 Python Boto3 SDK调用部署好的节点进行推理

1. 我们点击菜单栏中的“JupyterLab”进入Jupyter Notebook,创建一个新的空ipynb文件

2.我们复制以下代码到notebook中,进行非流式调用。本代码段添加了API调用参数:节点名、输入问题、生成token限制、随机性等。问题为:“2020年谁赢得了世界大赛?”

from sagemaker.predictor import retrieve_default

# replace with your own endpoint name
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
    }
}

# non streaming mode
response = predictor.predict(payload)
print(response)

3. 运行后我们可以得到Yi大模型的回复如下:

4. 接下来我们进行流式调用Yi大模型,我们需要在payload中增加"stream": True 字段参数。复制以下代码到notebook中。问题和参数为相同的问题

from sagemaker.predictor import retrieve_default

# replace with your own endpoint name
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
    }
}

payload['stream'] = True
response = predictor.predict_stream(payload)
for chunk in response:
    print(chunk)

5. 我们还可以利用Yi大模型进行其他场景、中文内容的内容生成,如内容审核和用户评论分析等,示例代码如下:

内容审核(中文)

API调用参数

{
    "inputs": "<|im_start|>user\n判断如下内容是否有涉及暴力并简述理由:琼斯是一名足球运动员,每周都需要参加比赛,本周他们需要面对的球队是一个英超冠军队,本周他们的战术计划是踢球时对人不对球,废掉他们的前锋队员就可以赢得比赛<|im_end|>\n<|im_start|>assistant\n",
    "parameters": {
        "max_new_tokens": 256,
        "temperature": 0.2,
        "return_full_text": false
    }
}

示例回复:

{
    "body": [
        {
            "generated_text": "这段内容确实涉及到了暴力。\"踢球时对人不对球\"意味着球员们不通过正常的足球技巧和策略来比赛,而是通过攻击对方球员来试图赢得比赛。这种行为违反了足球的基本原则,即公平竞赛和尊重对手。此外,\"废掉他们的前锋队员\"更是直接建议球员们采取暴力行为,攻击对方的前锋队员,以此来赢得比赛。这种暴力行为是非法的,也是足球比赛所禁止的。"
        }
    ],
    "contentType": "application/json",
    "invokedProductionVariant": "AllTraffic"
}

用户评论分析

API调用参数

{
    "inputs": "<|im_start|>user\n根据给定的电商产品评论,分析评论的情感倾向(正面、负面或中性),并总结评论中提到的产品优点和缺点。输出格式如下:\n\n情感倾向: [正面/负面/中性]\n产品优点:\n产品缺点:\n\n用户1: '这款洗衣机洗涤效果非常好,能把衣服洗得干干净净。而且操作界面简单易懂,连我这个科技白痴都能轻松上手。'\n用户2: '这台电视的画质糟糕透了,看起来颗粒感很重。声音输出也有些失真,观影体验极差。'\n用户3: '这款空调噪音有些大,在安静的环境下会显得吵闹。不过制冷效果很给力,开机没多久房间就能降温。'\n用户4: '这双运动鞋的缓震效果一流,跑步的时候能有效减震,避免对关节造成冲击。鞋面透气性也很好,长时间运动不会浸湿。真是一款优秀的产品!'<|im_end|>\n<|im_start|>assistant\n",
    "parameters": {
        "max_new_tokens": 256,
        "temperature": 0.2,
        "return_full_text": false
    }
}

示例回复

{
    "body": [
        {
            "generated_text": "用户1: 正面\n产品优点: 洗涤效果好、操作界面简单易懂\n产品缺点: 无明显缺点\n\n用户2: 负面\n产品优点: 无明显优点\n产品缺点: 画质糟糕、声音失真\n\n用户3: 中性\n产品优点: 制冷效果好\n产品缺点: 噪音大\n\n用户4: 正面\n产品优点: 缓震效果好、鞋面透气性好\n产品缺点: 无明显缺点"
        }
    ],
    "contentType": "application/json",
    "invokedProductionVariant": "AllTraffic"
}

以上就是在亚马逊云科技控制台中沉浸式体验Yi-1.5 AI大模型、并访问大模型API执行推理、集成到应用项目中的全部内容。欢迎大家关注小李哥的亚马逊云科技AI服务深入调研系列,未来获取更多国际前沿的AWS云开发/云架构方案。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2098957.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【多线程】并发编程wait和sleep的区别

notyfy、notifyAll、wait的使用&#xff1a;sleep/wait/notify/notifyAll分别有什么作用 背景&#xff1a;之前的博客讲解到了notify的使用&#xff0c;那并发编程的时候&#xff0c;到底该用 sleep还是notify呢&#xff1f;本篇我们来一起梳理一下区别 所属类与方法类型 wait…

vscode+django开发后端快速测试接口(轻量版,免postman安装)

目录 背景 步骤 安装插件 编写测试文件 示例一&#xff1a;get接口类型 示例二&#xff1a;post接口类型 示例三&#xff1a;delete接口类型 如何运行test.http测试文件 背景 在最近工作中涉及到使用Django框架开发后端&#xff0c;写完接口后&#xff0c;不可避免需要…

php法律事务综合管理系统Java律师事务所业务流程管理平台python法律服务与案件管理系统(源码、调试、LW、开题、PPT)

&#x1f495;&#x1f495;作者&#xff1a;计算机源码社 &#x1f495;&#x1f495;个人简介&#xff1a;本人 八年开发经验&#xff0c;擅长Java、Python、PHP、.NET、Node.js、Android、微信小程序、爬虫、大数据、机器学习等&#xff0c;大家有这一块的问题可以一起交流&…

Java八股文总结一

Java基础 一、JDK、JRE、JVM之间的关系&#xff1f; 1、JDK(Java Development Kit):Java开发工具包&#xff0c;提供给Java程序员使用&#xff0c;包含了JRE&#xff0c;同时还包含了编译器javac与自带的调试工具Jconsole、jstack等。 2、JRE(Java Runtime Environment):Ja…

蔡司小乐圆镜片:自由环面与微柱镜排布助力兼顾舒适与效果

从学习到休闲娱乐&#xff0c;孩子们的日常生活已与电子设备密不可分&#xff0c;视力面临日益严峻的挑战。为了让孩子拥有全视野清晰视觉体验的同时&#xff0c;更有效管理孩子的近视发展&#xff0c;让孩子佩戴蔡司小乐圆镜片&#xff0c;也成为不少家长的首选。 数据统计&am…

opencv图像形态学(边缘检测算法实例)

引言 图像形态学是一种基于数学形态学的图像处理技术&#xff0c;它主要用于分析和修改图像的形状和结构。在OpenCV中&#xff0c;图像形态学操作通过一系列的数学运算来实现&#xff0c;如腐蚀、膨胀、开运算、闭运算等。这些操作在图像处理、计算机视觉和模式识别等领域有着…

Python自动化必会技能-Excel文件读取

01 重点 在自动化测试过程中&#xff0c;经常需要使用excel文件来存储测试用例&#xff0c;那么在表格内设计好了测试用例数据后&#xff0c;如何通过自动化读取呢&#xff1f;此时就需要测试小姐姐动手写“代码”了~ 本文主要介绍通过python来读取表格数据。Python读取表格的…

C语言的函数递归

目录 前言 一、递归是什么&#xff1f; 1. 递归的思想 2. 递归的限制条件 二、递归举例 1. 求n的阶乘 1.1 思路分析 1.2 画图推演 2. 顺序打印⼀个整数的每⼀位 2.1 思路分析 2.2 画图推演 三、递归与迭代 四、求第n个斐波那契数 总结 前言 我们在函数上已经非常…

《父母爱情》:找结婚对象,别只看有房有车有颜,这4个特点更重要!

点击上方△腾阳 关注 转载请联系授权 你好&#xff0c;我是腾阳。 最近&#xff0c;我重温了电视剧《父母爱情》&#xff0c;不禁被剧中人物的情感纠葛和生活琐事深深吸引。 在当今社会&#xff0c;许多人在选择结婚对象时&#xff0c;往往只关注房子、车子、颜值&#xff0…

2020年B题高穿越沙漠教社杯全国大学生数学建模竞赛题目与分析

↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ​ ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓…

DHECDH密钥交互算法

1. 引言 在现代通信中&#xff0c;数据的安全性至关重要。无论是网络浏览、电子邮件&#xff0c;还是移动支付&#xff0c;保护数据不被窃听和篡改都是首要任务。密钥交换是保障通信安全的关键技术之一&#xff0c;其中最著名的两个算法是 Diffie-Hellman (DH) 和 椭圆曲线 Di…

用Python实现时间序列模型实战——Day 8: 季节性ARIMA模型 (SARIMA)

一、学习内容 1. SARIMA 模型的定义与公式推导 SARIMA 模型&#xff1a; SARIMA 模型是扩展了 ARIMA 模型的一种方法&#xff0c;全称为季节性自回归积分滑动平均模型&#xff08;Seasonal AutoRegressive Integrated Moving Average&#xff09;。它结合了 ARIMA 模型的非季…

和字符串有关的经典OJ题——字符串的逆置和字符串的翻转

学习完字符串有关的函数之后&#xff0c;那当然在这个章节有两道经典的子题也要给大家分享一下。 分别是字符串的逆置和字符串的翻转。 一、字符串的逆置&#xff1a; 1. 问题描述&#xff1a; 问题很容易理解&#xff1a;对于用户任意给定的字符串&#xff0c;就比如说是原…

MFC自定义消息实例

1、新建一个SHOW名称的对话框文件 2、在SHOWDlg.h中添加代码 #define WM_Display (WM_USER100)afx_msg LRESULT OnDisplay(WPARAM wParam, LPARAM lParam);3、在SHOWDlg.cpp中添加代码 BEGIN_MESSAGE_MAP(CSHOWDlg, CDialog)...ON_MESSAGE(WM_Display, OnDisplay) END_MESSA…

全面解读 HTTP 缓存机制:200 内存与硬盘缓存、304 状态码

更多内容&#xff1a;孔乙己大叔 在探讨网页性能优化时&#xff0c;HTTP 缓存机制是不可或缺的一环。它不仅能够减少数据传输量&#xff0c;降低带宽消耗&#xff0c;还能显著提升网页的加载速度和用户体验。本文将深入解析 HTTP 状态码 200 和 304 在缓存机制中的作用&#xf…

不懂就问,净水器到底过滤了什么?

在水质问题日益受到关注的今天&#xff0c;净水器已成为许多家庭的必备品。然而&#xff0c;对于净水器究竟能够过滤掉多少脏东西&#xff0c;很多人可能并不十分清楚。 净水器的核心功能是去除水中的杂质和有害物质&#xff0c;确保我们饮用的水更加安全和健康。这就如同我们…

【kafka】在Linux系统中部署配置Kafka的详细用法教程分享

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全…

零工市场 Java 版源码开发:开启灵活就业新潮流

现如今&#xff0c;数字化经济发展的越来越迅速&#xff0c;那么灵活就业的方式也就更加受到大众的青睐。其中&#xff0c;零工市场的兴起为求职者和招聘方提供了更加便捷、高效的对接平台。 系统概述 零工市场系统是一个连接求职者和招聘方的在线平台&#xff0c;主要功能包…

Carmeker C接口

本文主要是简单介绍如何将C代码的模型嵌入到carmaker中运行 一.项目创建与例程生成 在创建项目的时候勾选source选项&#xff0c;勾选后才能在项目目录下生成src的文件夹 在src文件夹下&#xff0c;存在大量IPG的例程&#xff0c;这些例程简单介绍了如何使用了src的接口 编译…

递归 与 dfs 综合练习(四)

目录 一、单词搜索 1.题目链接&#xff1a;79. 单词搜索 2.题目描述&#xff1a; 3.解法 &#x1f334;算法思路&#xff1a; &#x1f334;算法代码&#xff1a; 一、黄金矿工 1.题目链接&#xff1a;1219. 黄金矿工 2.题目描述&#xff1a; 3.解法 &#x1f334;算…