# 在 Hugging Face 上使用 PaddleNLP

借助 [PaddlePaddle](https://github.com/PaddlePaddle/Paddle) 框架，[`PaddleNLP`](https://github.com/PaddlePaddle/PaddleNLP) 是一个易用且功能强大的 NLP 库，拥有出色的预训练模型库，支持从研究到工业应用的广泛 NLP 任务。

## 在 Hub 中探索 PaddleNLP

您可以在[模型页面](https://huggingface.co/models?library=paddlenlp&sort=downloads)左侧进行筛选，以查找`PaddleNLP`模型。

Hub 上的所有模型都具备以下功能：

1. 自动生成的模型卡片，包含简要描述和有助于提高可发现性的元数据标签。
2. 一个交互式小部件，可直接在浏览器中用于体验该模型。

3. 一个用于发起推理请求的 Inference Providers 小部件。

4. 轻松将您的模型部署为 Spaces 上的 Gradio 应用。

## 安装

要开始使用，您可以按照[PaddlePaddle 快速入门](https://www.paddlepaddle.org.cn/en/install)，在您喜欢的操作系统、包管理器和计算平台上安装 PaddlePaddle 框架。

`paddlenlp` 提供通过 pip 进行的一行快速安装：

```
pip install -U paddlenlp
```

## 使用现有模型

与 `transformer` 模型类似，`paddlenlp` 库通过设置 `from_hf_hub=True` 提供了一行代码即可从 Hugging Face Hub 加载模型的便捷方式！根据使用需求，您可以使用 `Taskflow` 函数调用高层 API，也可以使用 `AutoModel` 和 `AutoTokenizer` 以获得更精细的控制。

```py
# Taskflow provides a simple end-to-end capability and a more optimized experience for inference
from paddlenlp.transformers import Taskflow
taskflow = Taskflow("fill-mask", task_path="PaddlePaddle/ernie-1.0-base-zh", from_hf_hub=True)

# If you want more control, you will need to define the tokenizer and model.
from paddlenlp.transformers import AutoTokenizer, AutoModelForMaskedLM
tokenizer = AutoTokenizer.from_pretrained("PaddlePaddle/ernie-1.0-base-zh", from_hf_hub=True)
model = AutoModelForMaskedLM.from_pretrained("PaddlePaddle/ernie-1.0-base-zh", from_hf_hub=True)
```

如果您想查看如何加载特定模型，可以单击 `Use in paddlenlp`，即可获得一个可运行的代码片段来加载该模型！

## 共享您的模型

您可以使用所有 `Model` 和 `Tokenizer` 类下的 `save_to_hf_hub` 方法来共享您的 `PaddleNLP` 模型。

```py
from paddlenlp.transformers import AutoTokenizer, AutoModelForMaskedLM

tokenizer = AutoTokenizer.from_pretrained("PaddlePaddle/ernie-1.0-base-zh", from_hf_hub=True)
model = AutoModelForMaskedLM.from_pretrained("PaddlePaddle/ernie-1.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>")
```

## 其他资源

- PaddlePaddle 安装[指南](https://www.paddlepaddle.org.cn/en/install)。
- PaddleNLP [GitHub 仓库](https://github.com/PaddlePaddle/PaddleNLP)。
- [Hugging Face Hub 上的 PaddlePaddle](https://huggingface.co/PaddlePaddle)

