Hugging Face 的 TensorFlow 哲学:为何 transformers 全面拥抱 Keras
Hugging Face 阐述了其 transformers 库在 TensorFlow 上的设计哲学:所有 TensorFlow 模型都是 Keras Model 对象,所有层都是 Keras Layer 对象,用户可直接调用 fit()、compile()、predict() 等方法。
Hugging Face 阐述了其 transformers 库在 TensorFlow 上的设计哲学:所有 TensorFlow 模型都是 Keras Model 对象,所有层都是 Keras Layer 对象,用户可直接调用 fit()、compile()、predict() 等方法。
Hugging Face 发布教程,讲解如何用 Docker 和 Kubernetes 将上一篇文章中的 Vision Transformer(ViT)本地部署扩展为可服务多用户的部署。
Hugging Face 发布 Private Hub(PH),为机器学习全生命周期提供统一工具,支持安全合规地协作与部署。PH 以 Hugging Face Hub 为核心,后者已托管超 60K 模型、6K 数据集和 6K 演示应用,均以 Git 仓库形式进行版本控制。该产品旨在解决约 90% 模型无法进入生产、工具陌生、工作流非标准化及团队重复开发等问题。
Hugging Face 博客介绍 Nyströmformer,一种用 Nyström 方法近似标准自注意力的高效 Transformer,将时间和内存复杂度从 O(n²) 降至 O(n)。
Hugging Face 官方博客介绍,在 transformers 中用 TensorFlow 做文本生成现在可以通过 jit_compile=True 启用 XLA 编译,速度最高提升 100 倍,部分场景比 PyTorch 快 9 倍。
推荐理由:Hugging Face 官方给出 TensorFlow 文本生成接入 XLA 的一行改法与 padding 技巧,可迁移到实际推理加速。
Hugging Face 与外部贡献者为 Transformers 加入了 Vision Transformer、Masked Autoencoders、RegNet、ConvNeXt 等 TensorFlow 视觉模型。
Hugging Face 详解 176B 参数多语言模型 BLOOM 的训练技术,该项目由 Thomas Wolf 发起,使用 384 张 80GB A100 GPU、Megatron-DeepSpeed 框架和 350B token 的 59 语言数据集,耗时约 3.5 个月完成。
作者用 Sentence Transformers 的语义搜索功能构建了一个歌单生成器,将歌词按段落切分并嵌入,再根据文本提示检索最相关的歌曲,最终用 Gradio Blocks API 搭建多步交互演示并托管在 Hugging Face Spaces 上。
Hugging Face 展示了用 Accelerate 库调用 DeepSpeed ZeRO 加速大模型训练的方法,无需改动代码即可启用 ZeRO Stage-2。
Hugging Face 博客介绍了将 Transformers 模型转为 ONNX 的三种方式:底层 torch.onnx、中层 transformers.onnx 和 Optimum 高层 API。
Intel 正式加入 Hugging Face 硬件合作伙伴计划,双方将基于开源库 Optimum 合作构建面向 Transformer 的硬件加速方案,覆盖训练、微调与推理。
大型神经网络是近期许多 AI 进展的核心,但其训练是一项困难的工程与研究挑战,需要协调一整个 GPU 集群来完成单次同步计算。
Cohere、OpenAI 和 AI21 Labs 共同制定了一套适用于任何开发或部署大语言模型组织的初步最佳实践。该实践面向所有从事大语言模型开发与部署的机构。
Graphcore 与 Hugging Face 在开源库 Optimum 中新增一批适配 IPU 的 Transformer 模型,可访问模型总数达到 10 个,覆盖 NLP、语音和计算机视觉,均附带 IPU 配置文件及预训练、微调权重。新增模型包括 ViT、GPT-2、RoBERTa、DeBERTa、BART、LXMERT、T5、HuBERT 和 Wav2Vec2,此前已有 BERT。
Sempre Health 借助 Hugging Face 的 Expert Acceleration Program 搭建 NLP 流水线,自动分类并回复患者短信,上线数周后近 20% 的入站消息由系统自动处理。此前其基于规则的系统只能覆盖约 80% 的消息,Hugging Face 团队在标注与模型选型上提供了指导。
Hugging Face 开源库 Optimum 发布 1.2 版本,新增对 Transformers pipelines 的推理支持,首批接入 ONNX Runtime,用户可将 AutoModelForXxx 替换为对应的 ORTModelForXxx 直接调用。
fastai 现已集成 Hugging Face Hub,开发者用一行 Python 即可将 fastai Learner 上传至 Hub 分享。需安装 fastai>=2.4、fastcore>=1.3.27 和 toml,通过 push_to_hub_fastai 上传、from_pretrained_fastai 加载,Hub 提供免费托管、基于 git 的版本控制和模型卡。
Hugging Face 展示了如何用 Accelerate 库无需改代码即可调用 PyTorch 的 FullyShardedDataParallel(FSDP)训练大模型。
Hugging Face 与 Habana Labs 合作,将 Gaudi 加速器的性价比优势带入 Transformers,其训练机器学习模型的性价比相比最新 GPU 版 Amazon EC2 实例最高提升 40%。
Hugging Face 机器学习工程师 Lewis Tunstall 在播客中介绍了他在 transformers 库上的工作:通过一行代码将 PyTorch 模型导出为 ONNX 格式,帮助 ML 工程师获得更低延迟和更高吞吐。他还与 Leandro von Werra、Thom Wolf 合著了《NLP with Transformers》一书,并谈到大规模模型评估等话题。
Hugging Face 的 Transformers 库有意不遵循 DRY 原则,转而采用"单一模型文件策略",即模型前向传播所需的全部代码只放在一个模型文件中,注意力机制代码因此在不同模型文件里被复制了 50 多次。官方给出的理由包括:该库由开源社区共建、建模代码本身就是产品、机器学习领域演进极快,以及模型发布后很少被改动。
Hugging Face 发布端到端教程,演示如何用 Hugging Face Transformers、Amazon SageMaker 和 AWS Inferentia 加速 BERT 文本分类推理。
Hugging Face 宣布将 PyTorch 深度强化学习库 Stable-Baselines3 集成到 Hugging Face Hub,用户可通过 huggingface_sb3 上传和加载已保存的智能体模型。
Hugging Face 公布 Infinity 在第三代 Intel Xeon 可扩展处理器(Ice Lake)上的推理基准:经 Infinity Multiverse 优化的 DistilBERT 容器相比同平台原生 Transformers 延迟与吞吐最高提升 800%,相比 Cascade Lake 实例提升 34%。
Hugging Face 发布教程,介绍如何用 Amazon SageMaker 和 Hugging Face Inference Toolkit 部署 EleutherAI 的 GPT-J 6B 模型做实时推理。
OpenAI 为 GPT-3 推出微调功能,开发者只需一条命令即可针对自己的应用定制模型。
Hugging Face 与 Graphcore 合作推出开源库 Optimum,用于降低 Transformer 模型在多种硬件上的预测延迟,首个 IPU 优化模型为 BERT。
Hugging Face 博客展示了如何在 Intel Xeon Scalable(Ice Lake)CPU 集群上加速 PyTorch 分布式微调:借助 Intel extension for PyTorch 和 oneCCL 通信库,在 MRPC 数据集上微调 BERT 模型,从单机扩展到 2 台、4 台服务器并测量加速比。
Hugging Face 发布博客第二部分,介绍如何借助 Intel oneAPI 软件栈在现代 Xeon CPU 上优化类 BERT 模型推理。Intel Ice Lake 代 Xeon 在多种 NLP 任务上推理速度最高比上代 Cascade Lake 快 75%,依托 AVX512、VNNI 指令及 oneMKL、oneDNN、OpenMP、oneTBB 等库。
微软和 NVIDIA 发布 Megatron-Turing NLG 530B,号称全球最大最强的生成式语言模型,但复现成本接近 1 亿美元,单台 DGX A100 服务器售价 19.9 万美元、功耗达 6.5 千瓦。
Hugging Face 发文指出,机器学习正像十年前的 DevOps 一样走向"机器学习即代码",软件工程的最佳实践应被数据科学与机器学习采纳。Kaggle 调查显示 75% 受访者使用云服务、超 45% 使用企业 ML 平台,前三为 Amazon SageMaker、Databricks 和 Azure ML Studio。
Gradio 与 Hugging Face Hub 集成,只需定义 Interface 并调用 .launch() 即可演示模型,底层调用 Inference API,支持 Transformers、spaCy、SpeechBrain、Asteroid 及 image-to-text、speech-to-text、text-to-speech 等模型类型。
Hugging Face 发布博客,介绍如何用 Streamlit 在 Hugging Face Spaces 上托管模型和数据集并部署 Streamlit 应用。
Hugging Face 在 2021 AI Hardware Summit 上宣布启动 Hardware Partner Program,Graphcore 作为创始成员参与,双方将让开发者通过 Optimum 开源库在 IPU 上部署经认证的硬件优化 Transformer 模型,首批 IPU 优化模型将于今年晚些时候上线。
Hugging Face 发布开源库 Optimum,目标是成为 Transformer 生产性能的优化工具集,让模型在特定硬件上训练和推理达到最高效率。Optimum 与硬件伙伴合作,把稀疏化、量化等加速技术与目标硬件适配的复杂度抽象出来,首个合作案例是 Intel Neural Compressor,用于在 Intel Xeon CPU 上量化模型。
推荐理由:Hugging Face 官方发布 Optimum 开源库,读者可了解其如何把硬件加速与量化流程抽象成统一工具。
OpenAI 发布 Triton 1.0,这是一门开源的类 Python 编程语言,让没有 CUDA 经验的研究者也能编写高效的 GPU 代码,多数情况下能达到专家水平。
推荐理由:OpenAI 开源 Triton 1.0,让没有 CUDA 经验的研究者也能写出接近专家水平的 GPU 代码。
Hugging Face Hub 现已支持 spaCy,用户可通过一条命令上传任意 spaCy pipeline 包,并自动生成模型卡和元数据。Hub 的 spaCy 组织已收录 60 多个来自 3.1 版本的官方模型,Inference API 开箱支持 NER,并配有 NER 可视化组件。
Hugging Face 发布面向 Amazon SageMaker 的 Inference DLC 与 Inference Toolkit,只需一行代码即可部署训练好的 Transformer 模型,或从 Model Hub 的 10,000+ 公开模型中选择部署。
Hugging Face Hub 与 Sentence Transformers 达成集成,随 Sentence Transformers v2 发布,Hub 上已有 90 多个预训练模型、覆盖 100 多种语言。
Gradio 2.0 发布,只需 1 行代码即可为几乎任意 Hugging Face 模型加载 GUI,默认调用 Hugging Face 托管的 Inference API,也可本地运行 transformers。该版本支持并行加载多个模型进行对比,或将模型串联组合,例如用 3 行代码搭建翻译并摘要芬兰语新闻的应用。