You need to enable JavaScript to run this app.
导航
模型管理服务
最近更新时间:2025.02.07 16:07:09首次发布时间:2025.01.10 20:58:29

概述

模型管理服务(Model Management Service,MMS)是一套可对用户加密模型实现在线发布和自动化部署的服务,能够保障用户私有模型在云上的安全性。

准备工作

  1. 准备一台128GB以上内存物理机器,并安装好Python3环境(建议使用Anaconda环境,避免依赖冲突)。
  2. 执行以下脚本,安装Jeddak Secure Model SDK(点此下载),此SDK的功能包含模型压缩、模型加密、模型上传和基线计算等能力。
export VERSION=0.1.6
pip3 install bytedance.jeddak_secure_channel-${VERSION}-py3-none-any.whl
  1. 准备模型,例如Qwen32B模型,安装如下目录进行组织,文件夹名称为模型的名称,文件夹内文件为明文模型文件。
  1. 登录火山引擎,创建对象存储TOS的桶,并记住bucket_name。创建存储桶的时候建议选择华北2(北京区域),对应的region为cn-beijing。
  1. 在火山引擎页面查看账号ID,如下图所示,并记录此ID为app_id,以备运行SDK所需。
  1. 创建火山账号的AK、SK并记录,以备运行SDK所需。
  1. 使用如下脚本(脚本命名为sdk.py)实现对模型的压缩、加密、创建密钥、上传TOS。
from bytedance.jeddak_secure_model.model_encryption import EncryptionConfig, JeddakModelEncrypter

if __name__ == "__main__":
    model_path = "/root/pcc/Qwen32B"  # 模型的文件夹路径
    bucket_name = "llmmodels"  # 创建TOS的存储桶
    # 火山账号的ak sk
    volc_ak = "your access key"
    volc_sk = "your secret key"
    region = "cn-beijing" # 存储桶的区域,对应的映射关系见步骤5
    endpoint = "tos-cn-beijing.volces.com"
   
    ring_id = ""   # 选填,如已有密钥环,在此填写密钥环ID;如未填,则会根据`ring_name` 自动创建密钥环
    ring_name = "Qwen32B-Ring"  # 自定义密钥环名称
    ring_desc = "Ring for Qwen32B" # 添加对密钥环的描述
    key_name = "Qwen32BKey"  # 自定义密钥名称
    key_desc = "Key for Qwen32B"   # 添加对可信密钥的描述
    app_id = "your account id"  # 火山页面查看自己账号的app_id
    service = "pcc" 
    
    # 目前参数传空的
    config = EncryptionConfig("", "")
    encrypter = JeddakModelEncrypter(config)

    res = encrypter.encrypt_model_and_upload(
        model_path=model_path,
        bucket_name=bucket_name,
        volc_ak=volc_ak,
        volc_sk=volc_sk,
        region=region,
        endpoint=endpoint,
        ring_id=ring_id,
        ring_name=ring_name,
        ring_desc=ring_desc,
        key_name=key_name,
        key_desc=key_desc,
        app_id=app_id,
        service=service
    )

    print(res)
  1. 运行上述脚本
python3 sdk.py
  1. 获取加密模型相关信息

属性

释义

ring_id

加密模型的可信密钥环ID

key_id

加密模型的可信密钥ID

baseline

加密模型的基线值

model_name

加密模型的名称

  1. 前往火山引擎官网的对象存储获取通过SDK自动上传的加密模型存储路径。密文模型一般会被切分为多个part,点击首个part的「详情」,获取该part对应的URL为https://llmmodels.tos-cn-beijing.volces.com/model_name/enc-part-00000,将此路径的后缀“enc-part-00000”去掉,则得到了完整密文模型对应的URL。

发布加密模型

通过模型管理服务「发布模型」入口,弹窗填写相关字段信息后,完成加密模型发布。模型名称、模型版本、加密密钥、基线值、TOS地址等信息均已在「准备工作」环节获取。
Image

部署加密模型

对于已发布且处于【待部署】状态的模型,点击「部署」,系统会自动完成模型部署。

部署预计需要10-20分钟,成功后状态会更新为【部署成功】。
Image

检测模型状态

完成部署的模型,可点击「测试」,对模型可用性做在线检测,检测通过则状态从【未测试】更新为【测试成功】。

Image