更新时间:2026-09-01 GMT+08:00
分享

使用Cline进行模型训练

Code Server是一个开源项目,它将Visual Studio Code完整运行在远程服务器上,并通过浏览器提供访问能力。主要支持以下能力:

  • 完整VS Code体验:支持扩展市场、调试器、终端、Git等几乎所有原生功能。
  • 跨平台访问:只需浏览器即可在任何设备上编写代码。
  • 统一开发环境:代码、配置和依赖项均部署在服务器上,确保环境一致性。
  • 私有部署:数据完全由用户掌控。

Cline是集成在Code Server中的AI编程助手。本文介绍如何在Notebook实例的Code Server中使用Cline进行模型训练。

注意事项

计费说明

  • Cline本身不收费,但调用大模型API会产生费用。具体计费方式取决于您选择的API Provider。
  • 在ModelArts运行Notebook实例时,会使用计算资源和存储资源,产生计算资源和存储资源的累计值计费。计费详情请参见开发环境计费项

前提条件

在Code Server中配置Cline

Nanochat项目开发

Nanochat是AI领域的Andrej Karpathy发布的一个开源项目,是一套极简、完整且低成本的训练框架,可以用不到100美元的成本,在几个小时内从零训练出一个属于自己的、能对话的迷你版ChatGPT。

本节以nanochat项目为例,介绍如何在Code Server中快速开发,包括文件上传、环境准备、项目运行等能力的演示。

演示环境配置

  • 实例规格:8 vCPUs | 32 GB (modelarts.vm.cpu.8u)

  • 演示镜像:pytorch_2_1:pytorch_2.1.0-cuda_12.1-py_3.9.11-ubuntu_22.04-x86_64-20240313165241-219655b

项目加载

您可以任选以下方式加载项目。

  • 方式一:Git命令下载
    1. 打开Terminal。
      图1 New Terminal
    2. 使用命令下载。
      git clone https://github.com/karpathy/nanochat.git
      cd nanochat
  • 方式二:拖拽上传
    1. 进入工作目录,打开文件夹。
      图2 Open Folder
    2. 将本地文件夹拖到Code Server工作目录下,自动上传文件夹下内容。

nanochat环境准备

  1. 安装uv。

    uv是一个用Rust编写的极速Python包和项目管理工具,旨在成为Python生态系统中一个统一、高效的工具链。nanochat项目中使用uv来管理Python环境,所以需先安装uv。

    curl -LsSf https://astral.sh/uv/install.sh | sh
  2. 安装nanochat环境。

    本教程基于CPU环境演示,所以执行如下命令安装nanochat。

    export UV_INDEX_URL="https://pypi.tuna.tsinghua.edu.cn/simple
    uv sync --extra cpu

    注意:如果无法访问HuggingFace服务,需将dataset.py代码中硬编码数据地址切换为国内源。

在CPU环境执行模型训练

本文档主要为演示Code Server功能,非大模型的训练调试,所以将训练脚本中的迭代步数减少以缩短训练耗时。对模型的训练结果也未做调参处理,如果想获得更好的训练效果,可调整参数或在GPU环境运行本项目。

启动训练脚本。

# 启动运行脚本
bash runs/runcpu.sh

之后TERMINAL上即可显示大模型的主要训练流程日志,主要包括如下步骤:

  1. 训练数据下载:数据集默认下载至 /home/ma-user/.cache/nanochat路径下。
  2. Tokenizer训练。

  3. 模型初始化。

  4. 自监督训练过程:可以观察到Loss逐步降低,模型从随机开始,逐渐学会预测下一个Token。在第100步时,模型输出重复的无意义结果;第3000步,模型输出具备一定的逻辑。

  5. SFT过程:可以看到SFT过程出现Loss异常,说明CPU上训练SFT需要进行更专业的调参。

  6. 模型对话。

    执行以下脚本,可以获得模型的对话输出。

    python -m scripts.chat_cli -p "What is the capital of France?"

使用Cline进行模型训练

Cline是一款基于大语言模型的Code Server插件,能够理解自然语言指令,自动完成代码生成、文件编辑、终端命令执行等复杂开发任务。您可以借助Cline作为AI编程助手,自动化完成各种项目的环境配置、依赖安装及使用,大幅提升开发效率。关于Cline的风险说明,请参见Cline风险说明及安全建议

在Cline配置模型服务信息

  • 免费模型

    Cline提供免费的模型调用,选择Absolutely Free,之后选择一个免费的模型,登录Cline账号使用。

  • 第三方模型厂商

    Cline支持多种模型接入方式,覆盖面非常广泛,包括Huawei Cloud MaaS、Claude Code、DeepSeek、OpenAI等。

    以Huawei Cloud MaaS为例:

    1. 在API Provider中搜索Huawei Cloud MaaS。
    2. API Key输入在华为云已创建的API Key。关于如何创建API Key,请参见创建API Key
    图3 配置模型信息

    配置完成后,在对话框即可与大模型对话。

    图4 与大模型对话

项目实践

本节以Nanochat项目开发为例,介绍如何使用AI助手Cline,提升开发效率。

  1. 使用Plan模型设定计划。

    在Cline对话框中输入问题,Cline会制定一个执行计划。

    图5 输入问题
    图6 制定计划
  2. 使用Act模式执行计划。单击“Act”切换为Act模式,Cline会帮助用户执行对应的计划。

    Cline执行需要一定的操作权限,可以通过对话框上方图标设置。

    图7 Act模型
    图8 设置操作权限

    Cline根据Plan指定的计划,自动执行如下流程:

    1. 下载项目。

    2. nanochat环境初始化。

    3. 运行nanochat。

    4. 打开日志文件,可以看到脚本在正常运行。

    5. 修改训练步数后重新训练。

      可以看到Cline停止了刚才的训练脚本,自动修改了步数后再次触发训练脚本。

    6. 问题定位。
      1. 脚本运行一段时间后异常停止,使用Cline进行问题定位,识别到为OOM错误,使用Cline解决后重新运行。

      2. 让Cline修改脚本,减小模型大小,再次训练。

      3. Cline自动修改模型大小后,成功运行项目。

相关文档