Hugging Face Transformers 入门指南:Phi-2 LLM 的简单应用
Hugging Face Transformers 是一个开源 Python 库,提供数千个预训练模型,简化 Transformer 模型的实现。本文以非技术背景读者为目标,通过运行 Microsoft 的 Phi-2 LLM 举例,介绍如何使用 Hugging Face Transformers 和 Hugging Face Hub。教程从零开始,无需 Python 基础,适合初学者入门。
Hugging Face Transformers 是一个开源 Python 库,提供数千个预训练模型,简化 Transformer 模型的实现。本文以非技术背景读者为目标,通过运行 Microsoft 的 Phi-2 LLM 举例,介绍如何使用 Hugging Face Transformers 和 Hugging Face Hub。教程从零开始,无需 Python 基础,适合初学者入门。
Hugging Face 发布了 Cosmopedia,一个用于预训练大型语言模型的大规模合成数据集。该数据集包含超过 30 亿个 token,旨在解决传统数据集的局限性,并推动合成数据在 AI 领域的应用。
推荐理由:Cosmopedia 的发布为 LLM 预训练提供了新的数据集,有助于推动合成数据在 AI 领域的应用。
Quanto 是一个针对 Optimum 的 PyTorch 量化后端,旨在降低深度学习模型的计算和内存成本,支持多种量化方案,包括线性量化、分组量化等,适用于各种模态。Quanto 可作为 pip 包安装,提供从浮点模型到动态量化模型再到静态量化模型的流畅工作流程,并支持 PyTorch weight_only 和 Safetensors 的序列化。
Hugging Face 推出 Train on DGX Cloud 服务,支持使用 NVIDIA DGX Cloud 的加速计算基础设施进行模型训练,简化了开放生成式 AI 模型的训练和部署。
Hugging Face 推出 WebSight-v0.2 数据集,包含 200 万个网页截图与 HTML 代码对,旨在训练 AI 模型将视觉网页设计转换为功能性 HTML 代码。基于此数据集,研究人员训练了 Sightseer 模型,能够将网页截图转换为功能性的 HTML 代码,并支持将图像嵌入生成的 HTML 中。
Hugging Face 推出 Llama 2 模型的文本生成流水线,支持 7b、13b 和 70b 版本,通过 Optimum Habana 和自定义流水线类实现,仅需几行代码即可运行;流水线提供高抽象级别,支持预处理和后处理,兼容 LangChain。
Mistral AI 推出多语言聊天助手 Le Chat Vibe,支持与 Mistral 模型交互,提供教育性和娱乐性体验;Le Chat 可使用 Mistral Large、Mistral Small 或 Mistral Next 模型,具备系统级调节机制,目前为测试版,无法访问互联网。
Hugging Face Hub 提供多种 AI 水印工具,用于标记 AI 生成内容以验证其真实性。这些工具包括在生成过程中嵌入可见或不可见水印,以及使用数据中毒和签名技术来防止非授权图像操纵。水印技术适用于不同类型的数据,如图像、音频、文本等,并面临独特的挑战。Hugging Face Hub 提供开源工具,帮助用户进行不同类型的水印操作。
Matryoshka Embedding 模型通过在早期维度存储重要信息,在后期维度存储次要信息,实现高效的信息压缩。该模型使用 Sentence Transformers 框架进行训练,支持多种输出维度,可应用于推荐系统、检索、分类等多种任务。
Hugging Face 的 🤗 PEFT 引入了新的 LoRA 模型融合方法,包括 Concatenation、Linear/Task Arithmetic 和 SVD 等,旨在优化不同 LoRA 模型融合的体验,提高模型性能。
以太坊协议学习小组(EPFsg)正式上线,为期10周,旨在培养下一代以太坊核心开发者,深入理解以太坊内部机制。该小组由两个阶段组成,涵盖以太坊协议设计、执行和共识层架构等主题,并鼓励学生参与开源资源贡献和社区驱动开发。
Hugging Face 推出 PatchTST 模型,用于时间序列预测。该模型基于 Transformer 架构,通过将时间序列分割成子序列级别的 patch,并使用全局单变量模型进行编码,实现长序列预测。PatchTST 在电力数据集上展示了良好的预测能力,并支持零样本预测和微调。
MetaAI 发布的 Wav2Vec2-BERT 模型,通过预训练和微调,在低资源语音识别任务中表现出色,仅需 10 分钟标注音频数据即可在 LibriSpeech 数据集上达到 5% 的词错误率。
本教程介绍了如何将复杂的 ComfyUI 工作流转换为简单的 Gradio 应用,并在 Hugging Face Spaces 的 ZeroGPU 服务器上免费部署和运行。
aMUSEd 是一个基于掩码图像模型(MIM)的高效文本到图像生成模型,其参数量约为 800M,速度快,支持微调。与 MUSE 类似,aMUSEd 在风格迁移方面表现出色,但图像质量不如最先进的模型。该模型以开源许可证发布,鼓励社区探索非扩散框架。
Hugging Face 发布了 LoRA 训练脚本指南,结合了多种优化技巧,旨在提高 LoRA 训练效果。
推荐理由:该博客提供了 LoRA 训练脚本的详细指南,包括多种优化技巧,对想要改进 LoRA 训练的读者具有参考价值。
Hugging Face 推出 Llama 2 在 AWS Inferentia2 上的高效文本生成方案,通过 Optimum Neuron 部署,实现快速部署和模型导出,支持多种生成策略,并提供预编译模型版本。
Hugging Face 数据集库与 Renumics Spotlight 联合推出数据可视化工具,用户只需一行代码即可创建交互式可视化,识别数据中的关键聚类。Spotlight 支持利用模型结果如预测和嵌入,深入了解数据段和模型失败模式。此外,Spotlight 还允许用户自定义数据检查工作流程,并找到相关的数据样本和聚类进行检查。
本文详细解析了OpenAI的RLHF代码库复现,重点关注PPO实现细节,包括奖励模型、策略训练、PyTorch Adam优化器等,旨在为研究者提供RLHF实施工程细节的参考。复现的代码库能够产生与OpenAI代码库几乎相同的风格任务学习曲线,为教育和学习目的提供简单易读的参考实现。
Hugging Face Inference Endpoints 提供了一种简单、安全的方式部署机器学习模型,支持快速部署、自动扩展、成本效益和高级安全功能。Text Embeddings Inference (TEI) 是专为部署和托管开源文本嵌入模型而构建的解决方案,支持所有 MTEB 排行榜前 10 的模型,并实现了多种性能优化功能。
Stability AI 推出的最新模型 SDXL 在生成高质量图像方面具有优势,但模型规模较大。本文介绍了如何通过使用 fp16 精度、内存高效注意力机制和 torch.compile API 来优化 SDXL,从而提高推理速度并降低内存使用。优化后的 SDXL 模型在 A100 GPU 上运行时,推理时间从 72.2 秒缩短到 10.2 秒,内存使用量从 28GB 降低到 21.7GB。
Gradio-Lite是一个JavaScript库,允许用户在浏览器中直接运行Gradio应用程序,无需服务器端基础设施。它利用Pyodide在浏览器环境中执行Python代码。Gradio-Lite的主要优势包括无服务器部署、低延迟交互和增强的隐私与安全性。然而,目前其最大的局限性是应用程序在浏览器中的初始加载时间较长(通常为5-15秒)。
Hugging Face 推出 chat_template 属性,用于保存模型训练时使用的聊天格式,解决不同模型训练格式不一致导致的性能下降问题。该功能通过 Jinja 模板将聊天消息转换为正确格式的字符串,提高模型性能。
Hugging Face 推出 Inference for PROs,使更大模型对更广泛用户群体可访问。AI 漫画工厂作为 Hugging Face 平台的应用示例,支持 Llama-2 和 SDXL 模型,用户可利用 Inference API 部署到个人空间,无需高技术技能,但需了解 API、环境变量和 LLM & Stable Diffusion。
Hugging Face的TRL库发布了DDPOTrainer,用于微调Stable Diffusion模型,提高图像生成质量。
Hugging Face Blog介绍了3D高斯分层技术,该技术通过将场景中的点云转换为高斯函数,实现实时渲染真实场景。该技术使用结构从运动(SfM)方法估计点云,并通过高斯分层进行渲染。此外,该技术还具有快速、可微分的优点,但需要较高的VRAM和磁盘空间。目前,该技术尚未与现有渲染管线兼容,但未来有望在更多渲染环境中得到应用。
Hugging Face 博客介绍了如何使用 PyTorch FSDP 和相关最佳实践来微调 Llama 2 70B 模型。文章详细说明了 FSDP 的工作原理,并针对微调过程中遇到的内存和速度问题提出了解决方案,包括优化模型加载和状态字典存储方式。
Hugging Face Transformer 支持多种量化方案,包括 bitsandbytes 和 auto-gptq,旨在优化大型模型在小型设备上的推理和微调。bitsandbytes 量化方案易于使用,支持跨模态互操作性,而 auto-gptq 量化方案在文本生成方面速度更快,支持高达 2 位的量化精度。
T2I-Adapter-SDXL模型通过冻结预训练的文本到图像模型,提供额外指导,实现丰富的控制和编辑效果。相比ControlNet,T2I-Adapter-SDXL模型参数更小,运行速度更快。Diffusers团队已支持T2I-Adapter-SDXL在SDXL中的应用,并提供了训练脚本和示例。
OpenAI 发布面向教师的 ChatGPT 课堂使用指南。该指南包含推荐提示词、ChatGPT 工作原理与局限性说明,并探讨了 AI 检测器的有效性及偏见问题。
Hugging Face 发布了开源多模态视觉语言模型 IDEFICS,该模型基于 Flamingo,能够接受图像和文本输入并生成文本输出,性能与闭源模型相当,并提供了开源的数据集和模型。
推荐理由:IDEFICS 是一个开源的多模态视觉语言模型,其性能与闭源模型相当,为多模态 AI 系统的研究提供了新的可能性。
Hugging Face的BentoML平台支持机器学习模型部署,本文以DeepFloyd IF为例,展示了如何使用BentoML框架进行模型部署,包括定义模型、创建服务、构建Bento和部署Bento等步骤。DeepFloyd IF是一个开源的文本到图像模型,具有高真实感和复杂的语言理解能力。
Hugging Face 的 🤗 Transformers 提供了优化 BARK 语音合成模型的工具,通过三种优化技术,显著提升推理速度和内存使用效率。BARK 模型自 v4.31.0 版本起加入 🤗 Transformers 库,支持生成多种音频输出,包括语音、音乐、背景噪音和简单音效。优化过程依赖于 🤗 Transformers、Optimum 和 Accelerate 库。
Hugging Face 博客介绍了如何使用 Inference Endpoints 快速部署 MusicGen 音乐生成模型,通过自定义处理程序和依赖项,只需几步即可实现模型的部署和调用。
Hugging Face Hub 上有约 50K 个公共数据集,其中约 87% 未指定语言信息。Hugging Face 使用机器学习模型检测未标记语言的数据集,并通过 librarian-bots 添加元数据,以提高数据集的可搜索性。该模型使用 Meta 的 fastText 模型进行语言识别,可检测 217 种语言。
Hugging Face 发布了使用生成式 AI 工作流程创建实用 3D 资产的指南,通过 Shap-E 模型生成 3D 模型,并使用 Dream Textures 添加纹理,实现低保真风格的 3D 资产制作。
Segmind开源了其压缩模型SD-Small和SD-Tiny的知识蒸馏代码和权重,这些模型在知识蒸馏技术训练下,参数量分别比基础模型减少了35%和55%,同时保持了与基础模型相当的图像保真度。开源代码和预训练检查点可在Hugging Face上获取,蒸馏模型在推理速度上比原始模型快100%。
Hugging Face 推出 Agents.js,这是一个新的 JavaScript 库,允许在浏览器或服务器中使用 JavaScript 为 LLMs 提供工具访问权限。
Hugging Face于7月7日至11日举办了首届开源AI游戏马拉松,共有88款游戏提交,其中Snip It获得冠军。活动鼓励开发者使用开源AI工具,如Stable Diffusion和GPT-4,展示了开源AI在游戏开发中的潜力。
Hugging Face推出的AI WebTV实验演示展示了Zeroscope和MusicGen等开源文本到视频模型的最新进展,通过NodeJS和TypeScript实现,使用Zeroscope V2模型生成视频,并配合MusicGen生成音乐,通过FFmpeg进行视频流广播。