046多语言模型推理
多语言模型推理¶
在 🤗 Transformers 中有多种多语言模型,它们的推理使用方式与单语言模型有所不同。但并不是所有的多语言模型使用方式都不同。例如,像 google-bert/bert-base-multilingual-uncased 这样的模型可以像单语言模型一样使用。本指南将向你展示如何使用那些推理使用方式不同的多语言模型。
XLM¶
XLM 有十个不同的检查点,其中只有一个单语言模型。剩下的九个模型检查点可以分为两类:使用语言嵌入的检查点和不使用语言嵌入的检查点。
XLM 使用语言嵌入¶
以下 XLM 模型在推理时使用语言嵌入来指定所使用的语言:
FacebookAI/xlm-mlm-ende-1024(掩码语言建模,英德)FacebookAI/xlm-mlm-enfr-1024(掩码语言建模,英法)FacebookAI/xlm-mlm-enro-1024(掩码语言建模,英罗)FacebookAI/xlm-mlm-xnli15-1024(掩码语言建模,XNLI 语言)FacebookAI/xlm-mlm-tlm-xnli15-1024(掩码语言建模 + 翻译,XNLI 语言)FacebookAI/xlm-clm-enfr-1024(因果语言建模,英法)FacebookAI/xlm-clm-ende-1024(因果语言建模,英德)
语言嵌入表示为与传递给模型的 input_ids 形状相同的张量。这些张量中的值取决于所使用的语言,并通过分词器的 lang2id 和 id2lang 属性识别。
在这个例子中,加载 FacebookAI/xlm-clm-enfr-1024 检查点(因果语言建模,英法):