介绍合成数据工作坊:轻松创建合成数据集的门户

社区文章 发布于2024年6月20日

概述

我很高兴能分享合成数据工作坊,这是一个旨在帮助那些GPU资源有限的用户无需大量设置即可生成合成数据集的Space。这个Space是一个实验,它使用Hugging Face Spaces提供了一个即用型计算环境,以促进合成数据的创建。

Screenshot of the Space

什么是合成数据?

合成数据是指旨在模仿真实世界数据的人工生成数据。它通过算法使用模型或模拟创建,是机器学习中宝贵的资源。随着大型语言模型(LLMs)的出现,使用合成数据来创建和训练这些模型的现象激增。在过去一年中,对合成数据的兴趣显著增长。

Synthetic dataset growth on the Hub

为什么选择合成数据?

开放式LLM的质量不断提高,使得使用开放模型和库创建合成数据比以往任何时候都更加可行。以前,为许多任务生成数据集既耗时又昂贵,而且一旦数据集创建,就很难进行大幅修改。合成数据使一个人能够为各种任务创建大型数据集,用于模型训练和微调。

尽管对合成数据的大部分兴趣集中在改进LLM上,但使用合成数据进行其他机器学习管道,包括训练更小、特定任务的模型,也有诸多理由。

创建合成数据的障碍

尽管取得了进步,但对于GPU资源有限的用户来说,从一个合适的合成数据生成环境开始可能充满挑战。环境设置可能既耗时又低效。这就是合成数据工作坊的用武之地。

合成数据工作坊的特点

合成数据工作坊是一个Hugging Face Space模板,旨在简化使用流行的开源库生成合成数据。

包含的库和工具

  • Datasets:用于加载、处理和将数据集推送到 Hugging Face hub。
  • vLLM:用于运行生成数据的开放式LLM。
  • Outlines:用于使用结构化生成来控制LLM生成的输出。

除了这些库之外,该空间还提供了一组Jupyter Notebook,指导用户生成合成数据集。这些Notebook可以轻松适应与您的数据集配合使用,并解释所涉及的步骤和过程,从而使用户能够将该方法应用于未来的项目。

即用型环境

  • 预配置了所有必需的库。
  • 无需本地GPU设置。

全面教程

  • 循序渐进的指南。
  • 示例Notebook。

涵盖主题

有一个用于生成合成数据以训练Sentence Transformers模型的示例管道。根据用户兴趣,可能会对其他Notebook进行完善并添加到空间中🤗

如何使用此空间

复制此空间

  1. 复制此空间以创建您自己的实例。
  2. 选择将空间设为私有或公开。
  3. 如果您计划将空间设为公开,请添加JUPYTER_TOKEN密钥。
  4. 选择所需的硬件:运行大多数Notebook需要GPU。
  5. 添加一个小型磁盘,以便在会话之间保存您的工作。

Duplication Screenshot

选择合适的GPU

该空间大量使用vLLM,需要GPU。您可以从较小的GPU开始,然后根据需要升级到较大的GPU,尤其是在运行更大的模型或扩展您生成的数据时。您也可以在CPU上运行此空间,但使用CPU硬件时将无法使用LLM。

后续步骤

合成数据工作坊是一个实验性空间,我渴望收到社区的反馈。请告诉我哪些方面做得好,哪些方面可以改进,以及您希望看到哪些其他功能或教程。

请继续关注更多更新和教程,祝您数据生成愉快!

社区

注册登录 发表评论