bolt开始使用 Unsloth Studio

关于微调工作室、数据配方、模型导出和聊天的入门指南。

Unsloth Studio 是一个本地的、基于浏览器的 GUI,可用于在无需编写任何代码的情况下微调大型语言模型。它将训练管道封装在一个干净的界面中,处理模型加载、数据集格式化、超参数配置和实时训练监控。

boltStudio(工作室)hat-chef数据配方box-isometric导出comment-dots聊天video视频

设置 Unsloth Studio

首先,使用本地安装或云选项启动 Unsloth Studio。请按照 安装说明 为您的设置,或使用我们的 免费 Colab 笔记本。对于本地设置,请运行:

unsloth studio -H 0.0.0.0 -p 8888

然后在浏览器中打开 http://localhost:8888

首次启动时,您需要创建一个密码来保护您的帐户,并在以后再次登录。

然后您将看到一个简短的入门向导,用于选择模型、数据集和基本设置。您可以随时跳过它并手动配置所有内容。

bolt Studio - 快速入门

Unsloth Studio 主页有 4 个主要区域: 模型, 数据集, 参数,以及 训练/配置

  • 便捷的模型和数据设置 来自 Hugging Face 或本地文件

  • 灵活的训练选项 如 QLoRA、LoRA 或完整微调,并填充了默认值

  • 有用的配置工具 用于拆分、列映射、超参数和 YAML 配置

  • 出色的训练可见性 具有实时进度、GPU 统计、图表、启动状态

1. 选择模型和方法

模型类型

选择与您的用例相匹配的模态:

类型
用例

文本

聊天、指令跟随、补全

视觉

图像 + 文本(视觉语言模型)

音频

语音 / 音频理解

嵌入

句子嵌入、检索

训练方法

提供三种方法,可通过胶囊选择器切换:

方法
描述
显存(VRAM)

QLoRA

4 位量化的基础模型 + LoRA 适配器

最低

LoRA

全精度基础模型 + LoRA 适配器

中等

完整微调

所有权重都参与训练

最高

在组合框中输入任何 Hugging Face 模型名称或直接搜索 Hub。本地模型存储在 ~/.unsloth/studio/models 以及您的 Hugging Face 缓存也会出现在列表中。

circle-exclamation

当您选择模型时,Studio 会自动从后端获取其配置,并为所有超参数预填充合理的默认值。

HuggingFace 令牌

如果模型受限(例如 Llama、Gemma),请将您的 Hugging Face 访问令牌粘贴到此处。令牌会实时验证,如果无效会在行内显示错误。

2. 数据集

来源

在两个选项卡之间切换以选择数据来源:

  • HuggingFace Hub — 对 Hub 的实时搜索。每个结果显示最后更新日期。

  • 本地 — 拖放或点击上传非结构化或结构化文件,例如: PDF, DOCX, JSONL, JSON, CSV,或 Parquet 格式。先前上传的数据集会出现在一个会自动刷新的列表中。

提示 Studio 如何解释和格式化您的数据:

格式
何时使用

自动

让 Unsloth 自动检测格式

alpaca

指令 / 输入 / 输出

chatml

OpenAI 风格 消息 数组

sharegpt

ShareGPT 风格对话

拆分与切片

  • 子集 — 从数据集卡自动填充。

  • 训练拆分 / 验证拆分 — 选择要使用的拆分。设置验证拆分会在训练期间启用 验证损失 图表。

  • 数据集切片 — 可选地将训练限制在某个行范围(起始索引 / 结束索引)以进行快速实验。

列映射

如果 Studio 无法自动将您的数据集列映射到正确的角色,会打开一个 数据集预览对话框 。它显示示例行并允许您为每一列分配 指令, 输入, 输出, 图像,等。建议的映射将在可能的情况下预填充。

3. 超参数

参数分组在可折叠的部分中。您可以在此查看我们详细的 LoRA 超参数指南:

🧠Hyperparameters Guidechevron-right
参数
默认值
说明

最大步数

0

0 请改用使用 Epochs(轮次)

上下文长度

2048

可选值:512 → 32768

学习率

2e-4

LoRA 设置

(选择完整微调时隐藏)

参数
默认值
说明

秩(Rank)

16

滑块 4–128

Alpha

32

滑块 4–256

Dropout(丢弃率)

0.05

LoRA 变体

LoRA

LoRA / RS-LoRA / LoftQ

目标模块

全部开启

q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj

对于 视觉 具有图像数据集的模型,会出现四个额外的复选框:

  • 微调视觉层

  • 微调语言层

  • 微调注意力模块

  • 微调 MLP 模块

训练超参数

组织为三个选项卡:

| 参数 | 默认 | |---|---| | 轮次(Epochs) | 3 | | 批量大小(Batch Size) | 4 | | 梯度累积 | 8 | | 权重衰减 | 0.01 | | 优化器 | AdamW 8-bit |

circle-info

Unsloth 梯度检查点: unsloth 使用 Unsloth 自定义的节省内存实现,相较于标准的 PyTorch 选项可以显著减少显存使用。它是推荐的默认选项。

4. 训练与配置

右下角的卡片有三个配置管理按钮和 开始训练 按钮。

按钮
操作

上传

加载先前保存的 .yaml 配置文件

保存

将当前配置导出为 YAML

重置

将所有参数恢复为模型默认值

在模型和数据集均已配置之前,“开始训练”按钮将保持禁用状态。验证错误会在行内显示——例如,在未选择验证拆分的情况下设置验证步数,或将仅文本模型与视觉数据集配对。

加载屏幕

在您点击 开始训练后,当后端准备所有内容时会出现全页覆盖层。

覆盖层显示带有实时阶段更新的动画终端:

  • 蓝色:正在下载模型 / 数据集

  • 琥珀色:正在加载模型 / 数据集

  • 蓝色:正在配置

  • 绿色:训练中

您可以随时使用角落的 × 按钮取消。停止任何操作之前会出现确认对话框。

训练进度与可观测性

一旦到达第一个训练步骤,覆盖层会关闭并显示实时训练视图。当进度条上的步骤达到 100% 时,微调过程完成。您可以查看已用时间和处理的 token 数量。

状态面板

左侧列显示:

  • 轮次(Epoch) — 当前的分数化轮次(例如: 第 1.23 轮)

  • 进度条 — 基于步数,并显示百分比

  • 关键指标:

    • 损失(Loss) — 训练损失,精确到小数点后 4 位

    • 学习率(LR) — 当前学习率,使用科学计数法显示

    • 梯度范数(Grad Norm) — 梯度范数

    • 模型 — 正在训练的模型

    • 方法 - QLoRA / LoRA / 完整

  • 计时行 — 已用时间、预计到达时间(ETA)、每秒步数和处理的总 token 数

GPU 监控

右侧列显示每隔几秒轮询的实时 GPU 统计:

  • 利用率 — 百分比条

  • 温度 — 摄氏度条

  • 显存(VRAM) — 已用 / 总计 GB

  • 功率 — 功耗 / 限制,单位为瓦特

停止训练

使用 停止训练 按钮在进度卡的右上角。一个对话框会给您两个选择:

  • 停止并保存 — 在停止之前保存一个检查点

  • 取消 — 立即停止并且不保存检查点

图表

四个实时图表会随着训练进展更新:

  1. 训练损失 — 原始值,加上 EMA 平滑曲线和运行平均参考线

  2. 学习率 — 学习率调度曲线

  3. 梯度范数 — 随步数变化的梯度范数

  4. 验证损失 — 仅在您配置了验证拆分时显示

每个图表都有设置(齿轮图标),包含:

选项
默认值

查看窗口

最近 N 步 滑块

EMA 平滑

0.6

显示原始值

开启

显示平滑曲线

开启

显示平均线

开启

缩放(每序列)

线性 / 对数

离群值裁剪

不裁剪 / p99 / p95

配置文件(Config Files)

所有训练配置都可以保存并以 YAML 文件重新加载。文件会自动命名为:

YAML 被结构化为三部分:

这使得复现运行、共享配置或对实验进行版本控制变得容易。

hat-chef 数据配方 - 快速入门

Unsloth 数据配方 允许您上传诸如 PDF 或 CSV 等文档,并将它们转换为可用的数据集。通过图节点工作流以可视化方式创建和编辑数据集。

配方页面是主要入口点。配方存储在浏览器本地,因此您可以稍后返回已保存的工作。从这里,您可以创建空白配方或打开有指导的学习配方。

数据配方遵循相同的基本路径。您打开配方页面,创建或选择一个配方,在编辑器中构建工作流,验证并运行预览,然后在输出看起来正确时运行完整数据集。添加种子数据和生成块,验证工作流,预览示例输出,然后运行完整的数据集构建。Unsloth 数据配方由 NVIDIA 提供支持, DataDesignerarrow-up-right.

一目了然,通常的工作流程应如下:

  1. 打开配方页面。

  2. 创建新配方或打开现有配方。

  3. 添加块以定义您的数据集工作流。

  4. 点击 验证 以便及早发现配置问题。

  5. 运行预览以快速检查示例行。

  6. 当配方准备好后运行完整的数据集构建。

  7. 在图形中或在 执行(Executions) 视图中实时查看进度和输出以获取更多细节。

  8. Studio(工作室) 中选择生成的数据集并对模型进行微调。

box-isometric 导出 - 快速入门

使用 Unsloth Studio 的“导出”功能将模型导出、保存或转换为 GGUF、Safetensors 或 LoRA,以便在 Unsloth、llama.cpp、Ollama、vLLM 等中部署、共享或本地推理。导出已训练的检查点或转换任何现有模型。

您可以在此阅读我们关于使用 Unsloth Studio 导出模型的详细教程/指南:

box-isometricModel Exportchevron-right

comment-dots 聊天 - 快速入门

Unsloth Studio 让您在计算机上 100% 离线运行模型。可运行来自 Hugging Face 或本地文件的 GGUF 和 safetensors 等模型格式。

  • 下载并运行 任何模型,例如 GGUF、微调的适配器、safetensors 等。

  • 比较 不同模型 的输出并排显示

  • 上传 在您的提示中使用文档、图像和音频

  • 调优 推理 设置,如:temperature、top-p、top-k 和系统提示

您可以在此阅读我们关于使用 Unsloth Studio 运行模型的详细教程/指南:

comment-dotsStudio Chatchevron-right

video 视频教程

这里有 NVIDIA 创建的视频教程,帮助您开始使用 Studio:

如何安装 Unsloth Studio 视频教程

circle-exclamation

高级设置

CLI 命令

Unsloth CLI(cli.py)提供以下命令:

项目结构

API 参考

所有端点都要求有效的 JWT Authorization: Bearer <token> 头(除非 /api/auth/*/api/health).

方法
端点
描述

GET

/api/health

健康检查

GET

/api/system

系统信息(GPU、CPU、内存)

POST

/api/auth/signup

创建帐户(首次运行需设置令牌)

POST

/api/auth/login

登录并接收 JWT 令牌

POST

/api/auth/refresh

刷新已过期的访问令牌

GET

/api/auth/status

检查认证是否已初始化

POST

/api/train/start

开始训练任务

POST

/api/train/stop

停止正在运行的训练任务

POST

/api/train/reset

重置训练状态

GET

/api/train/status

获取当前训练状态

GET

/api/train/metrics

获取训练指标(损失、学习率、步数)

GET

/api/train/stream

实时训练进度的 SSE 流

GET

/api/models/

列出可用模型

POST

/api/inference/chat

发送聊天消息以进行推理

GET

/api/datasets/

列出 / 管理数据集

最后更新于

这有帮助吗?