Unsloth 数据配方
学习如何使用 Unsloth Studio 的数据配方创建、构建和编辑数据集。
Unsloth Studio 的 Data Recipes 允许你上传 PDF 或 CSV 等文档文件,并将其转换为可用/合成数据集。你可以通过图节点工作流以可视化方式创建和编辑数据集。在深入了解 Unsloth Data Recipes 之前,本指南会先带你了解基础知识。

Data Recipes 如何工作
Data Recipes 遵循相同的基本流程。你打开 recipes 页面,创建或选择一个 recipe,在编辑器中构建工作流,验证并运行预览,然后在输出看起来正确后运行完整数据集。添加种子数据和生成块,验证工作流,预览示例输出,然后运行完整的数据集构建。Unsloth Data Recipes 由 NVIDIA Nemo Data Designer.

一眼看去,常见的工作流应如下所示:
打开 recipes 页面。
创建一个新 recipe 或打开一个已有 recipe。
添加块来定义你的数据集工作流。
点击 验证 以便尽早发现配置问题。
运行预览以快速检查示例行。
当 recipe 准备好后,运行完整的数据集构建。
在图中或在 执行记录 视图中查看更多详细信息。
在 Unsloth 中选择生成的数据集并微调模型。
开始使用
recipes 页面是主要入口。Recipes 会本地存储在浏览器中,因此你之后可以返回并继续已保存的工作。从这里,你可以创建一个空白 recipe,或者打开一个引导式学习 recipe。

如果你刚接触工作流的概念,学习型 recipes 是最快了解种子数据、提示词、表达式和验证器如何在一个可运行示例中协同工作的方式。如果你已经知道想要的数据集形状,从空白开始通常更快。
选择起始路径
快速构建自定义工作流
从空白开始
通过示例了解产品
从学习型 recipe 开始
继续之前的工作
打开已保存的 recipe
你在编辑器中构建的内容
编辑器是 recipe 成形的地方。你可以从块面板添加块,在对话框中进行配置,在画布上连接它们,然后验证或运行工作流。

编辑器有几个核心部分:
recipe 标题栏,你可以在这里重命名 recipe 并在以下内容之间切换: 编辑器 和 执行记录
画布,recipe 图在这里显示
块面板,你可以在这里添加新块
配置对话框,你可以在这里定义提示词、引用、模型别名、验证器和种子设置。
悬浮 运行 和 验证 控件
这里还需要补充更多内容
recipe 中最常见的块有:
种子 用于来自 Hugging Face、本地结构化文件的输入数据,或将非结构化文档切分成行。
LLM + 模型 用于提供方、模型配置、LLM 生成块以及共享工具配置文件。
表达式 用于基于 Jinja2 的转换,不需要调用 LLM。
验证器 用于使用内置的 Python、SQL 和 JavaScript/TypeScript 代码检查器过滤不良生成代码。
采样器 用于类别和子类别等确定性列。
引用如何工作
大多数生成数据的块(有少数例外)都会成为后续块的引用。这是 Data Recipes 背后的核心思想之一。你只创建一次值,然后在提示词、表达式、结构化输出和验证步骤中重复使用它。

例如:
一个名为
domain的类别块可以引用为{{ domain }}种子列可以直接用于 LLM 提示词,你的种子数据中的列(例如 HF 数据集列、CSV)
结构化 LLM 输出可以为后续提示词暴露字段
表达式块可以在不再次调用模型的情况下组合先前的值
接下来会发生什么?
预览运行适合快速迭代。它们会在编辑器中返回示例行和分析结果,这样你就可以在提交完整运行之前检查生成的数据。
完整运行会创建一个持久化的本地数据集工件。该输出随后会出现在 Unsloth 的本地数据集选择器中,你可以再次检查它并将其用于微调。你也可以选择将数据集发布到你的 Hugging Face 仓库。
核心构建块


模型设置分为两个可用层:
模型提供方 定义端点和身份验证
模型配置 定义模型名称和推理设置
此设置适用于托管提供方、自托管端点, vLLM , llama.cpp 或你在 Unsloth 之外运行的任何兼容 OpenAI 的 API。
完成模型设置后,你可以使用四种 LLM 块类型:
LLM 文本
自由形式文本
说明、解释、对话和描述
LLM 结构化
JSON
需要固定字段和可预测结构的输出
LLM 代码
代码
Python、SQL、TypeScript 及其他代码生成任务
LLM 评审
评分评估
使用一个或多个用户定义的分数对输出进行评分
工具配置文件
工具配置文件块为一个或多个 LLM 块定义共享的基于 MCP 的工具访问。当生成步骤需要工具时使用它们,例如通过以下方式查找代码文档 Context7.
左侧图片显示了在工具配置文件块对话框中添加并配置的 Context7 MCP:

验证器
验证器块主要针对 LLM 代码块,通过对生成的代码输出进行 lint 检查和语法验证,这有助于通过过滤掉错误或无效的代码行,将它们排除在最终数据集之外。内置选项覆盖 Python、SQL 和 JavaScript/TypeScript 验证。

验证、预览和运行
一旦 recipe 工作流就绪,下一步就是执行。推荐的模式是:先验证,再预览以快速获取反馈,并在执行视图中检查生成的数据,然后在你觉得输出符合计划时运行完整数据集。
按以下顺序使用执行控制:

最后更新于
这有帮助吗?

