更新时间:2025-09-12 GMT+08:00
分享

使用ModelArts Studio(MaaS)压缩模型

ModelArts Studio大模型即服务平台支持对模型广场或用户自建的模型进行压缩,通过SmoothQuant-W8A8或AWQ-W4A16压缩策略优化模型,从而缓解资源占用问题。

场景描述

模型压缩是优化深度学习模型的技术,旨在减少模型的体积、计算量或内存占用,同时尽可能保持其性能(如准确率)。它是解决大型模型在资源受限场景中部署问题的关键手段。

模型压缩适用于追求更高的推理服务性能、低成本部署以及可接受一定精度损失的场景。

模型压缩的原理如下:

  • 参数修剪:删除模型中对性能影响较小的参数,如权重矩阵中绝对值较小的元素,从而减少模型的存储和计算量。
  • 量化:将模型参数的数据类型从高精度(如32位浮点数)转换为低精度(如8位整数),在不损失太多精度的情况下减少模型的存储和计算需求。
  • 知识蒸馏:将复杂的大模型(教师模型)的知识传递给一个较小的模型(学生模型),使学生模型在较小的规模下仍能保持较好的性能。
    ModelArts Studio(MaaS)大模型即服务平台当前支持的模型压缩策略主要是SmoothQuant-W8A8和AWQ-W4A16两种量化压缩策略。
    表1 模型压缩策略介绍

    压缩策略

    说明

    适用场景

    SmoothQuant-W8A8

    SmoothQuant是一种同时确保准确率与推理高效的训练后量化(PTQ)方法,W8A8可实现8-bit权重、8-bit激活(W8A8)量化,引入平滑因子来平滑激活异常值,将量化难度从较难量化的激活转移到容易量化的权重上。

    W8表示将权重(Weight)量化为8位整数(INT8);A8表示将激活(Activation)量化为8位整数。

    • 长序列的场景
    • 大并发量的场景

    AWQ-W4A16

    AWQ是一种大模型低比特权重的训练后量化(PTQ)方法,W4A16可实现4-bit权重、16-bit激活(W4A16)量化,通过激活值来选择并放大显著权重,以提高推理效率。

    W4表示将大部分权重量化至4位整数(INT4),大幅减少存储占用。A16表示保持激活值为16位浮点数(FP16/BF16),避免因激活量化引入额外误差。

    • 小并发量的低时延场景
    • 更少推理卡数部署的场景

约束限制

表2列举了在MaaS平台上支持模型压缩的模型,不在表格里的模型不支持在MaaS平台上使用模型压缩功能。
表2 支持模型压缩的模型

模型名称

SmoothQuant-W8A8

AWQ-W4A16

Llama2-13B

Llama2-70B

Llama2-7B

Llama3-70B

Llama3-8B

Qwen1.5-14B

Qwen1.5-72B

Qwen1.5-7B

Qwen2-72B

x

Qwen2-72B-1K

x

Qwen2.5-72B

x

Qwen2.5-32B

前提条件

  • 已准备好用于存放压缩后模型权重文件的OBS桶,OBS桶必须和MaaS服务在同一个Region下。关于如何创建OBS桶和上传文件,请参见OBS控制台快速入门
  • 如果需要对已创建的模型进行压缩,则该模型需支持压缩,且在模型管理 > 我的模型页面中,模型的“状态”“创建成功”

创建压缩作业

  1. 登录ModelArts Studio(MaaS)控制台,在顶部导航栏选择目标区域。
  2. 在左侧导航栏,选择“模型压缩”进入作业列表。
  3. 单击“创建压缩作业”进入创建页面,完成创建配置。
    表3 创建压缩作业参数说明

    参数

    说明

    作业设置

    作业名称

    自定义压缩作业名称。支持1~64位,以中文、大小写字母开头,只包含中文、大小写字母、数字、中划线、下划线的名称。

    描述

    自定义压缩任务简介。最大支持1000字符。

    模型设置

    来源模型

    单击“选择模型”,选择“模型广场”“我的模型”下面的模型。

    压缩策略

    支持SmoothQuant-W8A8和AWQ-W4A16两种压缩策略。

    • SmoothQuant-W8A8:SmoothQuant是一种同时确保准确率与推理高效的训练后量化(PTQ)方法,W8A8可实现8-bit权重、8-bit激活(W8A8)量化,引入平滑因子来平滑激活异常值,将量化难度从较难量化的激活转移到容易量化的权重上。
    • AWQ-W4A16:AWQ是一种大模型低比特权重的训练后量化(PTQ)方法,W4A16可实现4-bit权重、16-bit激活(W4A16)量化,通过激活值来选择并放大显著权重,以提高推理效率。

    压缩后模型名称

    设置压缩后产生的新模型的名称。支持1~64位,以中文、大小写字母开头,只包含中文、大小写字母、数字、下划线(_)、中划线(-)和英文半角句号(.)。

    参数设置

    平滑系数/Migration Strength

    设置SmoothQuant量化的迁移系数,仅“压缩策略”选择“SmoothQuant-W8A8”时才需要配置。建议使用默认值。

    取值范围:0~1

    默认值:0.5

    压缩后模型权重保存路径

    选择压缩后模型权重文件存放的OBS路径。

    资源设置

    资源池类型

    资源池分为公共资源池与专属资源池。

    • 公共资源池由所有租户共享使用。
    • 专属资源池需单独创建,不与其他租户共享。

    实例规格

    选择实例规格,规格中描述了服务器类型、型号等信息。

    更多选项

    永久保存日志

    选择是否打开“永久保存日志”开关。

    • 开关关闭(默认关闭):表示不永久保存日志,则任务日志会在30天后会被清理。可以在任务详情页下载全部日志至本地。
    • 开关打开:表示永久保存日志,此时必须配置“日志路径”,系统会将任务日志永久保存至指定的OBS路径。

    事件通知

    选择是否打开“事件通知”开关。

    • 开关关闭(默认关闭):表示不启用消息通知服务。
    • 开关打开:表示订阅消息通知服务,当任务发生特定事件(如任务状态变化或疑似卡死)时会发送通知。此时必须配置“主题名”“事件”
      • “主题名”:事件通知的主题名称。单击“创建主题”,前往消息通知服务中创建主题。
      • “事件”:选择要订阅的事件类型。例如“创建中”“已完成”“运行失败”等。
    说明:
    • 需要为消息通知服务中创建的主题添加订阅,当订阅状态为“已确认”后,方可收到事件通知。订阅主题的详细操作请参见添加订阅
    • 使用消息通知服务会产生相关服务费用,详细信息请参见计费说明

    自动停止

    当使用付费资源时,可以选择是否打开“自动停止”开关。

    • 开关关闭(默认关闭):表示任务将一直运行直至完成。
    • 开关打开:表示启用自动停止功能,此时必须配置自动停止时间,支持设置为“1小时”“2小时”“4小时”、6小时或“自定义”。启用该参数并设置时间后,运行时长到期后将会自动终止任务,准备排队等状态不扣除运行时长。
  4. 参数配置完成后,单击“提交”

    “资源池类型”选择“公共资源池”时,会出现“计费提醒”对话框,请您仔细阅读预估压缩时长和费用信息,然后单击“确定”,创建压缩任务。模型压缩运行时会产生费用,压缩时长与选取模型及压缩方式有关。该预估费用不包含OBS存储费用。预估费用基于目录价和预估时长计算,估算存在波动性,最终以实际发生为准。

    “模型压缩”列表中,当压缩作业的“状态”变成“已完成”时,表示模型压缩完成。

模型压缩时长估算

表4 模型压缩时长估算

模型名称

SmoothQuant-W8A8

AWQ-W4A16

Llama2-13B

5~10分钟

60分钟

Llama2-70B

20~30分钟

3小时

Llama2-7B

5~10分钟

40分钟

Llama3-70B

20~30分钟

3小时

Llama3-8B

5~10分钟

40分钟

Qwen1.5-14B

5~10分钟

60分钟

Qwen1.5-72B

20~30分钟

3小时

Qwen1.5-7B

5~10分钟

40分钟

Qwen2-72B

20~30分钟

-

Qwen2-72B-1K

20~30分钟

-

Qwen2.5-72B

40分钟

-

Qwen2.5-32B

20~30分钟

2小时

查看压缩作业信息

  1. 登录ModelArts Studio(MaaS)控制台,在顶部导航栏选择目标区域。
  2. 在左侧导航栏,选择“模型压缩”进入作业列表。
  3. 单击作业名称,进入压缩作业详情页面,可以查看作业详情和日志。
    • “详情”:可以查看作业的基本信息,包括作业、模型、资源等设置信息。
    • “日志”:可以搜索、查看和下载作业日志。

删除压缩作业

删除操作无法恢复,请谨慎操作。

  1. 登录ModelArts Studio(MaaS)控制台,在顶部导航栏选择目标区域。
  2. 在左侧导航栏,选择“模型压缩”进入列表。
  3. 选择压缩作业,单击操作列的“删除”,在弹窗中输入“DELETE”,单击“确定”,删除作业。

后续操作

模型压缩后,您可以将其部署为我的服务,进行在线体验或API调用。具体操作,请参见使用ModelArts Studio(MaaS)部署模型服务使用ModelArts Studio(MaaS)部署模型服务调用ModelArts Studio(MaaS)部署的模型服务

相关文档