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
(str
oros.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
(str
oros.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