Transformers 4.37 中文文档(十三)(9)

简介: Transformers 4.37 中文文档(十三)

Transformers 4.37 中文文档(十三)(8)https://developer.aliyun.com/article/1564953


TFAutoModelForSequenceClassification

class transformers.TFAutoModelForSequenceClassification

< source >

( *args **kwargs )

这是一个通用的模型类,当使用 from_pretrained() 类方法或 from_config() 类方法创建时,将被实例化为库中的一个模型类(带有序列分类头)

这个类不能直接使用 __init__() 实例化(会抛出错误)。

from_config

< source >

( **kwargs )

参数

  • config (PretrainedConfig) — 实例化的模型类基于配置类进行选择:
  • AlbertConfig 配置类: TFAlbertForSequenceClassification (ALBERT 模型)
  • BartConfig 配置类: TFBartForSequenceClassification (BART 模型)
  • BertConfig 配置类: TFBertForSequenceClassification (BERT 模型)
  • CTRLConfig 配置类: TFCTRLForSequenceClassification (CTRL 模型)
  • CamembertConfig 配置类: TFCamembertForSequenceClassification (CamemBERT 模型)
  • ConvBertConfig 配置类: TFConvBertForSequenceClassification (ConvBERT 模型)
  • DebertaConfig 配置类: TFDebertaForSequenceClassification (DeBERTa 模型)
  • DebertaV2Config 配置类: TFDebertaV2ForSequenceClassification (DeBERTa-v2 模型)
  • DistilBertConfig 配置类: TFDistilBertForSequenceClassification (DistilBERT 模型)
  • ElectraConfig 配置类: TFElectraForSequenceClassification (ELECTRA 模型)
  • EsmConfig 配置类: TFEsmForSequenceClassification (ESM 模型)
  • FlaubertConfig 配置类: TFFlaubertForSequenceClassification (FlauBERT 模型)
  • FunnelConfig 配置类: TFFunnelForSequenceClassification (Funnel Transformer 模型)
  • GPT2Config 配置类: TFGPT2ForSequenceClassification (OpenAI GPT-2 模型)
  • GPTJConfig 配置类: TFGPTJForSequenceClassification (GPT-J 模型)
  • LayoutLMConfig 配置类: TFLayoutLMForSequenceClassification (LayoutLM 模型)
  • LayoutLMv3Config 配置类: TFLayoutLMv3ForSequenceClassification (LayoutLMv3 模型)
  • LongformerConfig 配置类: TFLongformerForSequenceClassification (Longformer 模型)
  • MPNetConfig 配置类: TFMPNetForSequenceClassification (MPNet 模型)
  • MobileBertConfig 配置类: TFMobileBertForSequenceClassification (MobileBERT 模型)
  • OpenAIGPTConfig 配置类: TFOpenAIGPTForSequenceClassification (OpenAI GPT 模型)
  • RemBertConfig 配置类: TFRemBertForSequenceClassification (RemBERT 模型)
  • RoFormerConfig 配置类: TFRoFormerForSequenceClassification (RoFormer 模型)
  • RobertaConfig 配置类: TFRobertaForSequenceClassification (RoBERTa 模型)
  • RobertaPreLayerNormConfig 配置类: TFRobertaPreLayerNormForSequenceClassification (RoBERTa-PreLayerNorm 模型)
  • TapasConfig 配置类: TFTapasForSequenceClassification (TAPAS 模型)
  • TransfoXLConfig 配置类: TFTransfoXLForSequenceClassification (Transformer-XL 模型)
  • XLMConfig 配置类: TFXLMForSequenceClassification (XLM 模型)
  • XLMRobertaConfig 配置类: TFXLMRobertaForSequenceClassification (XLM-RoBERTa 模型)
  • XLNetConfig 配置类: TFXLNetForSequenceClassification (XLNet 模型)

从配置实例化库中的一个模型类(带有序列分类头)。

注意: 从配置文件加载模型不会加载模型权重。它只影响模型的配置。使用 from_pretrained()来加载模型权重。

示例:

>>> from transformers import AutoConfig, TFAutoModelForSequenceClassification
>>> # Download configuration from huggingface.co and cache.
>>> config = AutoConfig.from_pretrained("bert-base-cased")
>>> model = TFAutoModelForSequenceClassification.from_config(config)
from_pretrained

<来源>

( *model_args **kwargs )

参数

  • pretrained_model_name_or_path (stros.PathLike) — 可以是:
  • 一个字符串,预训练模型的模型 id,托管在 huggingface.co 上的模型存储库中。有效的模型 id 可以位于根级别,如bert-base-uncased,或者命名空间在用户或组织名称下,如dbmdz/bert-base-german-cased
  • 一个目录的路径,其中包含使用 save_pretrained()保存的模型权重,例如,./my_model_directory/
  • 路径或 URL 到PyTorch 状态字典保存文件(例如,./pt_model/pytorch_model.bin)。在这种情况下,from_pt应设置为True,并且应提供配置对象作为config参数。这种加载路径比使用提供的转换脚本将 PyTorch 模型转换为 TensorFlow 模型并随后加载 TensorFlow 模型要慢。
  • model_args(额外的位置参数,可选) — 将传递给底层模型__init__()方法。
  • config(PretrainedConfig,可选) — 用于模型的配置,而不是自动加载的配置。当以下情况自动加载配置时:
  • 模型是库提供的模型(使用预训练模型的模型 ID字符串加载)。
  • 模型是使用 save_pretrained()保存的,并通过提供保存目录重新加载。
  • 通过提供本地目录作为pretrained_model_name_or_path加载模型,并在目录中找到名为config.json的配置 JSON 文件。
  • cache_dirstros.PathLike可选) — 下载预训练模型配置应该缓存在其中的目录路径,如果不使用标准缓存。
  • from_pt (bool, optional, defaults to False) — 从 PyTorch 检查点保存文件加载模型权重(请参阅pretrained_model_name_or_path参数的文档字符串)。
  • force_download (bool, optional, defaults to False) — 是否强制(重新)下载模型权重和配置文件,覆盖缓存版本(如果存在)。
  • resume_download (bool, optional, defaults to False) — 是否删除接收不完整的文件。如果存在这样的文件,将尝试恢复下载。
  • proxies (Dict[str, str], optional) — 一个代理服务器字典,按协议或端点使用,例如,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}。代理在每个请求上使用。
  • output_loading_info(bool, optional, defaults to False) — 是否返回包含缺少键、意外键和错误消息的字典。
  • local_files_only(bool, optional, defaults to False) — 是否仅查看本地文件(例如,不尝试下载模型)。
  • revision (str, optional, defaults to "main") — 要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID,因为我们使用基于 git 的系统在 huggingface.co 上存储模型和其他工件,所以revision可以是 git 允许的任何标识符。
  • trust_remote_code (bool, optional, defaults to False) — 是否允许在 Hub 上定义自定义模型的建模文件。此选项应仅对您信任的存储库设置为True,并且您已阅读代码,因为它将在本地机器上执行 Hub 上存在的代码。
  • code_revision (str, optional, defaults to "main") — 用于 Hub 上代码的特定修订版本,如果代码存储在与模型其余部分不同的存储库中。它可以是分支名称、标签名称或提交 ID,因为我们使用基于 git 的系统在 huggingface.co 上存储模型和其他工件,所以revision可以是 git 允许的任何标识符。
  • kwargs(额外的关键字参数,可选) — 可用于更新配置对象(加载后)并启动模型(例如,output_attentions=True)。根据是否提供或自动加载config,行为会有所不同:
  • 如果提供了config配置,**kwargs将直接传递给底层模型的__init__方法(我们假设配置的所有相关更新已经完成)。
  • 如果未提供配置,kwargs 将首先传递给配置类初始化函数(from_pretrained())。kwargs 的每个键对应一个配置属性,将用提供的 kwargs 值覆盖该属性。不对应任何配置属性的剩余键将传递给基础模型的 __init__ 函数。

从预训练模型实例化库中的一个模型类(带有序列分类头)。

要实例化的模型类是根据配置对象的 model_type 属性选择的(作为参数传递或从 pretrained_model_name_or_path 加载,如果可能的话),或者当缺少时,通过在 pretrained_model_name_or_path 上使用模式匹配来回退:

  • albert — TFAlbertForSequenceClassification (ALBERT 模型)
  • bart — TFBartForSequenceClassification (BART 模型)
  • bert — TFBertForSequenceClassification (BERT 模型)
  • camembert — TFCamembertForSequenceClassification (CamemBERT 模型)
  • convbert — TFConvBertForSequenceClassification (ConvBERT 模型)
  • ctrl — TFCTRLForSequenceClassification (CTRL 模型)
  • deberta — TFDebertaForSequenceClassification (DeBERTa 模型)
  • deberta-v2 — TFDebertaV2ForSequenceClassification (DeBERTa-v2 模型)
  • distilbert — TFDistilBertForSequenceClassification (DistilBERT 模型)
  • electra — TFElectraForSequenceClassification (ELECTRA 模型)
  • esm — TFEsmForSequenceClassification (ESM 模型)
  • flaubert — TFFlaubertForSequenceClassification (FlauBERT 模型)
  • funnel — TFFunnelForSequenceClassification (漏斗变换器模型)
  • gpt-sw3 — TFGPT2ForSequenceClassification (GPT-Sw3 模型)
  • gpt2 — TFGPT2ForSequenceClassification (OpenAI GPT-2 模型)
  • gptj — TFGPTJForSequenceClassification (GPT-J 模型)
  • layoutlm — TFLayoutLMForSequenceClassification (LayoutLM 模型)
  • layoutlmv3 — TFLayoutLMv3ForSequenceClassification (LayoutLMv3 模型)
  • longformer — TFLongformerForSequenceClassification (Longformer 模型)
  • mobilebert — TFMobileBertForSequenceClassification (MobileBERT 模型)
  • mpnet — TFMPNetForSequenceClassification (MPNet 模型)
  • openai-gpt — TFOpenAIGPTForSequenceClassification (OpenAI GPT 模型)
  • rembert — TFRemBertForSequenceClassification (RemBERT 模型)
  • roberta — TFRobertaForSequenceClassification (RoBERTa 模型)
  • roberta-prelayernorm — TFRobertaPreLayerNormForSequenceClassification (RoBERTa-PreLayerNorm 模型)
  • roformer — TFRoFormerForSequenceClassification (RoFormer 模型)
  • tapas — TFTapasForSequenceClassification (TAPAS 模型)
  • transfo-xl — TFTransfoXLForSequenceClassification (Transformer-XL 模型)
  • xlm — TFXLMForSequenceClassification (XLM 模型)
  • xlm-roberta — TFXLMRobertaForSequenceClassification (XLM-RoBERTa 模型)
  • xlnet — TFXLNetForSequenceClassification (XLNet 模型)

示例:

>>> from transformers import AutoConfig, TFAutoModelForSequenceClassification
>>> # Download model and configuration from huggingface.co and cache.
>>> model = TFAutoModelForSequenceClassification.from_pretrained("bert-base-cased")
>>> # Update configuration during loading
>>> model = TFAutoModelForSequenceClassification.from_pretrained("bert-base-cased", output_attentions=True)
>>> model.config.output_attentions
True
>>> # Loading from a PyTorch checkpoint file instead of a TensorFlow model (slower)
>>> config = AutoConfig.from_pretrained("./pt_model/bert_pt_model_config.json")
>>> model = TFAutoModelForSequenceClassification.from_pretrained(
...     "./pt_model/bert_pytorch_model.bin", from_pt=True, config=config
... )

FlaxAutoModelForSequenceClassification

class transformers.FlaxAutoModelForSequenceClassification

< source >

( *args **kwargs )

这是一个通用的模型类,当使用 from_pretrained() 类方法或 from_config() 类方法创建时,将被实例化为库中的一个模型类(带有序列分类头)。

这个类不能直接使用 __init__() 实例化 (会报错)。

from_config

< source >

( **kwargs )

参数

  • config (PretrainedConfig) — 根据配置类选择要实例化的模型类:
  • AlbertConfig 配置类: FlaxAlbertForSequenceClassification (ALBERT 模型)
  • BartConfig 配置类: FlaxBartForSequenceClassification (BART 模型)
  • BertConfig 配置类: FlaxBertForSequenceClassification (BERT 模型)
  • BigBirdConfig 配置类:FlaxBigBirdForSequenceClassification(BigBird 模型)
  • DistilBertConfig 配置类:FlaxDistilBertForSequenceClassification(DistilBERT 模型)
  • ElectraConfig 配置类:FlaxElectraForSequenceClassification(ELECTRA 模型)
  • MBartConfig 配置类:FlaxMBartForSequenceClassification(mBART 模型)
  • RoFormerConfig 配置类:FlaxRoFormerForSequenceClassification(RoFormer 模型)
  • RobertaConfig 配置类:FlaxRobertaForSequenceClassification(RoBERTa 模型)
  • RobertaPreLayerNormConfig 配置类:FlaxRobertaPreLayerNormForSequenceClassification(RoBERTa-PreLayerNorm 模型)
  • XLMRobertaConfig 配置类:FlaxXLMRobertaForSequenceClassification(XLM-RoBERTa 模型)

从配置实例化库中的一个模型类(带有序列分类头)。

注意:从配置文件加载模型不会加载模型权重。它只影响模型的配置。使用 from_pretrained()来加载模型权重。

示例:

>>> from transformers import AutoConfig, FlaxAutoModelForSequenceClassification
>>> # Download configuration from huggingface.co and cache.
>>> config = AutoConfig.from_pretrained("bert-base-cased")
>>> model = FlaxAutoModelForSequenceClassification.from_config(config)
from_pretrained

< source >

( *model_args **kwargs )

参数

  • pretrained_model_name_or_pathstros.PathLike) — 可以是:
  • 一个字符串,预训练模型的模型 ID,托管在 huggingface.co 上的模型存储库内。有效的模型 ID 可以位于根级,如bert-base-uncased,或者命名空间在用户或组织名称下,如dbmdz/bert-base-german-cased
  • 一个包含使用 save_pretrained()保存的模型权重的目录的路径,例如,./my_model_directory/
  • 一个PyTorch state_dict 保存文件的路径或 URL(例如,./pt_model/pytorch_model.bin)。在这种情况下,from_pt应设置为True,并且应提供配置对象作为config参数。这种加载路径比使用提供的转换脚本将 PyTorch 模型转换为 TensorFlow 模型并随后加载 TensorFlow 模型要慢。
  • model_args(额外的位置参数,可选) — 将传递给底层模型的__init__()方法。
  • config(PretrainedConfig,可选)- 模型使用的配置,而不是自动加载的配置。当以下情况时,配置可以自动加载:
  • 该模型是库提供的模型(使用预训练模型的模型 ID字符串加载)。
  • 该模型是使用 save_pretrained()保存的,并通过提供保存目录重新加载。
  • 通过提供本地目录作为pretrained_model_name_or_path加载模型,并在目录中找到名为config.json的配置 JSON 文件。
  • cache_dirstros.PathLike可选)- 下载的预训练模型配置应该缓存在其中的目录路径,如果不应使用标准缓存。
  • from_ptbool可选,默认为False)- 从 PyTorch 检查点保存文件加载模型权重(参见pretrained_model_name_or_path参数的文档字符串)。
  • force_downloadbool可选,默认为False)- 是否强制(重新)下载模型权重和配置文件,覆盖缓存版本(如果存在)。
  • resume_downloadbool可选,默认为False)- 是否删除接收不完整的文件。如果存在这样的文件,将尝试恢复下载。
  • proxiesDict[str, str]可选)- 要使用的代理服务器的字典,按协议或端点划分,例如,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}。代理将在每个请求上使用。
  • output_loading_info(bool, 可选,默认为False)- 是否返回一个包含缺失键、意外键和错误消息的字典。
  • local_files_only(bool, 可选,默认为False)- 是否仅查看本地文件(例如,不尝试下载模型)。
  • revisionstr可选,默认为"main")- 要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID,因为我们在 huggingface.co 上使用基于 git 的系统来存储模型和其他工件,所以revision可以是 git 允许的任何标识符。
  • trust_remote_codebool可选,默认为False)- 是否允许在 Hub 上定义自定义模型的自定义建模文件。此选项应仅对您信任的存储库设置为True,并且您已阅读了代码,因为它将在本地机器上执行 Hub 上存在的代码。
  • code_revisionstr可选,默认为"main")- 在 Hub 上使用的代码的特定修订版本,如果代码存储在与模型其余部分不同的存储库中。它可以是分支名称、标签名称或提交 ID,因为我们在 huggingface.co 上使用基于 git 的系统来存储模型和其他工件,所以revision可以是 git 允许的任何标识符。
  • kwargs(额外的关键字参数,可选)- 可用于更新配置对象(在加载后)并启动模型(例如,output_attentions=True)。根据是否提供config或自动加载的情况而表现不同:
  • 如果提供了config**kwargs将直接传递给底层模型的__init__方法(我们假设配置的所有相关更新已经完成)
  • 如果未提供配置,则kwargs将首先传递给配置类初始化函数(from_pretrained())。与配置属性对应的kwargs的每个键将用提供的kwargs值覆盖该属性。不对应任何配置属性的剩余键将传递给底层模型的__init__函数。

从预训练模型中实例化库的模型类之一(带有序列分类头)。

要实例化的模型类是根据配置对象的model_type属性选择的(如果可能,作为参数传递或从pretrained_model_name_or_path加载),或者当缺少时,通过在pretrained_model_name_or_path上使用模式匹配来回退:

  • albert — FlaxAlbertForSequenceClassification(ALBERT 模型)
  • bart — FlaxBartForSequenceClassification(BART 模型)
  • bert — FlaxBertForSequenceClassification(BERT 模型)
  • big_bird — FlaxBigBirdForSequenceClassification(BigBird 模型)
  • distilbert — FlaxDistilBertForSequenceClassification(DistilBERT 模型)
  • electra — FlaxElectraForSequenceClassification(ELECTRA 模型)
  • mbart — FlaxMBartForSequenceClassification(mBART 模型)
  • roberta — FlaxRobertaForSequenceClassification(RoBERTa 模型)
  • roberta-prelayernorm — FlaxRobertaPreLayerNormForSequenceClassification(RoBERTa-PreLayerNorm 模型)
  • roformer — FlaxRoFormerForSequenceClassification(RoFormer 模型)
  • xlm-roberta — FlaxXLMRobertaForSequenceClassification(XLM-RoBERTa 模型)

示例:

>>> from transformers import AutoConfig, FlaxAutoModelForSequenceClassification
>>> # Download model and configuration from huggingface.co and cache.
>>> model = FlaxAutoModelForSequenceClassification.from_pretrained("bert-base-cased")
>>> # Update configuration during loading
>>> model = FlaxAutoModelForSequenceClassification.from_pretrained("bert-base-cased", output_attentions=True)
>>> model.config.output_attentions
True
>>> # Loading from a PyTorch checkpoint file instead of a TensorFlow model (slower)
>>> config = AutoConfig.from_pretrained("./pt_model/bert_pt_model_config.json")
>>> model = FlaxAutoModelForSequenceClassification.from_pretrained(
...     "./pt_model/bert_pytorch_model.bin", from_pt=True, config=config
... )

AutoModelForMultipleChoice

class transformers.AutoModelForMultipleChoice

< source >

( *args **kwargs )

这是一个通用的模型类,当使用 from_pretrained()类方法或 from_config()类方法创建时,将被实例化为库的模型类之一(带有多选头)。

这个类不能直接使用__init__()实例化(会抛出错误)。

from_config

< source >

( **kwargs )

参数

  • config(PretrainedConfig) — 要实例化的模型类是根据配置类选择的:
  • AlbertConfig 配置类:AlbertForMultipleChoice(ALBERT 模型)
  • BertConfig 配置类:BertForMultipleChoice(BERT 模型)
  • BigBirdConfig 配置类:BigBirdForMultipleChoice(BigBird 模型)
  • CamembertConfig 配置类:CamembertForMultipleChoice(CamemBERT 模型)
  • CanineConfig 配置类:CanineForMultipleChoice(CANINE 模型)
  • ConvBertConfig 配置类:ConvBertForMultipleChoice(ConvBERT 模型)
  • Data2VecTextConfig 配置类:Data2VecTextForMultipleChoice(Data2VecText 模型)
  • DebertaV2Config 配置类:DebertaV2ForMultipleChoice(DeBERTa-v2 模型)
  • DistilBertConfig 配置类:DistilBertForMultipleChoice(DistilBERT 模型)
  • ElectraConfig 配置类:ElectraForMultipleChoice(ELECTRA 模型)
  • ErnieConfig 配置类:ErnieForMultipleChoice(ERNIE 模型)
  • ErnieMConfig 配置类:ErnieMForMultipleChoice(ErnieM 模型)
  • FNetConfig 配置类:FNetForMultipleChoice(FNet 模型)
  • FlaubertConfig 配置类:FlaubertForMultipleChoice(FlauBERT 模型)
  • FunnelConfig 配置类:FunnelForMultipleChoice(Funnel Transformer 模型)
  • IBertConfig 配置类:IBertForMultipleChoice(I-BERT 模型)
  • LongformerConfig 配置类:LongformerForMultipleChoice(Longformer 模型)
  • LukeConfig 配置类:LukeForMultipleChoice(LUKE 模型)
  • MPNetConfig 配置类: MPNetForMultipleChoice (MPNet 模型)
  • MegaConfig 配置类: MegaForMultipleChoice (MEGA 模型)
  • MegatronBertConfig 配置类: MegatronBertForMultipleChoice (Megatron-BERT 模型)
  • MobileBertConfig 配置类: MobileBertForMultipleChoice (MobileBERT 模型)
  • MraConfig 配置类: MraForMultipleChoice (MRA 模型)
  • NezhaConfig 配置类: NezhaForMultipleChoice (Nezha 模型)
  • NystromformerConfig 配置类: NystromformerForMultipleChoice (Nyströmformer 模型)
  • QDQBertConfig 配置类: QDQBertForMultipleChoice (QDQBert 模型)
  • RemBertConfig 配置类: RemBertForMultipleChoice (RemBERT 模型)
  • RoCBertConfig 配置类: RoCBertForMultipleChoice (RoCBert 模型)
  • RoFormerConfig 配置类: RoFormerForMultipleChoice (RoFormer 模型)
  • RobertaConfig 配置类: RobertaForMultipleChoice (RoBERTa 模型)
  • RobertaPreLayerNormConfig 配置类: RobertaPreLayerNormForMultipleChoice (RoBERTa-PreLayerNorm 模型)
  • SqueezeBertConfig 配置类: SqueezeBertForMultipleChoice (SqueezeBERT 模型)
  • XLMConfig 配置类: XLMForMultipleChoice (XLM 模型)
  • XLMRobertaConfig 配置类:XLMRobertaForMultipleChoice(XLM-RoBERTa 模型)
  • XLMRobertaXLConfig 配置类:XLMRobertaXLForMultipleChoice(XLM-RoBERTa-XL 模型)
  • XLNetConfig 配置类:XLNetForMultipleChoice(XLNet 模型)
  • XmodConfig 配置类:XmodForMultipleChoice(X-MOD 模型)
  • YosoConfig 配置类:YosoForMultipleChoice(YOSO 模型)

从配置中实例化库中的一个模型类(带有多选头)。

注意:从配置文件加载模型不会加载模型权重。它只影响模型的配置。使用 from_pretrained()来加载模型权重。

示例:

>>> from transformers import AutoConfig, AutoModelForMultipleChoice
>>> # Download configuration from huggingface.co and cache.
>>> config = AutoConfig.from_pretrained("bert-base-cased")
>>> model = AutoModelForMultipleChoice.from_config(config)
from_pretrained

< source >

( *model_args **kwargs )

参数

  • pretrained_model_name_or_pathstros.PathLike)— 可以是以下之一:
  • 一个字符串,托管在 huggingface.co 模型存储库中的预训练模型的模型 id。有效的模型 id 可以位于根级别,如bert-base-uncased,或者在用户或组织名称下命名空间化,如dbmdz/bert-base-german-cased
  • 一个目录的路径,其中包含使用 save_pretrained()保存的模型权重,例如,./my_model_directory/
  • 一个路径或 url 到一个tensorflow 索引检查点文件(例如,./tf_model/model.ckpt.index)。在这种情况下,from_tf应设置为True,并且应将配置对象提供为config参数。这种加载路径比使用提供的转换脚本将 TensorFlow 检查点转换为 PyTorch 模型并加载 PyTorch 模型要慢。
  • model_args(额外的位置参数,可选)— 将传递给底层模型的__init__()方法。
  • config(PretrainedConfig,可选)— 用于替代自动加载的配置的模型配置。当以下情况时,配置可以自动加载:
  • 该模型是库提供的模型(使用预训练模型的模型 id字符串加载)。
  • 该模型是使用 save_pretrained()保存的,并通过提供保存目录重新加载。
  • 通过提供本地目录作为pretrained_model_name_or_path加载模型,并且在目录中找到名为config.json的配置 JSON 文件。
  • state_dictDict[str, torch.Tensor]可选)— 一个状态字典,用于替代从保存的权重文件加载的状态字典。
    如果您想从预训练配置创建模型但加载自己的权重,则可以使用此选项。不过,在这种情况下,您应该检查使用 save_pretrained()和 from_pretrained()是否不是更简单的选项。
  • cache_dirstros.PathLike可选) — 下载预训练模型配置应缓存的目录路径,如果不使用标准缓存。
  • from_tfbool可选,默认为False) — 从 TensorFlow 检查点保存文件加载模型权重(请参阅pretrained_model_name_or_path参数的文档字符串)。
  • force_downloadbool可选,默认为False)— 是否强制(重新)下载模型权重和配置文件,覆盖缓存版本(如果存在)。
  • resume_downloadbool可选,默认为False)— 是否删除接收不完整的文件。如果存在这样的文件,将尝试恢复下载。
  • proxiesDict[str, str]可选)— 一个代理服务器字典,按协议或端点使用,例如,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}。这些代理在每个请求中使用。
  • output_loading_info(bool, 可选,默认为False) — 是否还返回包含缺失键、意外键和错误消息的字典。
  • local_files_only(bool, 可选,默认为False) — 是否仅查看本地文件(例如,不尝试下载模型)。
  • revisionstr可选,默认为"main") — 要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID,因为我们使用基于 git 的系统在 huggingface.co 上存储模型和其他工件,所以revision可以是 git 允许的任何标识符。
  • trust_remote_codebool可选,默认为False)— 是否允许在 Hub 上定义自定义模型的建模文件。此选项应仅对您信任的存储库设置为True,并且您已经阅读了代码,因为它将在本地机器上执行 Hub 上存在的代码。
  • code_revisionstr可选,默认为"main") — 用于 Hub 上代码的特定修订版本,如果代码位于与模型其余部分不同的存储库中。它可以是分支名称、标签名称或提交 ID,因为我们使用基于 git 的系统在 huggingface.co 上存储模型和其他工件,所以revision可以是 git 允许的任何标识符。
  • kwargs(附加关键字参数,可选) — 可用于更新配置对象(加载后)并启动模型(例如,output_attentions=True)。根据是否提供或自动加载config,其行为有所不同:
  • 如果使用config提供了配置,则**kwargs将直接传递给底层模型的__init__方法(我们假设配置的所有相关更新已经完成)
  • 如果未提供配置,则kwargs将首先传递给配置类初始化函数(from_pretrained())。kwargs中与配置属性对应的每个键将用提供的kwargs值覆盖该属性。不对应任何配置属性的剩余键将传递给底层模型的__init__函数。

从预训练模型实例化库中的一个模型类(带有多选头)。

要实例化的模型类是根据配置对象的 model_type 属性选择的(如果可能,作为参数传递或从 pretrained_model_name_or_path 加载),或者当缺失时,通过在 pretrained_model_name_or_path 上使用模式匹配来回退:

  • albert — AlbertForMultipleChoice (ALBERT 模型)
  • bert — BertForMultipleChoice (BERT 模型)
  • big_bird — BigBirdForMultipleChoice (BigBird 模型)
  • camembert — CamembertForMultipleChoice (CamemBERT 模型)
  • canine — CanineForMultipleChoice (CANINE 模型)
  • convbert — ConvBertForMultipleChoice (ConvBERT 模型)
  • data2vec-text — Data2VecTextForMultipleChoice (Data2VecText 模型)
  • deberta-v2 — DebertaV2ForMultipleChoice (DeBERTa-v2 模型)
  • distilbert — DistilBertForMultipleChoice (DistilBERT 模型)
  • electra — ElectraForMultipleChoice (ELECTRA 模型)
  • ernie — ErnieForMultipleChoice (ERNIE 模型)
  • ernie_m — ErnieMForMultipleChoice (ErnieM 模型)
  • flaubert — FlaubertForMultipleChoice (FlauBERT 模型)
  • fnet — FNetForMultipleChoice (FNet 模型)
  • funnel — FunnelForMultipleChoice (Funnel Transformer 模型)
  • ibert — IBertForMultipleChoice (I-BERT 模型)
  • longformer — LongformerForMultipleChoice (Longformer 模型)
  • luke — LukeForMultipleChoice (LUKE 模型)
  • mega — MegaForMultipleChoice (MEGA 模型)
  • megatron-bert — MegatronBertForMultipleChoice (Megatron-BERT 模型)
  • mobilebert — MobileBertForMultipleChoice (MobileBERT 模型)
  • mpnet — MPNetForMultipleChoice (MPNet 模型)
  • mra — MraForMultipleChoice (MRA 模型)
  • nezha — NezhaForMultipleChoice (Nezha 模型)
  • nystromformer — NystromformerForMultipleChoice (Nyströmformer 模型)
  • qdqbert — QDQBertForMultipleChoice(QDQBert 模型)
  • rembert — RemBertForMultipleChoice(RemBERT 模型)
  • roberta — RobertaForMultipleChoice(RoBERTa 模型)
  • roberta-prelayernorm — RobertaPreLayerNormForMultipleChoice(RoBERTa-PreLayerNorm 模型)
  • roc_bert — RoCBertForMultipleChoice(RoCBert 模型)
  • roformer — RoFormerForMultipleChoice(RoFormer 模型)
  • squeezebert — SqueezeBertForMultipleChoice(SqueezeBERT 模型)
  • xlm — XLMForMultipleChoice(XLM 模型)
  • xlm-roberta — XLMRobertaForMultipleChoice(XLM-RoBERTa 模型)
  • xlm-roberta-xl — XLMRobertaXLForMultipleChoice(XLM-RoBERTa-XL 模型)
  • xlnet — XLNetForMultipleChoice(XLNet 模型)
  • xmod — XmodForMultipleChoice(X-MOD 模型)
  • yoso — YosoForMultipleChoice(YOSO 模型)

默认情况下,模型处于评估模式,使用 model.eval()(例如,关闭了 dropout 模块)。要训练模型,您应该首先使用 model.train() 将其设置回训练模式

示例:

>>> from transformers import AutoConfig, AutoModelForMultipleChoice
>>> # Download model and configuration from huggingface.co and cache.
>>> model = AutoModelForMultipleChoice.from_pretrained("bert-base-cased")
>>> # Update configuration during loading
>>> model = AutoModelForMultipleChoice.from_pretrained("bert-base-cased", output_attentions=True)
>>> model.config.output_attentions
True
>>> # Loading from a TF checkpoint file instead of a PyTorch model (slower)
>>> config = AutoConfig.from_pretrained("./tf_model/bert_tf_model_config.json")
>>> model = AutoModelForMultipleChoice.from_pretrained(
...     "./tf_model/bert_tf_checkpoint.ckpt.index", from_tf=True, config=config
... )

TFAutoModelForMultipleChoice

class transformers.TFAutoModelForMultipleChoice

< source >

( *args **kwargs )

这是一个通用的模型类,当使用 from_pretrained() 类方法或 from_config() 类方法创建时,将实例化为库中的模型类之一(带有多选头)。

这个类不能直接使用 __init__() 实例化(会抛出错误)。

from_config

< source >

( **kwargs )

参数

  • config (PretrainedConfig) — 根据配置类选择要实例化的模型类:
  • AlbertConfig 配置类:TFAlbertForMultipleChoice(ALBERT 模型)
  • BertConfig 配置类:TFBertForMultipleChoice(BERT 模型)
  • CamembertConfig 配置类:TFCamembertForMultipleChoice(CamemBERT 模型)
  • ConvBertConfig 配置类: TFConvBertForMultipleChoice (ConvBERT 模型)
  • DebertaV2Config 配置类: TFDebertaV2ForMultipleChoice (DeBERTa-v2 模型)
  • DistilBertConfig 配置类: TFDistilBertForMultipleChoice (DistilBERT 模型)
  • ElectraConfig 配置类: TFElectraForMultipleChoice (ELECTRA 模型)
  • FlaubertConfig 配置类: TFFlaubertForMultipleChoice (FlauBERT 模型)
  • FunnelConfig 配置类: TFFunnelForMultipleChoice (Funnel Transformer 模型)
  • LongformerConfig 配置类: TFLongformerForMultipleChoice (Longformer 模型)
  • MPNetConfig 配置类: TFMPNetForMultipleChoice (MPNet 模型)
  • MobileBertConfig 配置类: TFMobileBertForMultipleChoice (MobileBERT 模型)
  • RemBertConfig 配置类: TFRemBertForMultipleChoice (RemBERT 模型)
  • RoFormerConfig 配置类: TFRoFormerForMultipleChoice (RoFormer 模型)
  • RobertaConfig 配置类: TFRobertaForMultipleChoice (RoBERTa 模型)
  • RobertaPreLayerNormConfig 配置类: TFRobertaPreLayerNormForMultipleChoice (RoBERTa-PreLayerNorm 模型)
  • XLMConfig 配置类: TFXLMForMultipleChoice (XLM 模型)
  • XLMRobertaConfig 配置类: TFXLMRobertaForMultipleChoice (XLM-RoBERTa 模型)
  • XLNetConfig 配置类:TFXLNetForMultipleChoice(XLNet 模型)

从配置实例化库中的一个模型类(带有多选头)。

注意:从配

相关文章
|
4月前
|
存储 缓存 算法框架/工具
Transformers 4.37 中文文档(十三)(8)
Transformers 4.37 中文文档(十三)
75 1
|
4月前
|
存储 缓存 开发工具
Transformers 4.37 中文文档(十三)(4)
Transformers 4.37 中文文档(十三)
112 1
|
4月前
|
存储 缓存 算法框架/工具
Transformers 4.37 中文文档(十三)(5)
Transformers 4.37 中文文档(十三)
53 1
|
4月前
|
存储 缓存 JSON
Transformers 4.37 中文文档(十三)(3)
Transformers 4.37 中文文档(十三)
186 1
|
4月前
|
存储 缓存 算法框架/工具
Transformers 4.37 中文文档(十三)(6)
Transformers 4.37 中文文档(十三)
51 1
|
4月前
|
存储 缓存 算法框架/工具
Transformers 4.37 中文文档(十三)(7)
Transformers 4.37 中文文档(十三)
35 1
|
4月前
|
存储 自然语言处理 API
Transformers 4.37 中文文档(十三)(1)
Transformers 4.37 中文文档(十三)
66 1
|
4月前
|
存储 缓存 开发工具
Transformers 4.37 中文文档(十三)(2)
Transformers 4.37 中文文档(十三)
114 1
|
4月前
|
存储 PyTorch 网络安全
Transformers 4.37 中文文档(十九)(5)
Transformers 4.37 中文文档(十九)
88 2
|
4月前
|
存储 机器学习/深度学习 异构计算
Transformers 4.37 中文文档(十九)(8)
Transformers 4.37 中文文档(十九)
175 2