【ECS生长万物之开源】使用计算巢发布大模型的零代码微调服务

简介: 【ECS生长万物之开源】使用计算巢发布大模型的零代码微调服务

系列文章

前言

各位看官,最近是否被大模型相关信息刷屏了呢,铺天盖地的大模型预训练、微调等各种关键词是否让你眼花缭乱呢?在如此热度之下,你有没有想过自己亲自动手部署一个大模型执行训练或者微调呢,或许你曾经尝试过却被某个繁琐的步骤劝退了呢?又或者你是模型的研究人员或开发人员,想要让你的模型服务更多用户、有更大的影响力?如果你有自己的基础大模型供给其他人精调,却苦于难以部署、难以让用户上手使用等各种问题,来试试计算巢吧,你的这些问题都将迎刃而解!

按照传统方式,想要对一个大模型进行微调一共需要以下这些步骤:

首先需要创建云资源或者使用线下资源,然后安装各种GPU驱动和各种依赖环境。接着需要自己编写微调脚本或者找一些开源的微调方法,然后就是一系列的pip install或者conda install。运气好的话,你的微调能够顺利run起来,可是稍有差池,也许就会抛出各类错误让你崩溃。讲到这里有没有勾起你痛苦的回忆呢?没关系,计算巢将为你彻底解决这些烦恼!!!


本文将以ChatGLM高效微调为例,为各位展示在计算巢中如何发布一个能够实现大模型的零代码微调的服务

服务部署步骤

0. 服务镜像准备

本文是基于ECS镜像进行部署的,所以第一步请在ECS控制台制作包含ChatGLM高效微调代码和运行环境的ECS镜像。接下来请访问计算巢创建关联该镜像的部署物。填写部署物的基本信息并选择关联刚刚创建的ECS镜像即可完成部署物的发布。


1. 服务信息填写

登陆到阿里云计算巢控制台点击创建服务进行服务新建,填写您要发布服务的基本信息。

2. 部署信息填写

2.1 资源编排模版填写

接下来重点来咯~在服务部署信息中,我们需要填写ROS模版或Terraform模版来定义我们所需要的资源和资源之间的依赖关系,文末给出了示例模版链接供大家参考。您也可以在ROS可视化编辑器中尝试编写自己的模版!

2.2 部署物关联

如果您的模版成功通过校验,那么恭喜,我们的部署过程已经成功一大半了!

在前面我们已经准备好了部署物,现在可以派上用场了。点击设置镜像关联,在实例创建时将自动基于我们的自定义镜像拉起实例。

如果您不想要通过镜像关联的方式,也可以在ROS模版中定义RunCommand来初始化您所需要的环境,可以按照喜好随意选择两种方式中的一种。

2.3 运维编排模版填写

接下来还剩最后一步:定义微调运维操作。

运维操作是指使用通过运维编排(OOS)对创建的资源进行自动化运维。简单来说,在这里我们的目的是利用OOS及其集成的能力向目标ECS下发微调指令。

您在微调中需要的参数以及各种限制关系都可以通过您编写的OOS模版进行填写或选择。这些参数最终将组装成为Shell或Python脚本下发到指定ECS上从而执行微调任务。编写好的模版呈现效果长下面这样👇:

微调操作中的参数是通过OOS模版Parameters字段设置的,而Parameters中设置的参数最终会在RunCommand中被引用,下面给出一个简单的示例帮助您理解OOS模版。详细示例参考文末给出的示例模版链接。

FormatVersion: OOS-2019-06-01
Description: 执行指定微调脚本运维操作
Parameters:
  regionId:
    Type: String
    Label:
      en: RegionId
      zh-cn: 地域ID
    AssociationProperty: RegionId
    Default: '{{ ACS::RegionId }}'
  workingDir:
    Type: String
    Default: /root/ChatGLM-Efficient-Tuning
    Description: 脚本执行路径
   ...
Tasks:
    Properties:
      commandContent: |-
        #!/bin/bash
        write your finetune script here
      workingDir: '{{workingDir}}'
      instanceId: '{{ ACS::TaskLoopItem }}'
      commandType: RunShellScript
      timeout: '{{timeout}}'

与ROS模版类似,我们也提供了一个执行ChatGLM微调任务的OOS模版供您参考,或者您也可以在OOS控制台编写您的OOS模版来定制运维操作。

3. 发布服务

至此,创建一个大模型微调服务的所有必要操作都已经完成,点击“保存并提交审核”即可在审核通过后成功发布服务!!!

经过以上步骤,用户将在计算巢服务页面看到您刚刚创建的大模型微调服务,用户点击即可部署属于自己的大模型微调服务,并且一键执行微调,真正做到零代码实现微调。

总结

本文详细介绍了如何在计算巢中发布一个大模型微调服务。通过计算巢在私有化部署场景下提供的一键部署、高效运维等多种能力,最大程度上简化了大模型部署和微调的流程,使大模型的使用门槛降低最低。欢迎各位来计算巢试用体验~~


参考模版链接

ChatGLM微调服务发布ROS模版:https://github.com/aliyun/ros-templates/blob/master/compute-nest-best-practice/opensource/chatglm-finetune/template.yaml

ChatGLM微调OOS模版:https://github.com/aliyun/ros-templates/blob/master/compute-nest-best-practice/opensource/chatglm-finetune/oos/finetune.yaml


相关文章
|
17天前
|
人工智能 网络安全 开发工具
视觉智能开放平台操作报错合集之服务部署在pdd的服务器,调用报错:The SSL connection could not be established,该如何解决
在使用视觉智能开放平台时,可能会遇到各种错误和问题。虽然具体的错误代码和消息会因平台而异,但以下是一些常见错误类型及其可能的原因和解决策略的概述,包括但不限于:1. 认证错误、2. 请求参数错误、3. 资源超限、4. 图像质量问题、5. 服务不可用、6. 模型不支持的场景、7. 网络连接问题,这有助于快速定位和解决问题。
|
2月前
|
弹性计算 运维 Java
最佳实践:阿里云倚天ECS在千寻位置时空智能服务的规模化应用
阿里云、平头哥及安谋科技联合举办的飞天技术沙龙探讨了倚天Arm架构在业务创新中的应用。活动中,千寻位置运维专家分享了将核心业务迁移到倚天处理器ECS实例的成功案例,强调了倚天处理器的高能效比和降本增效优势。迁移过程涉及操作系统、CICD系统和监控系统的适配,以及业务系统的性能测试。目前,千寻已迁移了上千台ECS实例到倚天处理器,实现了成本和效率的显著提升。未来计划继续扩展倚天处理器在核心业务和K8S中的应用。
|
7天前
|
Shell
服务器需要扩容,如何停止宝塔的所有服务?
服务器需要扩容,如何停止宝塔的所有服务?
17 3
|
9天前
|
存储 应用服务中间件 文件存储
Ngnix服务器版本升级需求分析,如何不停止Ngnix服务进行升级
Ngnix服务器版本升级需求分析,如何不停止Ngnix服务进行升级
|
14天前
|
Prometheus 监控 Cloud Native
Java 服务挂掉,服务器异常宕机问题排查
Java 服务挂掉,服务器异常宕机问题排查
20 1
|
23天前
|
JSON API 数据库
Python使用Quart作为web服务器的代码实现
Quart 是一个异步的 Web 框架,它使用 ASGI 接口(Asynchronous Server Gateway Interface)而不是传统的 WSGI(Web Server Gateway Interface)。这使得 Quart 特别适合用于构建需要处理大量并发连接的高性能 Web 应用程序。与 Flask 类似,Quart 也非常灵活,可以轻松地构建 RESTful API、WebSockets、HTTP/2 服务器推送等。
|
18天前
|
Shell 网络安全 开发工具
git实现服务器自动push拉取代码--webhooks
git实现服务器自动push拉取代码--webhooks
28 1
|
11天前
|
负载均衡 Java Linux
黑马头条01,环境搭建,今日头条的介绍,今日头条的功能架构图,技术栈的说明,服务层,nacos(奶靠丝)安装,安装在Linux服务器上环境准备,
黑马头条01,环境搭建,今日头条的介绍,今日头条的功能架构图,技术栈的说明,服务层,nacos(奶靠丝)安装,安装在Linux服务器上环境准备,
|
1月前
|
机器学习/深度学习 人工智能 网络安全
人工智能平台PAI产品使用合集之在本地可以成功进入模型流,但在服务器上无法进入,是什么原因
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
12天前
|
缓存 Linux 开发工具
centos设置ntp服务同步目标服务器时间
【7 月更文挑战第 1天】linux+centos设置ntp服务同步目标服务器时间

相关产品

  • 计算巢服务