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

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

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


TFAutoModel

class transformers.TFAutoModel

< source >

( *args **kwargs )

这是一个通用的模型类,在使用 from_pretrained() 类方法或 from_config() 类方法创建时,会被实例化为库中的基础模型类之一。

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

from_config

< source >

( **kwargs )

参数

  • config (PretrainedConfig) — 根据配置类选择要实例化的模型类:
  • AlbertConfig 配置类: TFAlbertModel (ALBERT 模型)
  • BartConfig 配置类: TFBartModel (BART 模型)
  • BertConfig 配置类: TFBertModel (BERT 模型)
  • BlenderbotConfig 配置类: TFBlenderbotModel (Blenderbot 模型)
  • BlenderbotSmallConfig 配置类: TFBlenderbotSmallModel (BlenderbotSmall 模型)
  • BlipConfig 配置类: TFBlipModel (BLIP 模型)
  • CLIPConfig 配置类: TFCLIPModel (CLIP 模型)
  • CTRLConfig 配置类: TFCTRLModel (CTRL 模型)
  • CamembertConfig 配置类: TFCamembertModel (CamemBERT 模型)
  • ConvBertConfig 配置类: TFConvBertModel (ConvBERT 模型)
  • ConvNextConfig 配置类: TFConvNextModel (ConvNeXT 模型)
  • ConvNextV2Config 配置类: TFConvNextV2Model (ConvNeXTV2 模型)
  • CvtConfig 配置类: TFCvtModel (CvT 模型)
  • DPRConfig 配置类: TFDPRQuestionEncoder (DPR 模型)
  • Data2VecVisionConfig 配置类: TFData2VecVisionModel (Data2VecVision 模型)
  • DebertaConfig 配置类: TFDebertaModel (DeBERTa 模型)
  • DebertaV2Config 配置类: TFDebertaV2Model (DeBERTa-v2 模型)
  • DeiTConfig 配置类: TFDeiTModel (DeiT 模型)
  • DistilBertConfig 配置类: TFDistilBertModel (DistilBERT 模型)
  • EfficientFormerConfig 配置类: TFEfficientFormerModel (EfficientFormer 模型)
  • ElectraConfig 配置类: TFElectraModel (ELECTRA 模型)
  • EsmConfig 配置类: TFEsmModel (ESM 模型)
  • FlaubertConfig 配置类: TFFlaubertModel (FlauBERT 模型)
  • FunnelConfig 配置类: TFFunnelModel 或 TFFunnelBaseModel (Funnel Transformer 模型)
  • GPT2Config 配置类: TFGPT2Model (OpenAI GPT-2 模型)
  • GPTJConfig 配置类: TFGPTJModel (GPT-J 模型)
  • GroupViTConfig 配置类: TFGroupViTModel (GroupViT 模型)
  • HubertConfig 配置类: TFHubertModel (Hubert 模型)
  • LEDConfig 配置类: TFLEDModel (LED 模型)
  • LayoutLMConfig 配置类: TFLayoutLMModel (LayoutLM 模型)
  • LayoutLMv3Config 配置类: TFLayoutLMv3Model (LayoutLMv3 模型)
  • LongformerConfig 配置类: TFLongformerModel (Longformer 模型)
  • LxmertConfig 配置类: TFLxmertModel (LXMERT 模型)
  • MBartConfig 配置类: TFMBartModel (mBART 模型)
  • MPNetConfig 配置类: TFMPNetModel (MPNet 模型)
  • MT5Config 配置类: TFMT5Model (MT5 模型)
  • MarianConfig 配置类: TFMarianModel (Marian 模型)
  • MobileBertConfig 配置类: TFMobileBertModel (MobileBERT 模型)
  • MobileViTConfig 配置类: TFMobileViTModel (MobileViT 模型)
  • OPTConfig 配置类: TFOPTModel (OPT 模型)
  • OpenAIGPTConfig 配置类: TFOpenAIGPTModel (OpenAI GPT 模型)
  • PegasusConfig 配置类: TFPegasusModel (Pegasus 模型)
  • RegNetConfig 配置类: TFRegNetModel (RegNet 模型)
  • RemBertConfig 配置类: TFRemBertModel (RemBERT 模型)
  • ResNetConfig 配置类: TFResNetModel (ResNet 模型)
  • RoFormerConfig 配置类: TFRoFormerModel (RoFormer 模型)
  • RobertaConfig 配置类: TFRobertaModel (RoBERTa 模型)
  • RobertaPreLayerNormConfig 配置类: TFRobertaPreLayerNormModel (RoBERTa-PreLayerNorm 模型)
  • SamConfig 配置类: TFSamModel (SAM 模型)
  • SegformerConfig 配置类: TFSegformerModel (SegFormer 模型)
  • Speech2TextConfig 配置类: TFSpeech2TextModel (Speech2Text 模型)
  • SwinConfig 配置类: TFSwinModel (Swin Transformer 模型)
  • T5Config 配置类: TFT5Model (T5 模型)
  • TapasConfig 配置类: TFTapasModel (TAPAS 模型)
  • TransfoXLConfig 配置类: TFTransfoXLModel (Transformer-XL 模型)
  • ViTConfig 配置类: TFViTModel (ViT 模型)
  • ViTMAEConfig 配置类: TFViTMAEModel (ViTMAE 模型)
  • VisionTextDualEncoderConfig 配置类:TFVisionTextDualEncoderModel(VisionTextDualEncoder 模型)
  • Wav2Vec2Config 配置类:TFWav2Vec2Model(Wav2Vec2 模型)
  • WhisperConfig 配置类:TFWhisperModel(Whisper 模型)
  • XGLMConfig 配置类:TFXGLMModel(XGLM 模型)
  • XLMConfig 配置类:TFXLMModel(XLM 模型)
  • XLMRobertaConfig 配置类:TFXLMRobertaModel(XLM-RoBERTa 模型)
  • XLNetConfig 配置类:TFXLNetModel(XLNet 模型)

从配置实例化库中的一个基础模型类。

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

示例:

>>> from transformers import AutoConfig, TFAutoModel
>>> # Download configuration from huggingface.co and cache.
>>> config = AutoConfig.from_pretrained("bert-base-cased")
>>> model = TFAutoModel.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 状态字典保存文件的路径或 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_dir (str or os.PathLike, optional) — 下载的预训练模型配置应缓存在其中的目录路径,如果不使用标准缓存。
  • 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(附加关键字参数,optional) — 可用于更新配置对象(加载后)并初始化模型(例如,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 — TFAlbertModel (ALBERT 模型)
  • bart — TFBartModel (BART 模型)
  • bert — TFBertModel (BERT 模型)
  • blenderbot — TFBlenderbotModel (Blenderbot 模型)
  • blenderbot-small — TFBlenderbotSmallModel (BlenderbotSmall 模型)
  • blip — TFBlipModel (BLIP 模型)
  • camembert — TFCamembertModel (CamemBERT 模型)
  • clip — TFCLIPModel (CLIP 模型)
  • convbert — TFConvBertModel (ConvBERT 模型)
  • convnext — TFConvNextModel (ConvNeXT 模型)
  • convnextv2 — TFConvNextV2Model (ConvNeXTV2 模型)
  • ctrl — TFCTRLModel (CTRL 模型)
  • cvt — TFCvtModel (CvT 模型)
  • data2vec-vision — TFData2VecVisionModel (Data2VecVision 模型)
  • deberta — TFDebertaModel (DeBERTa 模型)
  • deberta-v2 — TFDebertaV2Model (DeBERTa-v2 模型)
  • deit — TFDeiTModel (DeiT 模型)
  • distilbert — TFDistilBertModel (DistilBERT 模型)
  • dpr — TFDPRQuestionEncoder (DPR 模型)
  • efficientformer — TFEfficientFormerModel (EfficientFormer 模型)
  • electra — TFElectraModel (ELECTRA 模型)
  • esm — TFEsmModel (ESM 模型)
  • flaubert — TFFlaubertModel (FlauBERT 模型)
  • funnel — TFFunnelModel 或 TFFunnelBaseModel (Funnel Transformer 模型)
  • gpt-sw3 — TFGPT2Model (GPT-Sw3 模型)
  • gpt2 — TFGPT2Model (OpenAI GPT-2 模型)
  • gptj — TFGPTJModel (GPT-J 模型)
  • groupvit — TFGroupViTModel (GroupViT 模型)
  • hubert — TFHubertModel (Hubert 模型)
  • layoutlm — TFLayoutLMModel (LayoutLM 模型)
  • layoutlmv3 — TFLayoutLMv3Model (LayoutLMv3 模型)
  • led — TFLEDModel (LED 模型)
  • longformer — TFLongformerModel (Longformer 模型)
  • lxmert — TFLxmertModel (LXMERT 模型)
  • marian — TFMarianModel (Marian 模型)
  • mbart — TFMBartModel (mBART 模型)
  • mobilebert — TFMobileBertModel (MobileBERT 模型)
  • mobilevit — TFMobileViTModel (MobileViT 模型)
  • mpnet — TFMPNetModel (MPNet 模型)
  • mt5 — TFMT5Model (MT5 模型)
  • openai-gpt — TFOpenAIGPTModel (OpenAI GPT 模型)
  • opt — TFOPTModel (OPT 模型)
  • pegasus — TFPegasusModel (Pegasus 模型)
  • regnet — TFRegNetModel (RegNet 模型)
  • rembert — TFRemBertModel (RemBERT 模型)
  • resnet — TFResNetModel (ResNet 模型)
  • roberta — TFRobertaModel (RoBERTa 模型)
  • roberta-prelayernorm — TFRobertaPreLayerNormModel (RoBERTa-PreLayerNorm 模型)
  • roformer — TFRoFormerModel (RoFormer 模型)
  • sam — TFSamModel (SAM 模型)
  • segformer — TFSegformerModel (SegFormer 模型)
  • speech_to_text — TFSpeech2TextModel (Speech2Text 模型)
  • swin — TFSwinModel (Swin Transformer 模型)
  • t5 — TFT5Model (T5 模型)
  • tapas — TFTapasModel (TAPAS 模型)
  • transfo-xl — TFTransfoXLModel (Transformer-XL 模型)
  • vision-text-dual-encoder — TFVisionTextDualEncoderModel (VisionTextDualEncoder 模型)
  • vit — TFViTModel (ViT 模型)
  • vit_mae — TFViTMAEModel (ViTMAE 模型)
  • wav2vec2 — TFWav2Vec2Model (Wav2Vec2 模型)
  • whisper — TFWhisperModel (Whisper 模型)
  • xglm — TFXGLMModel (XGLM 模型)
  • xlm — TFXLMModel (XLM 模型)
  • xlm-roberta — TFXLMRobertaModel (XLM-RoBERTa 模型)
  • xlnet — TFXLNetModel (XLNet 模型)

示例:

>>> from transformers import AutoConfig, TFAutoModel
>>> # Download model and configuration from huggingface.co and cache.
>>> model = TFAutoModel.from_pretrained("bert-base-cased")
>>> # Update configuration during loading
>>> model = TFAutoModel.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 = TFAutoModel.from_pretrained(
...     "./pt_model/bert_pytorch_model.bin", from_pt=True, config=config
... )

FlaxAutoModel

class transformers.FlaxAutoModel

< source >

( *args **kwargs )

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

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

from_config

< source >

( **kwargs )

参数

  • config (PretrainedConfig) — 根据配置类选择要实例化的模型类:
  • AlbertConfig 配置类:FlaxAlbertModel(ALBERT 模型)
  • BartConfig 配置类:FlaxBartModel(BART 模型)
  • BeitConfig 配置类:FlaxBeitModel(BEiT 模型)
  • BertConfig 配置类:FlaxBertModel(BERT 模型)
  • BigBirdConfig 配置类:FlaxBigBirdModel(BigBird 模型)
  • BlenderbotConfig 配置类:FlaxBlenderbotModel(Blenderbot 模型)
  • BlenderbotSmallConfig 配置类:FlaxBlenderbotSmallModel(BlenderbotSmall 模型)
  • BloomConfig 配置类:FlaxBloomModel(BLOOM 模型)
  • CLIPConfig 配置类:FlaxCLIPModel(CLIP 模型)
  • DistilBertConfig 配置类:FlaxDistilBertModel(DistilBERT 模型)
  • ElectraConfig 配置类:FlaxElectraModel(ELECTRA 模型)
  • GPT2Config 配置类:FlaxGPT2Model(OpenAI GPT-2 模型)
  • GPTJConfig 配置类:FlaxGPTJModel(GPT-J 模型)
  • GPTNeoConfig 配置类: FlaxGPTNeoModel (GPT Neo 模型)
  • LlamaConfig 配置类: FlaxLlamaModel (LLaMA 模型)
  • LongT5Config 配置类: FlaxLongT5Model (LongT5 模型)
  • MBartConfig 配置类: FlaxMBartModel (mBART 模型)
  • MT5Config 配置类: FlaxMT5Model (MT5 模型)
  • MarianConfig 配置类: FlaxMarianModel (Marian 模型)
  • OPTConfig 配置类: FlaxOPTModel (OPT 模型)
  • PegasusConfig 配置类: FlaxPegasusModel (Pegasus 模型)
  • RegNetConfig 配置类: FlaxRegNetModel (RegNet 模型)
  • ResNetConfig 配置类: FlaxResNetModel (ResNet 模型)
  • RoFormerConfig 配置类: FlaxRoFormerModel (RoFormer 模型)
  • RobertaConfig 配置类: FlaxRobertaModel (RoBERTa 模型)
  • RobertaPreLayerNormConfig 配置类: FlaxRobertaPreLayerNormModel (RoBERTa-PreLayerNorm 模型)
  • T5Config 配置类: FlaxT5Model (T5 模型)
  • ViTConfig 配置类: FlaxViTModel (ViT 模型)
  • VisionTextDualEncoderConfig 配置类: FlaxVisionTextDualEncoderModel (VisionTextDualEncoder 模型)
  • Wav2Vec2Config 配置类: FlaxWav2Vec2Model (Wav2Vec2 模型)
  • WhisperConfig 配置类: FlaxWhisperModel (Whisper 模型)
  • XGLMConfig 配置类: FlaxXGLMModel (XGLM 模型)
  • XLMRobertaConfig 配置类: FlaxXLMRobertaModel (XLM-RoBERTa 模型)

从配置中实例化库中的基础模型类之一。

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

示例:

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

< source >

( *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/
  • 一个 PyTorch state_dict save file 的路径或 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_dir (stros.PathLike, 可选) — 如果不使用标准缓存,则应将下载的预训练模型配置缓存在其中的目录路径。
  • from_pt (bool, 可选, 默认为 False) — 从 PyTorch checkpoint save 文件加载模型权重(参见 pretrained_model_name_or_path 参数的文档字符串)。
  • force_download (bool, 可选, 默认为 False) — 是否强制下载模型权重和配置文件,覆盖缓存版本(如果存在)。
  • resume_download (bool, 可选, 默认为 False) — 是否删除接收不完整的文件。如果存在这样的文件,将尝试恢复下载。
  • proxies (Dict[str, str], 可选) — 一个代理服务器字典,按协议或端点使用,例如,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}。代理在每个请求上使用。
  • output_loading_info(bool, 可选, 默认为 False) — 是否返回一个包含缺失键、意外键和错误消息的字典。
  • local_files_only(bool, 可选, 默认为 False) — 是否仅查看本地文件(例如,不尝试下载模型)。
  • revision (str, 可选, 默认为 "main") — 要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID,因为我们使用基于 git 的系统在 huggingface.co 上存储模型和其他工件,所以 revision 可以是 git 允许的任何标识符。
  • trust_remote_code (bool, 可选, 默认为 False) — 是否允许在 Hub 上定义自定义模型的建模文件。此选项应仅对您信任的存储库设置为 True,并且您已经阅读了代码,因为它将在本地机器上执行 Hub 上存在的代码。
  • code_revision (str, 可选, 默认为 "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 — FlaxAlbertModel (ALBERT 模型)
  • bart — FlaxBartModel (BART 模型)
  • beit — FlaxBeitModel (BEiT 模型)
  • bert — FlaxBertModel (BERT 模型)
  • big_bird — FlaxBigBirdModel (BigBird 模型)
  • blenderbot — FlaxBlenderbotModel (Blenderbot 模型)
  • blenderbot-small — FlaxBlenderbotSmallModel (BlenderbotSmall 模型)
  • bloom — FlaxBloomModel (BLOOM 模型)
  • clip — FlaxCLIPModel (CLIP 模型)
  • distilbert — FlaxDistilBertModel (DistilBERT 模型)
  • electra — FlaxElectraModel(ELECTRA 模型)
  • gpt-sw3 — FlaxGPT2Model(GPT-Sw3 模型)
  • gpt2 — FlaxGPT2Model(OpenAI GPT-2 模型)
  • gpt_neo — FlaxGPTNeoModel(GPT Neo 模型)
  • gptj — FlaxGPTJModel(GPT-J 模型)
  • llama — FlaxLlamaModel(LLaMA 模型)
  • longt5 — FlaxLongT5Model(LongT5 模型)
  • marian — FlaxMarianModel(Marian 模型)
  • mbart — FlaxMBartModel(mBART 模型)
  • mt5 — FlaxMT5Model(MT5 模型)
  • opt — FlaxOPTModel(OPT 模型)
  • pegasus — FlaxPegasusModel(Pegasus 模型)
  • regnet — FlaxRegNetModel(RegNet 模型)
  • resnet — FlaxResNetModel(ResNet 模型)
  • roberta — FlaxRobertaModel(RoBERTa 模型)
  • roberta-prelayernorm — FlaxRobertaPreLayerNormModel(RoBERTa-PreLayerNorm 模型)
  • roformer — FlaxRoFormerModel(RoFormer 模型)
  • t5 — FlaxT5Model(T5 模型)
  • vision-text-dual-encoder — FlaxVisionTextDualEncoderModel(VisionTextDualEncoder 模型)
  • vit — FlaxViTModel(ViT 模型)
  • wav2vec2 — FlaxWav2Vec2Model(Wav2Vec2 模型)
  • whisper — FlaxWhisperModel(Whisper 模型)
  • xglm — FlaxXGLMModel(XGLM 模型)
  • xlm-roberta — FlaxXLMRobertaModel(XLM-RoBERTa 模型)

示例:

>>> from transformers import AutoConfig, FlaxAutoModel
>>> # Download model and configuration from huggingface.co and cache.
>>> model = FlaxAutoModel.from_pretrained("bert-base-cased")
>>> # Update configuration during loading
>>> model = FlaxAutoModel.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 = FlaxAutoModel.from_pretrained(
...     "./pt_model/bert_pytorch_model.bin", from_pt=True, config=config
... )

通用预训练类

以下自动类可用于实例化带有预训练头部的模型。

AutoModelForPreTraining

class transformers.AutoModelForPreTraining

< source >

( *args **kwargs )

这是一个通用的模型类,当使用 class method 或 class method 创建时,将作为库的模型类之一实例化(带有预训练头部)。

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

from_config

< source >

( **kwargs )

参数

  • config (PretrainedConfig) — 根据配置类选择要实例化的模型类:
  • AlbertConfig 配置类: AlbertForPreTraining (ALBERT 模型)
  • BartConfig 配置类: BartForConditionalGeneration (BART 模型)
  • BertConfig 配置类: BertForPreTraining (BERT 模型)
  • BigBirdConfig 配置类: BigBirdForPreTraining (BigBird 模型)
  • BloomConfig 配置类: BloomForCausalLM (BLOOM 模型)
  • CTRLConfig 配置类: CTRLLMHeadModel (CTRL 模型)
  • CamembertConfig 配置类: CamembertForMaskedLM (CamemBERT 模型)
  • Data2VecTextConfig 配置类: Data2VecTextForMaskedLM (Data2VecText 模型)
  • DebertaConfig 配置类: DebertaForMaskedLM (DeBERTa 模型)
  • DebertaV2Config 配置类: DebertaV2ForMaskedLM (DeBERTa-v2 模型)
  • DistilBertConfig 配置类: DistilBertForMaskedLM (DistilBERT 模型)
  • ElectraConfig 配置类: ElectraForPreTraining (ELECTRA 模型)
  • ErnieConfig 配置类: ErnieForPreTraining (ERNIE 模型)
  • FNetConfig 配置类: FNetForPreTraining (FNet 模型)
  • FSMTConfig 配置类: FSMTForConditionalGeneration (FairSeq 机器翻译模型)
  • FlaubertConfig 配置类: FlaubertWithLMHeadModel (FlauBERT 模型)
  • FlavaConfig 配置类: FlavaForPreTraining (FLAVA 模型)
  • FunnelConfig 配置类: FunnelForPreTraining (Funnel Transformer 模型)
  • GPT2Config 配置类: GPT2LMHeadModel (OpenAI GPT-2 模型)
  • GPTBigCodeConfig 配置类: GPTBigCodeForCausalLM (GPTBigCode 模型)
  • GPTSanJapaneseConfig 配置类: GPTSanJapaneseForConditionalGeneration (GPTSAN-japanese 模型)
  • IBertConfig 配置类: IBertForMaskedLM (I-BERT 模型)
  • IdeficsConfig 配置类: IdeficsForVisionText2Text (IDEFICS 模型)
  • LayoutLMConfig 配置类: LayoutLMForMaskedLM (LayoutLM 模型)
  • LlavaConfig 配置类: LlavaForConditionalGeneration (LLaVa 模型)
  • LongformerConfig 配置类: LongformerForMaskedLM (Longformer 模型)
  • LukeConfig 配置类: LukeForMaskedLM (LUKE 模型)
  • LxmertConfig 配置类: LxmertForPreTraining (LXMERT 模型)
  • MPNetConfig 配置类: MPNetForMaskedLM (MPNet 模型)
  • MegaConfig 配置类: MegaForMaskedLM (MEGA 模型)
  • MegatronBertConfig 配置类: MegatronBertForPreTraining (Megatron-BERT 模型)
  • MobileBertConfig 配置类: MobileBertForPreTraining (MobileBERT 模型)
  • MptConfig 配置类: MptForCausalLM (MPT 模型)
  • MraConfig 配置类: MraForMaskedLM (MRA 模型)
  • MvpConfig 配置类: MvpForConditionalGeneration (MVP 模型)
  • NezhaConfig 配置类: NezhaForPreTraining (Nezha 模型)
  • NllbMoeConfig 配置类: NllbMoeForConditionalGeneration (NLLB-MOE 模型)
  • OpenAIGPTConfig 配置类: OpenAIGPTLMHeadModel (OpenAI GPT 模型)
  • RetriBertConfig 配置类: RetriBertModel (RetriBERT 模型)
  • RoCBertConfig 配置类: RoCBertForPreTraining (RoCBert 模型)
  • RobertaConfig 配置类: RobertaForMaskedLM (RoBERTa 模型)
  • RobertaPreLayerNormConfig 配置类: RobertaPreLayerNormForMaskedLM (RoBERTa-PreLayerNorm 模型)
  • RwkvConfig 配置类: RwkvForCausalLM (RWKV 模型)
  • SplinterConfig 配置类: SplinterForPreTraining (Splinter 模型)
  • SqueezeBertConfig 配置类: SqueezeBertForMaskedLM (SqueezeBERT 模型)
  • SwitchTransformersConfig 配置类: SwitchTransformersForConditionalGeneration (SwitchTransformers 模型)
  • T5Config 配置类: T5ForConditionalGeneration (T5 模型)
  • TapasConfig 配置类: TapasForMaskedLM (TAPAS 模型)
  • TransfoXLConfig 配置类: TransfoXLLMHeadModel (Transformer-XL 模型)
  • TvltConfig 配置类: TvltForPreTraining (TVLT 模型)
  • UniSpeechConfig 配置类: UniSpeechForPreTraining (UniSpeech 模型)
  • UniSpeechSatConfig 配置类: UniSpeechSatForPreTraining (UniSpeechSat 模型)
  • ViTMAEConfig 配置类: ViTMAEForPreTraining (ViTMAE 模型)
  • VideoMAEConfig 配置类: VideoMAEForPreTraining (VideoMAE 模型)
  • VipLlavaConfig 配置类: VipLlavaForConditionalGeneration (VipLlava 模型)
  • VisualBertConfig 配置类: VisualBertForPreTraining (VisualBERT 模型)
  • Wav2Vec2Config 配置类: Wav2Vec2ForPreTraining (Wav2Vec2 模型)
  • Wav2Vec2ConformerConfig 配置类: Wav2Vec2ConformerForPreTraining (Wav2Vec2-Conformer 模型)
  • XLMConfig 配置类: XLMWithLMHeadModel (XLM 模型)
  • XLMRobertaConfig 配置类: XLMRobertaForMaskedLM (XLM-RoBERTa 模型)
  • XLMRobertaXLConfig 配置类: XLMRobertaXLForMaskedLM (XLM-RoBERTa-XL 模型)
  • XLNetConfig 配置类: XLNetLMHeadModel (XLNet 模型)
  • XmodConfig 配置类: XmodForMaskedLM (X-MOD 模型)

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

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

示例:

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

<来源>

( *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/
  • 一个TensorFlow 索引检查点文件的路径或 url(例如,./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) — 是否仅查看本地文件(例如,不尝试下载模型)。
  • revision (str, optional, 默认为 "main") — 要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID,因为我们在 huggingface.co 上使用基于 git 的系统来存储模型和其他工件,所以 revision 可以是 git 允许的任何标识符。
  • trust_remote_code (bool, 可选, 默认为 False) — 是否允许在 Hub 上定义自定义模型的建模文件。此选项应仅对您信任的存储库设置为 True,并且您已经阅读了代码,因为它将在本地机器上执行 Hub 上存在的代码。
  • code_revision (str, optional, 默认为 "main") — 用于 Hub 上代码的特定修订版本,如果代码存储在与模型其余部分不同的存储库中。它可以是分支名称、标签名称或提交 ID,因为我们在 huggingface.co 上使用基于 git 的系统来存储模型和其他工件,所以 revision 可以是 git 允许的任何标识符。
  • kwargs(额外的关键字参数,可选) — 可用于更新配置对象(加载后)并初始化模型(例如,output_attentions=True)。根据是否提供了 config 或自动加载了 config,行为会有所不同:
  • 如果提供了带有 config 的配置,**kwargs 将直接传递给底层模型的 __init__ 方法(我们假设配置的所有相关更新已经完成)
  • 如果未提供配置,kwargs 将首先传递给配置类初始化函数(from_pretrained())。kwargs 的每个与配置属性对应的键将用提供的 kwargs 值覆盖该属性。不对应任何配置属性的剩余键将传递给底层模型的 __init__ 函数。

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

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

  • albert — AlbertForPreTraining (ALBERT 模型)
  • bart — BartForConditionalGeneration (BART 模型)
  • bert — BertForPreTraining (BERT 模型)
  • big_bird — BigBirdForPreTraining (BigBird 模型)
  • bloom — BloomForCausalLM (BLOOM 模型)
  • camembert — CamembertForMaskedLM (CamemBERT 模型)
  • ctrl — CTRLLMHeadModel (CTRL 模型)
  • data2vec-text — Data2VecTextForMaskedLM (Data2VecText 模型)
  • deberta — DebertaForMaskedLM (DeBERTa 模型)
  • deberta-v2 — DebertaV2ForMaskedLM (DeBERTa-v2 模型)
  • distilbert — DistilBertForMaskedLM (DistilBERT 模型)
  • electra — ElectraForPreTraining (ELECTRA 模型)
  • ernie — ErnieForPreTraining (ERNIE 模型)
  • flaubert — FlaubertWithLMHeadModel (FlauBERT 模型)
  • flava — FlavaForPreTraining (FLAVA 模型)
  • fnet — FNetForPreTraining (FNet 模型)
  • fsmt — FSMTForConditionalGeneration (FairSeq 机器翻译模型)
  • funnel — FunnelForPreTraining (Funnel Transformer 模型)
  • gpt-sw3 — GPT2LMHeadModel (GPT-Sw3 模型)
  • gpt2 — GPT2LMHeadModel (OpenAI GPT-2 模型)
  • gpt_bigcode — GPTBigCodeForCausalLM (GPTBigCode 模型)
  • gptsan-japanese — GPTSanJapaneseForConditionalGeneration (GPTSAN-japanese 模型)
  • ibert — IBertForMaskedLM (I-BERT 模型)
  • idefics — IdeficsForVisionText2Text (IDEFICS 模型)
  • layoutlm — LayoutLMForMaskedLM (LayoutLM 模型)
  • llava — LlavaForConditionalGeneration (LLaVa 模型)
  • longformer — LongformerForMaskedLM (Longformer 模型)
  • luke — LukeForMaskedLM (LUKE 模型)
  • lxmert — LxmertForPreTraining (LXMERT 模型)
  • mega — MegaForMaskedLM (MEGA 模型)
  • megatron-bert — MegatronBertForPreTraining (Megatron-BERT 模型)
  • mobilebert — MobileBertForPreTraining (MobileBERT 模型)
  • mpnet — MPNetForMaskedLM (MPNet 模型)
  • mpt — MptForCausalLM (MPT 模型)
  • mra — MraForMaskedLM (MRA 模型)
  • mvp — MvpForConditionalGeneration (MVP 模型)
  • nezha — NezhaForPreTraining (Nezha 模型)
  • nllb-moe — NllbMoeForConditionalGeneration (NLLB-MOE 模型)
  • openai-gpt — OpenAIGPTLMHeadModel (OpenAI GPT 模型)
  • retribert — RetriBertModel (RetriBERT 模型)
  • roberta — RobertaForMaskedLM (RoBERTa 模型)
  • roberta-prelayernorm — RobertaPreLayerNormForMaskedLM (RoBERTa-PreLayerNorm 模型)
  • roc_bert — RoCBertForPreTraining (RoCBert 模型)
  • rwkv — RwkvForCausalLM (RWKV 模型)
  • splinter — SplinterForPreTraining (Splinter 模型)
  • squeezebert — SqueezeBertForMaskedLM (SqueezeBERT 模型)
  • switch_transformers — SwitchTransformersForConditionalGeneration (SwitchTransformers 模型)
  • t5 — T5ForConditionalGeneration (T5 模型)
  • tapas — TapasForMaskedLM (TAPAS 模型)
  • transfo-xl — TransfoXLLMHeadModel (Transformer-XL 模型)
  • tvlt — TvltForPreTraining (TVLT 模型)
  • unispeech — UniSpeechForPreTraining (UniSpeech 模型)
  • unispeech-sat — UniSpeechSatForPreTraining (UniSpeechSat 模型)
  • videomae — VideoMAEForPreTraining (VideoMAE 模型)
  • vipllava — VipLlavaForConditionalGeneration (VipLlava 模型)
  • visual_bert — VisualBertForPreTraining (VisualBERT 模型)
  • vit_mae — ViTMAEForPreTraining (ViTMAE 模型)
  • wav2vec2 — Wav2Vec2ForPreTraining (Wav2Vec2 模型)
  • wav2vec2-conformer — Wav2Vec2ConformerForPreTraining (Wav2Vec2-Conformer 模型)
  • xlm — XLMWithLMHeadModel (XLM 模型)
  • xlm-roberta — XLMRobertaForMaskedLM (XLM-RoBERTa 模型)
  • xlm-roberta-xl — XLMRobertaXLForMaskedLM (XLM-RoBERTa-XL 模型)
  • xlnet — XLNetLMHeadModel (XLNet 模型)
  • xmod — XmodForMaskedLM (X-MOD 模型)

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

示例:

>>> from transformers import AutoConfig, AutoModelForPreTraining
>>> # Download model and configuration from huggingface.co and cache.
>>> model = AutoModelForPreTraining.from_pretrained("bert-base-cased")
>>> # Update configuration during loading
>>> model = AutoModelForPreTraining.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 = AutoModelForPreTraining.from_pretrained(
...     "./tf_model/bert_tf_checkpoint.ckpt.index", from_tf=True, config=config
... )


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

相关文章
|
7月前
|
PyTorch TensorFlow 调度
Transformers 4.37 中文文档(十五)(5)
Transformers 4.37 中文文档(十五)
95 1
Transformers 4.37 中文文档(十五)(5)
|
7月前
|
存储 缓存 JSON
Transformers 4.37 中文文档(十三)(3)
Transformers 4.37 中文文档(十三)
301 1
|
7月前
|
存储 缓存 算法框架/工具
Transformers 4.37 中文文档(十三)(8)
Transformers 4.37 中文文档(十三)
134 1
|
7月前
|
存储 缓存 算法框架/工具
Transformers 4.37 中文文档(十三)(6)
Transformers 4.37 中文文档(十三)
82 1
|
7月前
|
存储 自然语言处理 API
Transformers 4.37 中文文档(十三)(1)
Transformers 4.37 中文文档(十三)
119 1
|
7月前
|
存储 缓存 算法框架/工具
Transformers 4.37 中文文档(十三)(7)
Transformers 4.37 中文文档(十三)
46 1
|
7月前
|
存储 缓存 算法框架/工具
Transformers 4.37 中文文档(十三)(9)
Transformers 4.37 中文文档(十三)
90 1
|
7月前
|
存储 缓存 开发工具
Transformers 4.37 中文文档(十三)(4)
Transformers 4.37 中文文档(十三)
244 1
|
7月前
|
存储 缓存 开发工具
Transformers 4.37 中文文档(十三)(2)
Transformers 4.37 中文文档(十三)
167 1
|
7月前
|
存储 JSON 缓存
Transformers 4.37 中文文档(十五)(1)
Transformers 4.37 中文文档(十五)
129 1

热门文章

最新文章