Pytorch
TensorFlow

# 使用预训练的模型

模型中心使选择合适的模型变得简单，因此只需几行代码即可在任何下游库中使用它。让我们来看看如何实际使用这些模型之一，以及如何回馈社区。

假设我们正在寻找一种可以执行mask填充的French-based模型。

我们选择 camembert-base 检查点来尝试一下。我们需要做的仅仅是输入 `camembert-base`标识符！正如您在前几章中看到的，我们可以使用 pipeline() 功能：

    from transformers import pipeline

    camembert_fill_mask = pipeline("fill-mask", model="camembert-base")
    results = camembert_fill_mask("Le camembert est <mask> :)")

    [
      {'sequence': 'Le camembert est délicieux :)', 'score': 0.49091005325317383, 'token': 7200, 'token_str': 'délicieux'},
      {'sequence': 'Le camembert est excellent :)', 'score': 0.1055697426199913, 'token': 2183, 'token_str': 'excellent'},
      {'sequence': 'Le camembert est succulent :)', 'score': 0.03453313186764717, 'token': 26202, 'token_str': 'succulent'},
      {'sequence': 'Le camembert est meilleur :)', 'score': 0.0330314114689827, 'token': 528, 'token_str': 'meilleur'},
      {'sequence': 'Le camembert est parfait :)', 'score': 0.03007650189101696, 'token': 1654, 'token_str': 'parfait'}
    ]

如您所见，在管道中加载模型非常简单。您唯一需要注意的是所选检查点是否适合它将用于的任务。例如，这里我们正在加载 camembert-base 检查点在 fill-mask 管道，这完全没问题。但是如果我们要在 text-classification 管道，结果没有任何意义，因为 camembert-base 不适合这个任务！我们建议使用 Hugging Face Hub 界面中的任务选择器来选择合适的检查点：

您还可以直接使用模型架构实例化检查点：

    from transformers import CamembertTokenizer, CamembertForMaskedLM

    tokenizer = CamembertTokenizer.from_pretrained("camembert-base")
    model = CamembertForMaskedLM.from_pretrained("camembert-base")

然而，我们建议使用Auto* 类，因为Auto* 类设计与架构无关。前面的代码示例将只能在 CamemBERT 架构中加载可用的检查点，但使用 Auto* 类使切换检查点变得简单：

    from transformers import AutoTokenizer, AutoModelForMaskedLM

    tokenizer = AutoTokenizer.from_pretrained("camembert-base")
    model = AutoModelForMaskedLM.from_pretrained("camembert-base")

使用预训练模型时，一定要检查它是如何训练的，在哪些数据集上，它的限制和它的偏差。所有这些信息都应在其模型卡片上注明。