Transformers 4.37 中文文档(十三)(6)https://developer.aliyun.com/article/1564951
FlaxAutoModelForCausalLM
class transformers.FlaxAutoModelForCausalLM
( *args **kwargs )
这是一个通用模型类,当使用 from_pretrained() 类方法或 from_config() 类方法创建时,将实例化为库中的一个模型类(带有因果语言建模头)。
这个类不能直接使用 __init__() 实例化(会抛出错误)。
from_config
( **kwargs )
参数
config(PretrainedConfig) — 根据配置类选择要实例化的模型类:
- BartConfig 配置类: FlaxBartForCausalLM (BART 模型)
- BertConfig 配置类: FlaxBertForCausalLM (BERT 模型)
- BigBirdConfig 配置类: FlaxBigBirdForCausalLM (BigBird 模型)
- BloomConfig 配置类: FlaxBloomForCausalLM (BLOOM 模型)
- ElectraConfig 配置类: FlaxElectraForCausalLM (ELECTRA 模型)
- GPT2Config 配置类: FlaxGPT2LMHeadModel (OpenAI GPT-2 模型)
- GPTJConfig 配置类: FlaxGPTJForCausalLM (GPT-J 模型)
- GPTNeoConfig 配置类: FlaxGPTNeoForCausalLM (GPT Neo 模型)
- LlamaConfig 配置类: FlaxLlamaForCausalLM (LLaMA 模型)
- OPTConfig 配置类: FlaxOPTForCausalLM (OPT 模型)
- RobertaConfig 配置类: FlaxRobertaForCausalLM (RoBERTa 模型)
- RobertaPreLayerNormConfig 配置类: FlaxRobertaPreLayerNormForCausalLM (RoBERTa-PreLayerNorm 模型)
- XGLMConfig 配置类: FlaxXGLMForCausalLM (XGLM 模型)
- XLMRobertaConfig 配置类: FlaxXLMRobertaForCausalLM (XLM-RoBERTa 模型)
从配置中实例化库中的一个模型类(带有因果语言建模头)。
注意:从配置文件加载模型不会加载模型权重。它只影响模型的配置。使用 from_pretrained() 来加载模型权重。
示例:
>>> from transformers import AutoConfig, FlaxAutoModelForCausalLM >>> # Download configuration from huggingface.co and cache. >>> config = AutoConfig.from_pretrained("bert-base-cased") >>> model = FlaxAutoModelForCausalLM.from_config(config)
from_pretrained
( *model_args **kwargs )
参数
pretrained_model_name_or_path(stroros.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(额外的位置参数,optional) — 将传递给底层模型__init__()方法。config(PretrainedConfig, optional) — 用于模型的配置,而不是自动加载的配置。当以下情况时,配置可以自动加载:
- 该模型是库提供的模型(使用预训练模型的模型 ID字符串加载)。
- 模型是使用 save_pretrained() 保存的,并通过提供保存目录重新加载。
- 通过提供本地目录作为
pretrained_model_name_or_path并在目录中找到名为 config.json 的配置 JSON 文件来加载模型。
cache_dir(stroros.PathLike, optional) — 下载的预训练模型配置应该缓存在其中的目录路径,如果不应使用标准缓存。from_pt(bool, optional, defaults toFalse) — 从 PyTorch 检查点保存文件加载模型权重(请参阅pretrained_model_name_or_path参数的文档字符串)。force_download(bool, optional, defaults toFalse) — 是否强制(重新)下载模型权重和配置文件,覆盖缓存版本(如果存在)。resume_download(bool, optional, defaults toFalse) — 是否删除接收不完整的文件。如果存在这样的文件,将尝试恢复下载。proxies(Dict[str, str], optional) — 一个代理服务器字典,按协议或端点使用,例如,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}。代理服务器在每个请求上使用。output_loading_info(bool,optional, defaults toFalse) — 是否返回一个包含缺失键、意外键和错误消息的字典。local_files_only(bool,optional, defaults toFalse) — 是否只查看本地文件(例如,不尝试下载模型)。revision(str, optional, defaults to"main") — 要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID,因为我们在 huggingface.co 上使用基于 git 的系统来存储模型和其他工件,所以revision可以是 git 允许的任何标识符。trust_remote_code(bool,可选,默认为False) — 是否允许在 Hub 上定义自定义模型的建模文件。此选项应仅对您信任的存储库设置为True,并且您已阅读了代码,因为它将在本地机器上执行 Hub 上存在的代码。code_revision(str,可选,默认为"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上使用模式匹配来回退:
bart— FlaxBartForCausalLM(BART 模型)bert— FlaxBertForCausalLM(BERT 模型)big_bird— FlaxBigBirdForCausalLM(BigBird 模型)bloom— FlaxBloomForCausalLM(BLOOM 模型)electra— FlaxElectraForCausalLM(ELECTRA 模型)gpt-sw3— FlaxGPT2LMHeadModel(GPT-Sw3 模型)gpt2— FlaxGPT2LMHeadModel(OpenAI GPT-2 模型)gpt_neo— FlaxGPTNeoForCausalLM(GPT Neo 模型)gptj— FlaxGPTJForCausalLM(GPT-J 模型)llama— FlaxLlamaForCausalLM(LLaMA 模型)opt— FlaxOPTForCausalLM(OPT 模型)roberta— FlaxRobertaForCausalLM(RoBERTa 模型)roberta-prelayernorm— FlaxRobertaPreLayerNormForCausalLM(RoBERTa-PreLayerNorm 模型)xglm— FlaxXGLMForCausalLM(XGLM 模型)xlm-roberta— FlaxXLMRobertaForCausalLM(XLM-RoBERTa 模型)
示例:
>>> from transformers import AutoConfig, FlaxAutoModelForCausalLM >>> # Download model and configuration from huggingface.co and cache. >>> model = FlaxAutoModelForCausalLM.from_pretrained("bert-base-cased") >>> # Update configuration during loading >>> model = FlaxAutoModelForCausalLM.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 = FlaxAutoModelForCausalLM.from_pretrained( ... "./pt_model/bert_pytorch_model.bin", from_pt=True, config=config ... )
AutoModelForMaskedLM
class transformers.AutoModelForMaskedLM
( *args **kwargs )
这是一个通用的模型类,当使用 from_pretrained() 类方法或 from_config() 类方法创建时,将被实例化为库中的一个模型类(带有一个掩码语言建模头)。
这个类不能直接使用 __init__() 实例化(会抛出错误)。
from_config
( **kwargs )
参数
config(PretrainedConfig) — 根据配置类选择要实例化的模型类:
- AlbertConfig 配置类:AlbertForMaskedLM(ALBERT 模型)
- BartConfig 配置类:BartForConditionalGeneration(BART 模型)
- BertConfig 配置类:BertForMaskedLM(BERT 模型)
- BigBirdConfig 配置类:BigBirdForMaskedLM(BigBird 模型)
- CamembertConfig 配置类:CamembertForMaskedLM(CamemBERT 模型)
- ConvBertConfig 配置类:ConvBertForMaskedLM(ConvBERT 模型)
- Data2VecTextConfig 配置类:Data2VecTextForMaskedLM(Data2VecText 模型)
- DebertaConfig 配置类:DebertaForMaskedLM(DeBERTa 模型)
- DebertaV2Config 配置类:DebertaV2ForMaskedLM(DeBERTa-v2 模型)
- DistilBertConfig 配置类:DistilBertForMaskedLM(DistilBERT 模型)
- ElectraConfig 配置类:ElectraForMaskedLM(ELECTRA 模型)
- ErnieConfig 配置类: ErnieForMaskedLM (ERNIE 模型)
- EsmConfig 配置类: EsmForMaskedLM (ESM 模型)
- FNetConfig 配置类: FNetForMaskedLM (FNet 模型)
- FlaubertConfig 配置类: FlaubertWithLMHeadModel (FlauBERT 模型)
- FunnelConfig 配置类: FunnelForMaskedLM (Funnel Transformer 模型)
- IBertConfig 配置类: IBertForMaskedLM (I-BERT 模型)
- LayoutLMConfig 配置类: LayoutLMForMaskedLM (LayoutLM 模型)
- LongformerConfig 配置类: LongformerForMaskedLM (Longformer 模型)
- LukeConfig 配置类: LukeForMaskedLM (LUKE 模型)
- MBartConfig 配置类: MBartForConditionalGeneration (mBART 模型)
- MPNetConfig 配置类: MPNetForMaskedLM (MPNet 模型)
- MegaConfig 配置类: MegaForMaskedLM (MEGA 模型)
- MegatronBertConfig 配置类: MegatronBertForMaskedLM (Megatron-BERT 模型)
- MobileBertConfig 配置类: MobileBertForMaskedLM (MobileBERT 模型)
- MraConfig 配置类: MraForMaskedLM (MRA 模型)
- MvpConfig 配置类: MvpForConditionalGeneration (MVP 模型)
- NezhaConfig 配置类: NezhaForMaskedLM (Nezha 模型)
- NystromformerConfig 配置类: NystromformerForMaskedLM (Nyströmformer 模型)
- PerceiverConfig 配置类: PerceiverForMaskedLM (Perceiver 模型)
- QDQBertConfig 配置类: QDQBertForMaskedLM (QDQBert 模型)
- ReformerConfig 配置类: ReformerForMaskedLM (Reformer 模型)
- RemBertConfig 配置类: RemBertForMaskedLM (RemBERT 模型)
- RoCBertConfig 配置类: RoCBertForMaskedLM (RoCBert 模型)
- RoFormerConfig 配置类: RoFormerForMaskedLM (RoFormer 模型)
- RobertaConfig 配置类: RobertaForMaskedLM (RoBERTa 模型)
- RobertaPreLayerNormConfig 配置类: RobertaPreLayerNormForMaskedLM (RoBERTa-PreLayerNorm 模型)
- SqueezeBertConfig 配置类: SqueezeBertForMaskedLM (SqueezeBERT 模型)
- TapasConfig 配置类: TapasForMaskedLM (TAPAS 模型)
- Wav2Vec2Config 配置类:
Wav2Vec2ForMaskedLM(Wav2Vec2 模型) - XLMConfig 配置类: XLMWithLMHeadModel (XLM 模型)
- XLMRobertaConfig 配置类: XLMRobertaForMaskedLM (XLM-RoBERTa 模型)
- XLMRobertaXLConfig 配置类: XLMRobertaXLForMaskedLM (XLM-RoBERTa-XL 模型)
- XmodConfig 配置类: XmodForMaskedLM (X-MOD 模型)
- YosoConfig 配置类:YosoForMaskedLM(YOSO 模型)
从配置实例化库中的一个模型类(带有掩码语言建模头)。
注意:从配置文件加载模型不会加载模型权重。它只影响模型的配置。使用 from_pretrained()加载模型权重。
示例:
>>> from transformers import AutoConfig, AutoModelForMaskedLM >>> # Download configuration from huggingface.co and cache. >>> config = AutoConfig.from_pretrained("bert-base-cased") >>> model = AutoModelForMaskedLM.from_config(config)
from_pretrained
( *model_args **kwargs )
参数
pretrained_model_name_or_path(str或os.PathLike) — 可以是:
- 一个字符串,预训练模型的模型 ID,托管在 huggingface.co 上的模型存储库中。有效的模型 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_dict(Dict[str, torch.Tensor],可选) — 一个状态字典,用于替代从保存的权重文件加载的状态字典。
如果要从预训练配置创建模型但加载自己的权重,则可以使用此选项。但在这种情况下,您应该检查是否使用 save_pretrained()和 from_pretrained()不是更简单的选项。cache_dir(str或os.PathLike, 可选) — 下载预训练模型配置应该缓存在其中的目录路径,如果不应使用标准缓存。from_tf(bool, 可选, 默认为False) — 从 TensorFlow 检查点保存文件加载模型权重(请参阅pretrained_model_name_or_path参数的文档字符串)。force_download(bool, 可选, 默认为False) — 是否强制(重新)下载模型权重和配置文件,覆盖缓存版本(如果存在)。resume_download(bool, 可选, 默认为False) — 是否删除接收不完整的文件。如果存在这样的文件,将尝试恢复下载。proxies(Dict[str, str], optional) — 一个代理服务器字典,按协议或端点使用,例如,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}。代理在每个请求中使用。output_loading_info(bool,optional, defaults toFalse) — 是否还返回包含缺少键、意外键和错误消息的字典。local_files_only(bool,optional, defaults toFalse) — 是否仅查看本地文件(例如,不尝试下载模型)。revision(str, optional, defaults to"main") — 要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID,因为我们在 huggingface.co 上使用基于 git 的系统来存储模型和其他工件,所以revision可以是 git 允许的任何标识符。trust_remote_code(bool, optional, defaults toFalse) — 是否允许在 Hub 上定义自定义模型的建模文件。此选项应仅对您信任的存储库设置为True,并且您已阅读了代码,因为它将在本地计算机上执行 Hub 上存在的代码。code_revision(str, optional, defaults to"main") — 代码在 Hub 上使用的特定修订版本,如果代码存储在与模型其余部分不同的存储库中。它可以是分支名称、标签名称或提交 ID,因为我们在 huggingface.co 上使用基于 git 的系统来存储模型和其他工件,所以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— AlbertForMaskedLM(ALBERT 模型)bart— BartForConditionalGeneration(BART 模型)bert— BertForMaskedLM(BERT 模型)big_bird— BigBirdForMaskedLM(BigBird 模型)camembert— CamembertForMaskedLM(CamemBERT 模型)convbert— ConvBertForMaskedLM(ConvBERT 模型)data2vec-text— Data2VecTextForMaskedLM(Data2VecText 模型)deberta— DebertaForMaskedLM(DeBERTa 模型)deberta-v2— DebertaV2ForMaskedLM (DeBERTa-v2 模型)distilbert— DistilBertForMaskedLM (DistilBERT 模型)electra— ElectraForMaskedLM (ELECTRA 模型)ernie— ErnieForMaskedLM (ERNIE 模型)esm— EsmForMaskedLM (ESM 模型)flaubert— FlaubertWithLMHeadModel (FlauBERT 模型)fnet— FNetForMaskedLM (FNet 模型)funnel— FunnelForMaskedLM (Funnel Transformer 模型)ibert— IBertForMaskedLM (I-BERT 模型)layoutlm— LayoutLMForMaskedLM (LayoutLM 模型)longformer— LongformerForMaskedLM (Longformer 模型)luke— LukeForMaskedLM (LUKE 模型)mbart— MBartForConditionalGeneration (mBART 模型)mega— MegaForMaskedLM (MEGA 模型)megatron-bert— MegatronBertForMaskedLM (Megatron-BERT 模型)mobilebert— MobileBertForMaskedLM (MobileBERT 模型)mpnet— MPNetForMaskedLM (MPNet 模型)mra— MraForMaskedLM (MRA 模型)mvp— MvpForConditionalGeneration (MVP 模型)nezha— NezhaForMaskedLM (Nezha 模型)nystromformer— NystromformerForMaskedLM (Nyströmformer 模型)perceiver— PerceiverForMaskedLM (Perceiver 模型)qdqbert— QDQBertForMaskedLM (QDQBert 模型)reformer— ReformerForMaskedLM (Reformer 模型)rembert— RemBertForMaskedLM (RemBERT 模型)roberta— RobertaForMaskedLM (RoBERTa 模型)roberta-prelayernorm— RobertaPreLayerNormForMaskedLM (RoBERTa-PreLayerNorm 模型)roc_bert— RoCBertForMaskedLM (RoCBert 模型)roformer— RoFormerForMaskedLM (RoFormer 模型)squeezebert— SqueezeBertForMaskedLM(SqueezeBERT 模型)tapas— TapasForMaskedLM(TAPAS 模型)wav2vec2—Wav2Vec2ForMaskedLM(Wav2Vec2 模型)xlm— XLMWithLMHeadModel(XLM 模型)xlm-roberta— XLMRobertaForMaskedLM(XLM-RoBERTa 模型)xlm-roberta-xl— XLMRobertaXLForMaskedLM(XLM-RoBERTa-XL 模型)xmod— XmodForMaskedLM(X-MOD 模型)yoso— YosoForMaskedLM(YOSO 模型)
默认情况下,使用 model.eval() 将模型设置为评估模式(例如,关闭了 dropout 模块)。要训练模型,应该首先使用 model.train() 将其设置回训练模式。
示例:
>>> from transformers import AutoConfig, AutoModelForMaskedLM >>> # Download model and configuration from huggingface.co and cache. >>> model = AutoModelForMaskedLM.from_pretrained("bert-base-cased") >>> # Update configuration during loading >>> model = AutoModelForMaskedLM.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 = AutoModelForMaskedLM.from_pretrained( ... "./tf_model/bert_tf_checkpoint.ckpt.index", from_tf=True, config=config ... )
TFAutoModelForMaskedLM
class transformers.TFAutoModelForMaskedLM
( *args **kwargs )
这是一个通用的模型类,在使用 from_pretrained() 类方法或 from_config() 类方法创建时,将作为库中的模型类之一实例化(带有掩码语言建模头)。
这个类不能直接使用 __init__() 实例化(会报错)。
from_config
( **kwargs )
参数
config(PretrainedConfig) — 根据配置类选择要实例化的模型类:
- AlbertConfig 配置类:TFAlbertForMaskedLM(ALBERT 模型)
- BertConfig 配置类:TFBertForMaskedLM(BERT 模型)
- CamembertConfig 配置类:TFCamembertForMaskedLM(CamemBERT 模型)
- ConvBertConfig 配置类:TFConvBertForMaskedLM(ConvBERT 模型)
- DebertaConfig 配置类:TFDebertaForMaskedLM(DeBERTa 模型)
- DebertaV2Config 配置类:TFDebertaV2ForMaskedLM(DeBERTa-v2 模型)
- DistilBertConfig 配置类:TFDistilBertForMaskedLM(DistilBERT 模型)
- ElectraConfig 配置类: TFElectraForMaskedLM (ELECTRA 模型)
- EsmConfig 配置类: TFEsmForMaskedLM (ESM 模型)
- FlaubertConfig 配置类: TFFlaubertWithLMHeadModel (FlauBERT 模型)
- FunnelConfig 配置类: TFFunnelForMaskedLM (Funnel Transformer 模型)
- LayoutLMConfig 配置类: TFLayoutLMForMaskedLM (LayoutLM 模型)
- LongformerConfig 配置类: TFLongformerForMaskedLM (Longformer 模型)
- MPNetConfig 配置类: TFMPNetForMaskedLM (MPNet 模型)
- MobileBertConfig 配置类: TFMobileBertForMaskedLM (MobileBERT 模型)
- RemBertConfig 配置类: TFRemBertForMaskedLM (RemBERT 模型)
- RoFormerConfig 配置类: TFRoFormerForMaskedLM (RoFormer 模型)
- RobertaConfig 配置类: TFRobertaForMaskedLM (RoBERTa 模型)
- RobertaPreLayerNormConfig 配置类: TFRobertaPreLayerNormForMaskedLM (RoBERTa-PreLayerNorm 模型)
- TapasConfig 配置类: TFTapasForMaskedLM (TAPAS 模型)
- XLMConfig 配置类: TFXLMWithLMHeadModel (XLM 模型)
- XLMRobertaConfig 配置类: TFXLMRobertaForMaskedLM (XLM-RoBERTa 模型)
从配置实例化库中的一个模型类(带有掩码语言建模头)。
注意:从配置文件加载模型不会加载模型权重。它只影响模型的配置。使用 from_pretrained() 来加载模型权重。
示例:
>>> from transformers import AutoConfig, TFAutoModelForMaskedLM >>> # Download configuration from huggingface.co and cache. >>> config = AutoConfig.from_pretrained("bert-base-cased") >>> model = TFAutoModelForMaskedLM.from_config(config)
from_pretrained
( *model_args **kwargs )
参数
pretrained_model_name_or_path(str或os.PathLike) — 可以是:
- 预训练模型的 model 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,可选) — 用于模型的配置,而不是自动加载的配置。当:
- 该模型是库提供的模型(使用预训练模型的 model id 字符串加载)。
- 该模型是使用 save_pretrained() 保存的,并通过提供保存目录重新加载。
- 通过提供本地目录作为
pretrained_model_name_or_path并在该目录中找到名为 config.json 的配置 JSON 文件来加载模型。
cache_dir(str或os.PathLike,可选) — 如果不使用标准缓存,则应将下载的预训练模型配置缓存在其中的目录路径。from_pt(bool,可选,默认为False) — 从 PyTorch 检查点保存文件加载模型权重(参见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,因为我们在 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— TFAlbertForMaskedLM (ALBERT 模型)bert— TFBertForMaskedLM (BERT 模型)camembert— TFCamembertForMaskedLM (CamemBERT 模型)convbert— TFConvBertForMaskedLM (ConvBERT 模型)deberta— TFDebertaForMaskedLM (DeBERTa 模型)deberta-v2— TFDebertaV2ForMaskedLM (DeBERTa-v2 模型)distilbert— TFDistilBertForMaskedLM (DistilBERT 模型)electra— TFElectraForMaskedLM (ELECTRA 模型)esm— TFEsmForMaskedLM (ESM 模型)flaubert— TFFlaubertWithLMHeadModel (FlauBERT 模型)funnel— TFFunnelForMaskedLM (Funnel Transformer 模型)layoutlm— TFLayoutLMForMaskedLM (LayoutLM 模型)longformer— TFLongformerForMaskedLM (Longformer 模型)mobilebert— TFMobileBertForMaskedLM (MobileBERT 模型)mpnet— TFMPNetForMaskedLM (MPNet 模型)rembert— TFRemBertForMaskedLM (RemBERT 模型)roberta— TFRobertaForMaskedLM (RoBERTa 模型)roberta-prelayernorm— TFRobertaPreLayerNormForMaskedLM (RoBERTa-PreLayerNorm 模型)roformer— TFRoFormerForMaskedLM (RoFormer 模型)tapas— TFTapasForMaskedLM (TAPAS 模型)xlm— TFXLMWithLMHeadModel (XLM 模型)xlm-roberta— TFXLMRobertaForMaskedLM (XLM-RoBERTa 模型)
示例:
>>> from transformers import AutoConfig, TFAutoModelForMaskedLM >>> # Download model and configuration from huggingface.co and cache. >>> model = TFAutoModelForMaskedLM.from_pretrained("bert-base-cased") >>> # Update configuration during loading >>> model = TFAutoModelForMaskedLM.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 = TFAutoModelForMaskedLM.from_pretrained( ... "./pt_model/bert_pytorch_model.bin", from_pt=True, config=config ... )
FlaxAutoModelForMaskedLM
class transformers.FlaxAutoModelForMaskedLM
( *args **kwargs )
这是一个通用的模型类,当使用 from_pretrained() 类方法或 from_config() 类方法创建时,将被实例化为库中的模型类之一(带有遮蔽语言建模头)。
这个类不能直接使用 __init__() 实例化(会抛出错误)。
from_config
( **kwargs )
参数
config(PretrainedConfig) — 根据配置类选择要实例化的模型类:
- AlbertConfig 配置类: FlaxAlbertForMaskedLM (ALBERT 模型)
- BartConfig 配置类: FlaxBartForConditionalGeneration (BART 模型)
- BertConfig 配置类: FlaxBertForMaskedLM (BERT 模型)
- BigBirdConfig 配置类: FlaxBigBirdForMaskedLM (BigBird 模型)
- DistilBertConfig 配置类: FlaxDistilBertForMaskedLM (DistilBERT 模型)
- ElectraConfig 配置类: FlaxElectraForMaskedLM (ELECTRA 模型)
- MBartConfig 配置类:FlaxMBartForConditionalGeneration(mBART 模型)
- RoFormerConfig 配置类:FlaxRoFormerForMaskedLM(RoFormer 模型)
- RobertaConfig 配置类:FlaxRobertaForMaskedLM(RoBERTa 模型)
- RobertaPreLayerNormConfig 配置类:FlaxRobertaPreLayerNormForMaskedLM(RoBERTa-PreLayerNorm 模型)
- XLMRobertaConfig 配置类:FlaxXLMRobertaForMaskedLM(XLM-RoBERTa 模型)
从配置实例化库中的一个模型类(带有掩码语言建模头)。
注意:从配置文件加载模型不会加载模型权重。它只影响模型的配置。使用 from_pretrained()加载模型权重。
示例:
>>> from transformers import AutoConfig, FlaxAutoModelForMaskedLM >>> # Download configuration from huggingface.co and cache. >>> config = AutoConfig.from_pretrained("bert-base-cased") >>> model = FlaxAutoModelForMaskedLM.from_config(config)
from_pretrained
( *model_args **kwargs )
参数
pretrained_model_name_or_path(str或os.PathLike)— 可以是:
- 一个字符串,托管在 huggingface.co 模型存储库中的预训练模型的模型 id。有效的模型 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或os.PathLike,可选)— 预下载的模型配置应缓存在其中的目录路径,如果不使用标准缓存。from_pt(bool,可选,默认为False)— 从 PyTorch 检查点保存文件加载模型权重(参见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,因为我们在 huggingface.co 上使用基于 git 的系统来存储模型和其他工件,所以revision可以是 git 允许的任何标识符。trust_remote_code(bool,可选,默认为False) — 是否允许在 Hub 上定义自定义模型的代码文件。此选项应仅对您信任的存储库设置为True,并且您已阅读代码,因为它将在本地机器上执行 Hub 上存在的代码。code_revision(str,可选,默认为"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— FlaxAlbertForMaskedLM(ALBERT 模型)bart— FlaxBartForConditionalGeneration(BART 模型)bert— FlaxBertForMaskedLM(BERT 模型)big_bird— FlaxBigBirdForMaskedLM(BigBird 模型)distilbert— FlaxDistilBertForMaskedLM(DistilBERT 模型)electra- FlaxElectraForMaskedLM(ELECTRA 模型)mbart- FlaxMBartForConditionalGeneration(mBART 模型)roberta- FlaxRobertaForMaskedLM(RoBERTa 模型)roberta-prelayernorm- FlaxRobertaPreLayerNormForMaskedLM(RoBERTa-PreLayerNorm 模型)roformer- FlaxRoFormerForMaskedLM(RoFormer 模型)xlm-roberta- FlaxXLMRobertaForMaskedLM(XLM-RoBERTa 模型)
示例:
>>> from transformers import AutoConfig, FlaxAutoModelForMaskedLM >>> # Download model and configuration from huggingface.co and cache. >>> model = FlaxAutoModelForMaskedLM.from_pretrained("bert-base-cased") >>> # Update configuration during loading >>> model = FlaxAutoModelForMaskedLM.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 = FlaxAutoModelForMaskedLM.from_pretrained( ... "./pt_model/bert_pytorch_model.bin", from_pt=True, config=config ... )
Transformers 4.37 中文文档(十三)(8)https://developer.aliyun.com/article/1564953