You need to enable JavaScript to run this app.
导航
部署模型服务 - 自定义框架
最近更新时间:2024.12.17 10:49:09首次发布时间:2024.09.05 20:01:20

本文介绍了如何向边缘节点部署基于自定义推理框架(非 Triton 框架)的模型服务。自定义框架在服务大语言、视觉语言等模型上更具优势。

预置推理框架镜像

推理框架提供了模型的运行环境。要为模型应用自定义推理框架,您必须提供自定义框架的镜像地址。边缘智能在部署您的模型时,会先自动拉取镜像进行安装,然后再部署模型。
边缘智能预置了一些来自第三方的推理框架镜像,方便您直接使用;若预置镜像无法满足您的需求,请自行准备好推理框架镜像。
下表罗列了边缘智能预置的推理框架。预置推理框架均来自第三方开源系统。在选择框架时,请注意以下内容:

  • 不同推理框架有不同的安装要求。选择特定框架时,请自行评估边缘节点是否满足其安装要求。
  • 不同推理框架支持的模型不同。选择特定框架时,请自行评估要部署的模型是否被支持。

推理框架

简介

预置

LMDeploy

LMDeploy 是一个用于压缩、部署和服务大型语言模型 (LLM) 和视觉语言模型 (VLM) 的 Python 库。其核心推理引擎包括 TurboMind Engine 和 PyTorch Engine。前者由 C++ 和 CUDA 开发,力求推理性能的极致优化,而后者纯 Python 开发,旨在降低开发人员的门槛。

r-veen.volces.com/library/msc/lmdeploy:v0.5.2.post1

vLLM

vLLM 是一个快速且易于使用的 LLM 推理和服务库。

  • GitHub 仓库地址:https://github.com/vllm-project/vllm
  • 开源许可协议:Apache-2.0 license
  • 安装要求:
    https://docs.vllm.ai/en/latest/getting_started/installation.html#requirements
  • 支持的模型:
    Supported Models — vLLM
r-veen.volces.com/library/msc/vllm-openai:v0.5.4
r-veen.volces.com/library/msc/vllm-openai:v0.4.0

TGI

文本生成推理 (TGI) 是一个用于部署和提供大型语言模型 (LLM) 的工具包。TGI 为最流行的开源 LLM(包括 Llama、Falcon、StarCoder、BLOOM、GPT-NeoX 和 T5)提供高性能文本生成功能。

r-veen.volces.com/library/msc/text-generation-inference:v2.2.0

前提条件

  • 您已经为项目绑定了边缘节点。相关操作,请参见绑定节点
  • 如果您使用边缘节点型 aPaaS 工具,则 aPaaS 工具必须是 高级版
    边缘节点 - 基础版 aPaaS 工具不包含边缘推理功能。更多信息,请参见资源包(aPaaS 工具)计费说明
  • 如果您要部署自定义模型,您必须完成以下任务:创建自定义模型并为自定义模型创建和发布版本。相关操作,请参见创建自定义模型创建一个版本

操作步骤

  1. 登录边缘智能控制台

  2. 在左侧导航栏顶部的 我的项目 区域,选择您的项目。

  3. 在左侧导航栏,选择 边缘推理 > 模型服务

  4. 单击 自定义框架 页签,然后单击 部署模型服务

  5. 部署模型服务 页面,配置以下参数,然后单击 确认
    Image

    区域

    参数

    说明

    基本信息

    所属项目

    默认为当前选择的项目。

    部署位置

    选择将模型服务部署到指定的 节点节点组

    节点

    说明

    只有当 部署位置节点 时,该参数才会出现。

    选择一个或多个节点,将模型服务部署到指定的节点。

    节点组

    说明

    只有当 部署位置节点组 时,该参数才会出现。

    选择一个节点组,将模型服务部署到指定的节点组。

    • 请确保节点组中所有节点架构相同,否则可能部署失败。
    • 模型服务只会部署到节点组中的在线节点上。

    服务名称

    为模型服务设置一个名称。您可以使用以下字符:英文字母、数字、汉字、下划线(_)和连字符(-)。请注意以下规则:

    • 长度限制为 32 个字符以内。
    • 下划线和连字符不能用在开头或结尾,也不能连续使用。
    • 名称不能与边缘节点上其他模型服务名称重复。

    副本数量

    设置要创建的副本数量。取值范围:1~10。默认值:1。

    模型信息

    模型

    选择要使用的模型。您可以选择边缘智能的官方模型,也可以选择您创建的自定义模型。

    模型版本

    选择要使用的模型版本。

    服务配置

    镜像来源

    从以下两种推理框架镜像来源中选择一种:

    • 平台预置镜像:边缘智能预置镜像,可直接选择镜像。
    • 自定义镜像:您的自定义镜像,需提供镜像地址。

    镜像选择

    说明

    镜像来源平台预置镜像 时,该配置项才会出现。

    选择一个预置镜像。关于不同镜像的介绍,请参见预置推理框架镜像

    镜像地址

    说明

    镜像来源自定义镜像 时,该配置项才会出现。

    输入您的推理框架镜像的 URL 地址。地址需符合 URL 格式。长度不超过 1024 个字符。

    说明

    您可以将制作好的应用镜像托管在某个镜像仓库,获取镜像的 URL。我们推荐您将镜像托管到火山引擎镜像仓库

    若您提供的私有镜像仓库地址,请单击 输入,并提供您的 仓库密钥。否则,边缘智能无法访问您的镜像,这将导致服务部署失败。仓库密钥 包含 用户名密码

    注意

    不使用免密组件,且需要拉取私有镜像时,必须配置 仓库密钥

    Python三方库配置

    设置您希望在边缘节点上安装的第三方 Python 库。格式为 <库名>==<版本号>,多个库通过换行分隔。示例:

    numpy==1.22.0
    pandas==1.5.3
    

    环境变量

    您可以手动设置环境变量。Kubernetes 在创建 Pod 时,会将环境变量的信息注入到容器中。
    单击 + 添加一个环境变量。可以添加多个环境变量。

    启动命令

    输入容器启动前运行的命令。多行命令使用换行符分隔。

    GPU算力

    设置允许此模型服务使用的 GPU 数量。取值范围:1~8。

    注意

    要使用 GPU 算力调度能力,必须确保您的节点已经启用了 NVIDIA device plugin 组件。更多信息,请参见绑定节点

    端口

    将容器内端口与宿主机(即边缘节点)的端口进行映射。单击 + 添加端口映射。可以添加多个端口映射。

完成以上操作后,您可以在 模型服务 列表看到刚刚部署的模型服务。此时,模型服务的状态是 部署中。您可以将光标放置在状态旁边的问号图标上,了解部署进度。

  • 当模型服务的状态变为 运行中,表示模型服务已经部署成功。
  • 如果模型服务的状态是 部署失败,您可以将光标放置在 部署失败 上,然后单击 查看原因,以获取具体的错误消息。