# 在 Hugging Face 上使用 Keras

Keras 是一个开源的多后端深度学习框架，支持 JAX、TensorFlow 和 PyTorch。你可以在 [keras.io](https://keras.io/) 上了解更多详细信息。

## 在 Hub 中探索 Keras

您可以在[模型页面](https://huggingface.co/models?library=keras&sort=downloads)上通过按库名称筛选来列出`keras`模型。

直接从 Keras 库上传到 Hub 的 Keras 模型会附带一些实用功能：
1. 包含描述、模型图表等内容的生成模型卡片。
2. 用于监控模型流行度的下载量。
3. 用于快速上手该模型的代码片段。

## 使用现有模型

Keras 与 Hugging Face Hub 深度集成。这意味着你可以直接从该库中加载和保存 Hub 上的模型。为此，你需要安装最新版本的 Keras 和 `huggingface_hub`。`huggingface_hub` 库是一个轻量级的 Python 客户端，Keras 使用它与 Hub 进行交互。

```
pip install -U keras huggingface_hub
```

安装好该库后，你只需使用常规的 `keras.saving.load_model` 方法，并传入一个 Hugging Face 路径作为参数即可。HF 路径是以 `hf://` 为前缀的 `repo_id`，例如 `"hf://keras-io/weather-prediction"`。有关 `load_model` 的更多信息，请参阅 [Keras 文档](https://keras.io/api/models/model_saving_apis/model_saving_and_loading/#load_model-function)。

```py
import keras

model = keras.saving.load_model("hf://Wauplin/mnist_example")
```

如果您想查看如何加载特定模型，可以在模型页面上点击 **使用此模型** 来获取可用的代码片段！

## 共享您的模型

与`load_model`类似，您可以使用带有 HF 路径的`model.save()`在 Hub 上保存并共享`keras`模型：

```py
model = ...
model.save("hf://your-username/your-model-name")
```

如果该仓库在 Hub 上不存在，系统会为您创建。上传的模型包含模型卡片、模型图表、`metadata.json` 和 `config.json` 文件，以及包含模型权重的 `model.weights.h5` 文件。

默认情况下，仓库将包含一个最简模型卡片。请查阅[模型卡片指南](https://huggingface.co/docs/hub/model-cards)，以了解有关模型卡片的更多信息以及如何完善它们。您还可以使用`huggingface_hub.ModelCard`以编程方式更新模型卡片（参见[指南](https://huggingface.co/docs/huggingface_hub/guides/model-cards)）。

> [!TIP]
> 您可能已经熟悉 `.keras` 文件。实际上，`.keras` 文件只是一个包含 `.json` 和 `model.weights.h5` 文件的 zip 压缩包。当推送到 Hub 时，模型会以解压后的文件夹形式保存，以便您浏览其中的文件。请注意，如果您手动将 `.keras` 文件上传到 Hub 上的模型仓库，该仓库会自动被标记为 `keras`，但您将无法使用 `keras.saving.load_model` 来加载它。

## 其他资源

* Keras 开发者[指南](https://keras.io/guides/)。
* Keras [示例](https://keras.io/examples/)。

