使用 Together AI 对 Hugging Face Hub LLM 进行微调

Together AI 与 Hugging Face 推出了集成,使得能够使用 Together AI 的托管基础设施对托管在 Hugging Face Hub 上的任何兼容的大型语言模型(LLM)进行微调。这消除了开发者在定制开源模型时需要管理复杂的 DevOps 开销或昂贵的训练硬件的需求。

与 Hugging Face Hub 的双向集成

该集成实现了模型在 Hugging Face Hub 与 Together AI 训练环境之间的无缝流动。Together AI 可以从 Hub 拉取任何兼容的公共模型,也可以使用 API 令牌从私有仓库获取模型。微调完成后,如果指定了目标仓库名称,生成的模型可以自动推送回 Hugging Face Hub。

技术实现:基础模型与自定义模型

要微调模型,Together AI 平台使用两参数系统来配置训练环境:

  • Base Model (model):它作为训练模板。它是来自 Together AI 官方目录的模型,定义了基础设施配置、内存分配、GPU 资源优化以及推理设置。
  • Custom Model (from_hf_model):这是用户希望微调的具体 Hugging Face 模型。

为了获得最佳效果,自定义模型必须在架构、近似规模和序列长度上与基础模型模板相似。例如,使用 Llama 架构的模型(如 HuggingFaceTB/SmolLM2-1.7B-Instruct)将以 togethercomputer/llama-2-7b-chat 作为其基础模型模板。

兼容性与范围

一般而言,所有参数少于 1000 亿的 CausalLM 模型都应兼容此功能。

对开发者的影响与使用场景

该集成降低了从模型发现到生产的摩擦。开发者现在可以在无需花费数天搭建训练基础设施的情况下,尝试社区驱动的创新和专用模型。

实际应用

早期采用者和 beta 用户已经以多种方式实现了此功能:

  • Domain Adaptation:通过以已经具备一定领域知识的模型为起点,将通用模型专门化用于金融、医疗或法律等行业。
  • Iterative Improvement:以社区模型为起点进行微调,然后使用该结果进行进一步的改进。
  • Community Model Specialization:进一步定制已经针对特定任务(如推理、编码或多语言能力)优化的模型,以满足专有使用场景。
  • Architecture Exploration:在 Hub 上新模型变体和架构发布时快速进行测试。

案例研究

  • Slingshot AI:将此功能集成到其开发流水线中,使其能够在自有基础设施上运行部分训练,上传至 Hub,然后在 Together AI 平台上继续微调。
  • Parsed:展示了通过使用精心策划的数据集,小型、调优良好的开源模型可以超越更大的闭源模型。

效率提升

团队报告称,“价值实现速度”显著提升,能够在数天而非数周内将专用模型投入生产。此外,该过程更具成本效益,因为从已经具备相关能力的模型开始,只需更少的训练轮次和更小的数据集即可达到目标性能水平。

Sources