轻量微调和推理ChatGLM模型实践

通过在DSW中微调和推理ChatGLM-6B模型,实现定制化、高交互性的对话系统。ChatGLM-6B是一个开源的、支持中英双语的对话语言模型,基于General Language Model (GLM) 架构,具有62亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署,从而实现更智能、交互性更强的人机对话体验。

前提条件

  • 创建工作空间,详情请参见创建工作空间

  • 创建DSW实例,其中关键参数配置如下。具体操作,请参见创建DSW实例

    • 地域及可用区:进行本实践操作时,建议选择华北2(北京)华东2(上海)华东1(杭州)华南1(深圳)这四个地域。这四个地域在后续操作中下载ChatGLM模型数据时速度更快。

    • 实例规格选择:ecs.gn6v-c8g1.2xlarge。

    • 镜像选择:在官方镜像中选择pytorch-develop:1.12-gpu-py39-cu113-ubuntu20.04

操作步骤

步骤一:在DSW中打开教程文件

  1. 进入DSW开发环境。

    1. 登录PAI控制台

    2. 在页面左上方,选择DSW实例所在的地域。

    3. 在左侧导航栏单击工作空间列表,在工作空间列表页面中单击默认工作空间名称,进入对应工作空间内。

    4. 在左侧导航栏,选择模型开发与训练>交互式建模(DSW)

    5. 单击需要打开的实例操作列下的打开,进入DSW实例开发环境。

  2. Notebook页签的Launcher页面,单击快速开始区域Tool下的DSW Gallery,打开DSW Gallery页面。

    image

  3. DSW Gallery页面中,搜索轻量微调和推理ChatGLM模型实践,单击DSW中打开,即可自动将本教程所需的资源和教程文件下载至DSW实例中,并在下载完成后自动打开教程文件。

    image

步骤二:运行教程文件

在打开的教程文件chatglm_6b_ipynb中,您可以查看教程内容以及直接运行教程。

在教程文件中单击image运行对应步骤的命令,当成功运行结束一个步骤命令后,再顺次运行下个步骤的命令。

image

本教程包括以下4个运行步骤:

  1. 下载ChatGLM-6B模型和相关数据

    • 由于ChatGLM数据较大,下载耗时与您所在的地域与网络环境有关,请耐心等待下载完成。

    • 如果运行后未出现正常返回结果,并出现类似404 Not Found的错误,请尝试重新运行下载命令。

  2. 微调模型

    模型训练过程有量化过程,训练时间可能会比较久,请您耐心等待训练完成。

  3. 模型推理

    您如果自行安装推理ChatGLM模型时,执行模型推理前需先检查推理执行脚本evaluate.sh中的CHECKPOINT参数,确保CHECKPOINT参数取值是训练保存的路径名称。

  4. 试玩模型

    1. 执行命令后,在返回结果中单击生成的URL,即可进入WebUI页面。

      说明

      URL为内网访问地址,仅支持在当前的DSW实例内部通过单击链接来访问WebUI页面,不支持通过外部浏览器直接访问。

    2. WebUI页面,输入文本内容,单击Generate,进行模型推理验证。例如:

      image..png