开源模型Mistral 7B+Amazon SageMaker部署指南

一、Mistral 7B简述

Mistral AI 是一家总部位于法国的 AI 公司,其使命是将公开可用的模型提升至最先进的性能水平。他们专注于构建快速而安全的大型语言模型(LLM),此类模型可用于从聊天机器人到代码生成等各种任务。不久前其发布了一个开源模型Mistral 7B,支持英语文本生成任务并具备自然编码能力。它为实现低延迟进行过优化,并且相对其规模,该模型对内存的要求较低,可提供高吞吐量。该模型体积虽小,但功能强大,可支持从文本摘要和分类到文本完善和代码补全等多种使用案例。

Mistral 7B 的基础使用了 Transformer 的思想,其使用分组查询注意力和滑动窗口注意力来实现更快的推理(低延迟)并处理更长的序列。其中组查询注意力是一种结合了多查询和多头注意力的架构,以实现接近多头注意力的输出质量和与多查询注意力相当的速度。

滑动窗口注意力使用变压器的堆叠层来关注过去超出窗口大小的内容,以增加上下文长度。Mistral 7B 具有 8,000 个令牌的上下文长度,具有低延迟和高吞吐量,并且与较大的模型替代方案相比具有强大的性能,在 7B 模型大小下提供较低的内存要求,该模型在宽松的Apache 2.0 许可证下提供,可以不受限制地使用。

另外其还引入了稀疏专家组合Sparse Mixture of Experts (SMoE),Sparse Mixture of Experts (MoE)是允许通过仅激活每个token的整体模型的子集来将吞吐量与内存成本解耦的一种方法。这种方法的工作原理是将复杂的任务划分为更小、更易于管理的子任务,每个子任务都由专门的迷你模型或"专家"处理,在这种策略中,每个token被分配给一个或多个"专家"并且只由这些专家处理。其中:

  1. 专家层:较小的神经网络,经过训练,在特定领域具有很高的技能。每个专家处理相同的输入,但处理方式与其独特的专业相一致。

  2. 门控网络:这是MoE架构的决策者。它评估哪位专家最适合给定的输入数据。网络计算输入与每个专家之间的兼容性分数,然后使用这些分数来确定每个专家在任务中的参与程度。这些组件共同确保正确的专家处理正确的任务。

门控网络有效地将每个输入路由给最合适的专家,而专家则专注于他们的特定优势领域。这种协作培训带来了更加通用和强大的整体模型。

与其他模型相比,Mistral 7B具有:

  1. 在所有基准测试中优于Llama 2 13B

  2. 在许多基准测试中优于Llama 1 34B

  3. 在代码方面接近CodeLlama 7B的性能,同时在英语任务中表现良好

  4. 使用分组查询注意力(GQA)进行更快的推理

  5. 使用滑动窗口注意力(SWA)以更小的成本处理更长的序列

  6. Apache 2.0许可证,可以无限制地使用。

二、使用Amazon SageMaker访问并部署Mistral 7B

现在已经可以通过Amazon SageMaker JumpStart一键部署由 Mistral AI 开发的 Mistral 7B 基础模型来运行推理,只需在Amazon SageMaker Studio中单击几下即可发现并部署 Mistral 7B,或者通过 SageMaker Python SDK 以编程方式发现和部署 Mistral 7B,从而利用Amazon SageMaker Pipelines、Amazon SageMaker Debugger或容器日志等 SageMaker 功能获得模型性能和 MLOps 控制。该模型部署在 AWS 安全环境中并受您的 VPC 控制,有助于确保数据安全。

首先进入SageMaker Studio 中:https://www.amazonaws.cn/sagemaker/studio/

访问 SageMaker JumpStart,进入 SageMaker JumpStart ,然后在Foundation Models: Text Generation carousel中找到Mistral 7B:

其次,选择模型卡来查看有关模型的详细信息,例如许可证、用于训练的数据以及如何使用。点击deploy开始部署。

要使用笔记本进行部署,我们首先选择 Mistral 7B 模型,由model_id. 您可以使用以下代码在 SageMaker 上部署任何选定的模型:

python 复制代码
from sagemaker.jumpstart.model import JumpStartModel 
model = JumpStartModel(model_id="huggingface-llm-mistral-7b-instruct") 
predictor = model.deploy()

这会使用默认配置在 SageMaker 上部署模型,包括默认实例类型 (ml.g5.2xlarge) 和默认 VPC 配置。您可以通过在JumpStartModel中指定非默认值来更改这些配置。部署后,您可以通过 SageMaker 预测器对部署的终端节点运行推理:

python 复制代码
payload = {"inputs": "<s>[INST] Hello! [/INST]"} 
predictor.predict(payload)

另外,Mistral 7B 和 Mixtral 8x7B,很快将在 Amazon Bedrock 上推出,借助这两种 Mistral AI 模型,可以为使用案例灵活选择最优的高性能 LLM,在 Amazon Bedrock 上构建并扩展生成式 AI 应用程序。

参考资料:

官网:https://mistral.ai/news/announcing-mistral-7b/

https://generativeai.pub/mistral-ai-the-rising-star-in-conversational-ai-valued-at-2-billion-88d1b69d8fe0

仓库:https://github.com/mistralai/mistral-src

专家moe:https://zhuanlan.zhihu.com/p/674698482

钩子:https://mp.weixin.qq.com/s/XuWVdV90oDe0DOHjpT8zpw

相关推荐
丁学文武1 天前
FlashAttention(V2)深度解析:从原理到工程实现
人工智能·深度学习·大模型应用·flashattention
大千AI助手1 天前
Dropout:深度学习中的随机丢弃正则化技术
人工智能·深度学习·神经网络·模型训练·dropout·正则化·过拟合
蚝油菜花1 天前
万字深度解析Claude Code的hook系统:让AI编程更智能、更可控|上篇—详解篇
人工智能·ai编程·claude
AImatters1 天前
2025 年PT展前瞻:人工智能+如何走进普通人的生活?
人工智能·ai·具身智能·智慧医疗·智慧出行·中国国际信息通信展览会·pt展
AI小书房1 天前
【人工智能通识专栏】第十五讲:视频生成
人工智能
zzywxc7871 天前
AI工具全景洞察:从智能编码到模型训练的全链路剖析
人工智能·spring·ios·prompt·ai编程
甄心爱学习1 天前
DataSet-深度学习中的常见类
人工智能·深度学习
伟贤AI之路1 天前
【分享】中小学教材课本 PDF 资源获取指南
人工智能·pdf
aneasystone本尊1 天前
详解 Chat2Graph 的推理机实现
人工智能
金融小师妹1 天前
多因子AI回归揭示通胀-就业背离,黄金价格稳态区间的时序建模
大数据·人工智能·算法