PaddlePaddle 与 Hugging Face Hub 的集成

Hugging Face 与 PaddlePaddle 合作,将 PaddlePaddle 深度学习平台集成到 Hugging Face Hub。此合作旨在通过向全球开源社区提供 PaddlePaddle 在文本、图像、音频、视频和多模态方面的预训练模型,实现 AI 的民主化。

PaddlePaddle 平台概览

PaddlePaddle 最初于 2016 年由百度开源,是一个面向可扩展实现的深度学习平台。截至 2022 年第四季度,该平台已被超过 535 万开发者和 20 万企业使用,拥有中国深度学习平台的最高市场份额。

生态系统包括多个专门的开源仓库:

  • Paddle:核心深度学习框架。
  • Model Libraries:面向不同模态的专用库,包括 PaddleOCR、PaddleDetection、PaddleNLP 和 PaddleSpeech。
  • PaddleSlim:模型压缩工具。
  • FastDeploy:模型部署框架。

Hub 集成与模型发现

集成从 PaddleNLP 开始,随后会加入其他库。用户可以通过使用特定的 “PaddlePaddle” 库标签,在 Hugging Face Hub 上发现 PaddlePaddle 模型。

在公告时,Hub 上已有超过 75 个 PaddlePaddle 模型可用,包括:

  • UIE:多任务信息抽取模型系列。
  • ERNIE 3.0:最先进的中文语言模型系列。
  • Ernie-Layout:融合布局知识增强的文档预训练模型。

此外,Hub 上的 PaddlePaddle 组织提供了 Spaces,供交互式工具使用,如 Ernie-ViLG(文本到图像)、UIE-X(跨模态信息抽取)和 PaddleOCR(多语言 OCR 工具包)。

推理与交互功能

Hub 上的 PaddlePaddle 模型支持 Hugging Face Inference API,用户可以通过 cURL、Python 的 requests 库或其他网络请求方式,以 HTTP 请求与模型交互。对于支持特定任务的模型,浏览器中直接提供交互式小部件,便于即时测试。

模型使用与共享

用户可以通过 Hub 上的 “Use in paddlenlp” 按钮加载特定模型,按钮会提供实现代码片段。

要共享模型,PaddleNLP 目前支持通过 save_to_hf_hub 方法将模型推送到 Hub。示例实现如下:

from paddlenlp.transformers import AutoTokenizer, AutoModelForMaskedLM

tokenizer = AutoTokenizer.from_pretrained("PaddlePaddle/ernie-3.0-base-zh", from_hf_hub=True)
model = AutoModelForMaskedLM.from_pretrained("PaddlePaddle/ernie-3.0-base-zh", from_hf_hub=True)

tokenizer.save_to_hf_hub(repo_id="<my_org_name>/<my_repo_name>")
model.save_to_hf_hub(repo_id="<my_org_name>/<my_repo_name>")

Sources