在亚马逊云科技上云原生部署DeepSeek-R1模型(下)

在本系列的上篇中,我们介绍了如何通过Amazon Bedrock部署并测试使用了DeepSeek模型。在接下来的下篇中小李哥将继续介绍,如何利用亚马逊的AI模型训练平台SageMaker AI中的,Amazon Sagemaker JumpStart通过脚本轻松一键式部署DeepSeek预训练模型。

使用SageMaker JumpStart部署DeepSeek-R1

SageMaker JumpStart是一个包含基础模型(FM)、内置算法和预构建机器学习模型解决方案的便捷功能,我们只需点击几下即可完成我们想要模型的部署。通过SageMaker JumpStart,我们还可以使用自己的数据自定义预训练模型,并通过UI或SDK将其部署到生产环境中。

在亚马逊云科技上,有两种便捷的方法通过SageMaker JumpStart部署DeepSeek-R1模型:分别是使用直观的SageMaker JumpStart UI或通过SageMaker Python SDK进行编程部署。在本篇中我们就将介绍这两种方法,帮助大家选择最适合自己需求的部署方式。

通过SageMaker JumpStart UI部署DeepSeek-R1

大家需要按照以下步骤使用SageMaker JumpStart UI部署DeepSeek-R1:

1. 在SageMaker控制台中,选择左侧导航栏的 Studio。

2. 注意首次使用SageMaker的用户,需要先创建一个域环境才能开始正常使用这个功能。

3. 在SageMaker Studio控制台中,选择左侧导航栏的JumpStart。

进入JumpStart后,主页将显示所有可用的模型,并提供供应商名称和模型功能等详细信息。

4. 接下来大家搜索DeepSeek-R1,进入后查看DeepSeek-R1模型卡。其中每个模型卡片都会显示模型关键信息,包括:

模型名称:DeepSeek-R1

供应商名称: DeepSeek

任务类别(例如文本生成)

Bedrock Ready标识,表示该模型可在Amazon Bedrock中加载使用,并可使用Amazon Bedrock API进行调用

5. 接下来,我们选择模型卡片进入模型详情页面。

模型卡片详情页面包括以下信息:

  • 模型名称和供应商信息
  • "Deploy" 按钮,点击部署模型
  • "About" 和 "Notebooks" 选项卡,点击进入可以看到详细信息

"About" 选项卡中包括重要信息:

  • 模型描述
  • 许可信息
  • 技术规格
  • 使用指南

在部署模型之前,各位开发者一定要先阅读模型详情和许可条款,以确保其与大家的使用场景兼容,同时保证大家拥有使用的授权。

6. 接下来选择Deploy继续部署。

7. 配置部署选项:选择合适的实例类型和数量对于优化成本和提升模型的推理性能至关重要。我们可以在部署后实时监控模型运行情况,并根据我们的业务需求调整这些算力设置。

8. 填入Endpoint name,我们可以使用自动生成的名称或创建自定义名称。

9. 选择Instance type,选择实例类型(默认:ml.p5e.48xlarge)。

10. 选择Initial instance count:我们在这里输入实例数量(默认:1)。

11. 选择大模型的推理模式Inference type,SageMaker默认选择实时推理(Real-time inference),该模式对实时流量流和延迟都进行了优化。

12. 最后我们仔细检查所有配置是否正确。对于DeepSeek模型,小李哥建议遵循SageMaker JumpStart的默认设置,并确保网络隔离(network isolation) 保持启用状态,保证大模型环境不能被外界公网访问,保证数据的安全。

13. 点击Deploy就完成部署模型了,部署过程通常长袖几分钟。

当部署完成后,我们的模型端点状态将更改为InService。此时模型端点已准备好接收api推理请求调用。我们可以在SageMaker控制台的Endpoints页面中监控实时API调用情况,该页面会显示相关指标和状态信息。完成部署后,我们可以使用SageMaker SDK提供的API,通过代码调用模型,并将其集成到大家的应用程序中。

使用 SageMaker Python SDK 部署 DeepSeek-R1

要通过SageMaker Python SDK,以代码形式使用DeepSeek-R1,我们需要先安装SageMaker Python SDK - Boto3,并确保我们具备必要的AWS权限和环境变量设置。以下是一个通过API调用DeepSeek的代码示例,展示了如何以编程方式部署DeepSeek-R1并进行推理。

部署模型的代码已在亚马逊云科技GitHub仓库上线。我们可以克隆该Notebook并在SageMaker Studio中运行。

!pip install --force-reinstall --no-cache-dir sagemaker==2.235.2from sagemaker.serve.builder.model_builder import ModelBuilder 
from sagemaker.serve.builder.schema_builder import SchemaBuilder 
from sagemaker.jumpstart.model import ModelAccessConfig 
from sagemaker.session import Session 
import logging sagemaker_session = Session()artifacts_bucket_name = sagemaker_session.default_bucket() 
execution_role_arn = sagemaker_session.get_caller_identity_arn()js_model_id = "deepseek-llm-r1"gpu_instance_type = "ml.p5e.48xlarge"response = "Hello, I'm a language model, and I'm here to help you with your English."sample_input = {"inputs": "Hello, I'm a language model,","parameters": {"max_new_tokens": 128, "top_p": 0.9, "temperature": 0.6},}sample_output = [{"generated_text": response}]schema_builder = SchemaBuilder(sample_input, sample_output)model_builder = ModelBuilder( model=js_model_id, schema_builder=schema_builder, sagemaker_session=sagemaker_session, role_arn=execution_role_arn, log_level=logging.ERROR ) model= model_builder.build() predictor = model.deploy(model_access_configs={js_model_id:ModelAccessConfig(accept_eula=True)}, accept_eula=True) predictor.predict(sample_input)

接下来的代码是通过代码形式调用该端点生成推理的代码段

new_input = {"inputs": "What is Amazon doing in Generative AI?","parameters": {"max_new_tokens": 64, "top_p": 0.8, "temperature": 0.7},
}prediction = predictor.predict(new_input)
print(prediction)

 

加载安全过滤器Guardrails并利用DeekSeek运行推理

与Amazon Bedrock相同,我们也可以使用ApplyGuardrail API保护我们的SageMaker JumpStart中模型的推理过程。可以通过Amazon Bedrock控制台或API创建 Guardrail,并按照以下代码示例保护推理过程:

  # Get the response from the modelmodel_response = json.loads(response['Body'].read().decode())# Apply guardrail to outputoutput_guardrail_response = bedrock_runtime.apply_guardrail(guardrailIdentifier=guardrail_id,guardrailVersion=guardrail_version,source='OUTPUT',content=[{ "text": { "text": model_response['generated_text'] }}])# Check if output passes guardrailsif output_guardrail_response['action'] != 'GUARDRAIL_INTERVENED':print(model_response['generated_text'])else:print("Output blocked: ", output_guardrail_response['outputs'][0]['text'])
else:print("Input blocked: ", input_guardrail_response['outputs'][0]['text'])

以上就是全部的在亚马逊云科技上部署、测试、安全地通过API调用DeekSeek-R1模型的全部步骤。欢迎大家持续关注小李哥分享的国际前沿的云平台AI解决方案,关注小李哥不要错过未来更多精彩内容。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JVM(Java 虚拟机)

Java语言的解释性和编译性(通过JVM 的执行引擎) Java 代码(.java 文件)要先使用 javac 编译器编译为 .class 文件(字节码),紧接着再通过JVM 的执行引擎(Execution Engine&#xff09…

基于Kotlin中Flow扩展重试方法

最近项目中统一采用Kotlin的Flow来重构了网络请求相关代码。 目前的场景是,接口在请求的时候需要一个accessToken值,因为此值会过期或者不存在,需要刷新,因此最终方案是在使用Flow请求的时候先获取accessToken值然后再进行接口请求,而获取accessToken值的方法已经封装成了…

韶音科技:消费电子行业售后服务实现数字化转型,重塑客户服务体系

韶音科技:消费电子行业售后服务实现数字化转型,重塑客户服务体系 在当今这个科技日新月异的时代,企业之间的竞争早已超越了单纯的产品质量比拼,**售后服务成为了衡量消费电子行业各品牌实力与客户满意度的关键一环。**深圳市韶音…

推荐系统Day1笔记

意义: 1. 平台方 推荐系统解决产品能够最大限度地吸引用户、留存用户、增加用户粘性、提高用户转化率的问题,从而达到平台商业目标增长的目的。 2. 用户 推荐系统对于用户而言,除了将平台上的需求和供给进行匹配外,还需要尽可…

【详细版】DETR系列之Deformable DETR(2021 ICLR)

论文标题Deformable DETR: Deformable Transformers for End-to-End Object Detection论文作者Xizhou Zhu, Weijie Su, Lewei Lu, Bin Li, Xiaogang Wang, Jifeng Dai发表日期2021年03月01日GB引用> Xizhou Zhu, Weijie Su, Lewei Lu, et al. Deformable DETR: Deformable T…

[开源]MaxKb+Ollama 构建RAG私有化知识库

MaxKbOllama,基于RAG方案构专属私有知识库 关于RAG工作原理实现方案 一、什么是MaxKb?二、MaxKb的核心功能三、MaxKb的安装与使用四、MaxKb的适用场景五、安装方案、 docker版Docker Desktop安装配置MaxKb安装和配置 总结和问题 MaxKB 是一款基于 LLM 大…

原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力

原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力 在科技飞速发展的当下,人工智能与操作系统的融合正深刻改变着我们的数字生活。近日,原生鸿蒙版小艺APP成功接入DeepSeek-R1,这一突破性进展不仅为用户带来了更智…

Linux进阶——web服务器

一、相关名词解释及概念: www:(world wide web)全球信息广播,通常来说的上网就是使用www来查询用户所需的信息。使用http超文本传输协议。 过程:web浏览器向web服务(Apache,Microsoft,nginx&…

网易日常实习一面面经

1. 自我介绍 2. 两道代码题: 第一道题:写一道链表排序题要求空间复杂度O(1) :已ac 插入排序算法 时间复杂度 O(N^2),空间复杂度O(1) class ListNode{int val;ListNode next;public ListNode(int x) {this.val x;} } public cl…

查询语句来提取 detail 字段中包含 xxx 的 URL 里的 commodity/ 后面的数字串

您可以使用以下 SQL 查询语句来提取 detail 字段中包含 oss.kxlist.com 的 URL 里的 commodity/ 后面的数字串&#xff1a; <p><img style"max-width:100%;" src"https://oss.kxlist.com//8a989a0c55e4a7900155e7fd7971000b/commodity/20170925/20170…

Ubuntu 24.10 安装Deepseek(Ollama+openwebui)

一、Ollama安装 1.在线安装 curl -fsSL https://ollama.com/install.sh | sh 如果curl工具没有安装先执行如下命令 sudo apt install curl 验证curl是否安装成功 curl --version 安装的过程中会提示输入当前系统登录用户的密码。 安装提示success后,验证安装 ollama -…

基于YOLOv8+PyQt5的目标检测系统(环境配置+数据集+Python源码+PyQt5界面)——持续更新中

第1期 基于YOLOv8的吸烟行为检测系统&#xff08;环境配置数据集Python源码PyQt5界面&#xff09; 第2期 基于YOLOv8的玩手机行为检测系统&#xff08;环境配置数据集Python源码PyQt5界面&#xff09; 第3期 基于YOLOv8的灭火器检测系统&#xff08;环境配置数据集Python源码…

项目的虚拟环境的搭建与pytorch依赖的下载

文章目录 配置环境 pytorch的使用需要安装对应的cuda 在PyTorch中使用CUDA, pytorch与cuda不同版本对应安装指南&#xff0c;查看CUDA版本&#xff0c;安装对应版本pytorch 【超详细教程】2024最新Pytorch安装教程&#xff08;同时讲解安装CPU和GPU版本&#xff09; 配置环境…

[2025年最新]2024.3版本idea无法安装插件问题解决

背景 随着大模型的持续发展&#xff0c;特别年前年后deepseek的优异表现&#xff0c;编程过程中&#xff0c;需要解决ai来辅助编程&#xff0c;因此需要安装一些大模型插件 问题描述 在线安装插件的时候会遇到以下问题&#xff1a; 1.数据一直在加载&#xff0c;加载的很满 2.点…

怎么查看电脑显存大小(查看电脑配置)

这里提供一个简单的方法查看 winr打开cmd 终端输入dxdiag进入DirectX 点击显示查看设备的显示内存&#xff08;VRAM&#xff09; 用这个方法查看电脑配置和显存是比较方便的 dxdiag功能 Dxdiag是Windows的DirectX诊断工具&#xff0c;其主要作用包括但不限于以下几点&#…

拾取丢弃物品(结构体/数组/子UI/事件分发器)

实现&#xff1a;场景中随机生成几种物品&#xff0c;玩家可以拾取这些物品&#xff0c;也可丢弃已经拾取到的物品。 拾取丢弃物品时UI能实时更新玩家身上的物品量。 一.物品信息的创建 1.枚举 物品名 2.结构体表示物体属性 3.物品缩略图&#xff08;缩略图大小要为2的n次方…

KITE提示词框架:引导大语言模型的高效新工具

大语言模型的应用日益广泛。然而&#xff0c;如何确保这些模型生成的内容在AI原生应用中符合预期&#xff0c;仍是一个需要不断探索的问题。以下内容来自于《AI 原生应用开发&#xff1a;提示工程原理与实战》一书&#xff08;京东图书&#xff1a;https://item.jd.com/1013604…

性能优化中的系统架构优化

系统架构优化是性能优化的一个重要方面&#xff0c;它涉及到对整个IT系统或交易链上各个环节的分析与改进。通过系统架构优化&#xff0c;可以提高系统的响应速度、吞吐量&#xff0c;并降低各层之间的耦合度&#xff0c;从而更好地应对市场的变化和需求。业务增长导致的性能问…

【学习笔记】计算机网络(三)

第3章 数据链路层 文章目录 第3章 数据链路层3.1数据链路层的几个共同问题3.1.1 数据链路和帧3.1.2 三个基本功能3.1.3 其他功能 - 滑动窗口机制 3.2 点对点协议PPP(Point-to-Point Protocol)3.2.1 PPP 协议的特点3.2.2 PPP协议的帧格式3.2.3 PPP 协议的工作状态 3.3 使用广播信…

机器学习 - 理解偏差-方差分解

为了避免过拟合&#xff0c;我们经常会在模型的拟合能力和复杂度之间进行权衡。拟合能力强的模型一般复杂度会比较高&#xff0c;容易导致过拟合。相反&#xff0c;如果限制模型的复杂度&#xff0c;降低其拟合能力&#xff0c;又可能会导致欠拟合。因此&#xff0c;如何在模型…