Transformers 4.37 中文文档(十三)(3)https://developer.aliyun.com/article/1564948
AutoProcessor
class transformers.AutoProcessor
( )
这是一个通用的处理器类,在使用 AutoProcessor.from_pretrained()类方法创建时,将作为库的处理器类之一实例化。
这个类不能直接使用__init__()实例化(会抛出错误)。
from_pretrained
( pretrained_model_name_or_path **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/。
cache_dir(str或os.PathLike,可选) — 下载的预训练模型特征提取器应该缓存在其中的目录路径,如果不应使用标准缓存。force_download(bool,可选,默认为False) — 是否强制(重新)下载特征提取器文件并覆盖缓存版本(如果存在)。resume_download(bool,可选,默认为False) — 是否删除接收不完整的文件。如果存在这样的文件,则尝试恢复下载。proxies(Dict[str, str],可选) — 一个代理服务器字典,按协议或端点使用,例如,{'http': 'foo.bar:3128','http://hostname': 'foo.bar:4012'}。代理在每个请求上使用。token(str或bool,可选) — 用作远程文件的 HTTP bearer 授权的令牌。如果为True,将使用运行huggingface-cli login时生成的令牌(存储在~/.huggingface)。revision(str,可选,默认为"main") — 要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID,因为我们在 huggingface.co 上使用基于 git 的系统来存储模型和其他工件,所以revision可以是 git 允许的任何标识符。return_unused_kwargs(bool,可选,默认为False) — 如果为False,则此函数仅返回最终特征提取器对象。如果为True,则此函数返回一个Tuple(feature_extractor, unused_kwargs),其中unused_kwargs是一个字典,包含未使用的键/值对,这些键不是特征提取器属性:即kwargs的一部分,未用于更新feature_extractor且被忽略。trust_remote_code(bool,可选,默认为False) — 是否允许在 Hub 上定义自定义模型的代码。此选项应仅对您信任的存储库设置为True,并且您已阅读代码,因为它将在本地计算机上执行 Hub 上存在的代码。kwargs(Dict[str, Any],可选) — 任何键为特征提取器属性的 kwargs 中的值将用于覆盖加载的值。关于键/值对中键不是特征提取器属性的行为由return_unused_kwargs关键字参数控制。
从预训练模型词汇表中实例化库中的处理器类之一。
要实例化的处理器类是根据配置对象的model_type属性选择的(如果可能,作为参数传递或从pretrained_model_name_or_path加载):
align— AlignProcessor(ALIGN 模型)altclip— AltCLIPProcessor(AltCLIP 模型)bark— BarkProcessor(Bark 模型)blip— BlipProcessor(BLIP 模型)blip-2— Blip2Processor(BLIP-2 模型)bridgetower— BridgeTowerProcessor(BridgeTower 模型)chinese_clip— ChineseCLIPProcessor(Chinese-CLIP 模型)clap— ClapProcessor (CLAP 模型)clip— CLIPProcessor (CLIP 模型)clipseg— CLIPSegProcessor (CLIPSeg 模型)clvp— ClvpProcessor (CLVP 模型)flava— FlavaProcessor (FLAVA 模型)fuyu— FuyuProcessor (Fuyu 模型)git— GitProcessor (GIT 模型)groupvit— CLIPProcessor (GroupViT 模型)hubert— Wav2Vec2Processor (Hubert 模型)idefics— IdeficsProcessor (IDEFICS 模型)instructblip— InstructBlipProcessor (InstructBLIP 模型)kosmos-2— Kosmos2Processor (KOSMOS-2 模型)layoutlmv2— LayoutLMv2Processor (LayoutLMv2 模型)layoutlmv3— LayoutLMv3Processor (LayoutLMv3 模型)llava— LlavaProcessor (LLaVa 模型)markuplm— MarkupLMProcessor (MarkupLM 模型)mctct— MCTCTProcessor (M-CTC-T 模型)mgp-str— MgpstrProcessor (MGP-STR 模型)oneformer— OneFormerProcessor (OneFormer 模型)owlv2— Owlv2Processor (OWLv2 模型)owlvit— OwlViTProcessor (OWL-ViT 模型)pix2struct— Pix2StructProcessor (Pix2Struct 模型)pop2piano— Pop2PianoProcessor (Pop2Piano 模型)sam— SamProcessor (SAM 模型)seamless_m4t— SeamlessM4TProcessor (SeamlessM4T 模型)sew— Wav2Vec2Processor (SEW 模型)sew-d— Wav2Vec2Processor (SEW-D 模型)siglip— SiglipProcessor (SigLIP 模型)speech_to_text— Speech2TextProcessor (Speech2Text 模型)speech_to_text_2— Speech2Text2Processor (Speech2Text2 模型)speecht5— SpeechT5Processor (SpeechT5 模型)trocr— TrOCRProcessor(TrOCR 模型)tvlt— TvltProcessor(TVLT 模型)tvp— TvpProcessor(TVP 模型)unispeech— Wav2Vec2Processor(UniSpeech 模型)unispeech-sat— Wav2Vec2Processor(UniSpeechSat 模型)vilt— ViltProcessor(ViLT 模型)vipllava— LlavaProcessor(VipLlava 模型)vision-text-dual-encoder— VisionTextDualEncoderProcessor(VisionTextDualEncoder 模型)wav2vec2— Wav2Vec2Processor(Wav2Vec2 模型)wav2vec2-bert— Wav2Vec2Processor(Wav2Vec2-BERT 模型)wav2vec2-conformer— Wav2Vec2Processor(Wav2Vec2-Conformer 模型)wavlm— Wav2Vec2Processor(WavLM 模型)whisper— WhisperProcessor(Whisper 模型)xclip— XCLIPProcessor(X-CLIP 模型)
当您想使用私有模型时,需要传递token=True。
示例:
>>> from transformers import AutoProcessor >>> # Download processor from huggingface.co and cache. >>> processor = AutoProcessor.from_pretrained("facebook/wav2vec2-base-960h") >>> # If processor files are in a directory (e.g. processor was saved using *save_pretrained('./test/saved_model/')*) >>> # processor = AutoProcessor.from_pretrained("./test/saved_model/")
register
( config_class processor_class exist_ok = False )
参数
config_class(PretrainedConfig) — 与要注册的模型对应的配置。processor_class(FeatureExtractorMixin) — 要注册的处理器。
为这个类注册一个新的处理器。
通用模型类
以下自动类可用于实例化一个基本模型类,而无需特定头部。
AutoModel
class transformers.AutoModel
( *args **kwargs )
这是一个通用模型类,当使用 class method 或 class method 创建时,将作为库的基本模型类之一实例化。
这个类不能直接使用__init__()实例化(会抛出错误)。
from_config
( **kwargs )
参数
config(PretrainedConfig) — 选择要实例化的模型类基于配置类:
- ASTConfig 配置类:ASTModel(音频频谱变换器模型)
- AlbertConfig 配置类:AlbertModel(ALBERT 模型)
- AlignConfig 配置类: AlignModel (ALIGN 模型)
- AltCLIPConfig 配置类: AltCLIPModel (AltCLIP 模型)
- AutoformerConfig 配置类: AutoformerModel (Autoformer 模型)
- BarkConfig 配置类: BarkModel (Bark 模型)
- BartConfig 配置类: BartModel (BART 模型)
- BeitConfig 配置类: BeitModel (BEiT 模型)
- BertConfig 配置类: BertModel (BERT 模型)
- BertGenerationConfig 配置类: BertGenerationEncoder (Bert Generation 模型)
- BigBirdConfig 配置类: BigBirdModel (BigBird 模型)
- BigBirdPegasusConfig 配置类: BigBirdPegasusModel (BigBird-Pegasus 模型)
- BioGptConfig 配置类: BioGptModel (BioGpt 模型)
- BitConfig 配置类: BitModel (BiT 模型)
- BlenderbotConfig 配置类: BlenderbotModel (Blenderbot 模型)
- BlenderbotSmallConfig 配置类: BlenderbotSmallModel (BlenderbotSmall 模型)
- Blip2Config 配置类: Blip2Model (BLIP-2 模型)
- BlipConfig 配置类: BlipModel (BLIP 模型)
- BloomConfig 配置类: BloomModel (BLOOM 模型)
- BridgeTowerConfig 配置类: BridgeTowerModel (BridgeTower 模型)
- BrosConfig 配置类: BrosModel (BROS 模型)
- CLIPConfig 配置类: CLIPModel (CLIP 模型)
- CLIPSegConfig 配置类: CLIPSegModel (CLIPSeg 模型)
- CLIPVisionConfig 配置类: CLIPVisionModel (CLIPVisionModel 模型)
- CTRLConfig 配置类: CTRLModel (CTRL 模型)
- CamembertConfig 配置类: CamembertModel (CamemBERT 模型)
- CanineConfig 配置类: CanineModel (CANINE 模型)
- ChineseCLIPConfig 配置类: ChineseCLIPModel (Chinese-CLIP 模型)
- ClapConfig 配置类: ClapModel (CLAP 模型)
- ClvpConfig 配置类: ClvpModelForConditionalGeneration (CLVP 模型)
- CodeGenConfig 配置类: CodeGenModel (CodeGen 模型)
- ConditionalDetrConfig 配置类: ConditionalDetrModel (Conditional DETR 模型)
- ConvBertConfig 配置类: ConvBertModel (ConvBERT 模型)
- ConvNextConfig 配置类: ConvNextModel (ConvNeXT 模型)
- ConvNextV2Config 配置类: ConvNextV2Model (ConvNeXTV2 模型)
- CpmAntConfig 配置类: CpmAntModel (CPM-Ant 模型)
- CvtConfig 配置类: CvtModel (CvT 模型)
- DPRConfig 配置类: DPRQuestionEncoder (DPR 模型)
- DPTConfig 配置类: DPTModel (DPT 模型)
- Data2VecAudioConfig 配置类: Data2VecAudioModel (Data2VecAudio 模型)
- Data2VecTextConfig 配置类: Data2VecTextModel (Data2VecText 模型)
- Data2VecVisionConfig 配置类: Data2VecVisionModel (Data2VecVision 模型)
- DebertaConfig 配置类: DebertaModel (DeBERTa 模型)
- DebertaV2Config 配置类: DebertaV2Model (DeBERTa-v2 模型)
- DecisionTransformerConfig 配置类: DecisionTransformerModel (Decision Transformer 模型)
- DeformableDetrConfig 配置类: DeformableDetrModel (Deformable DETR 模型)
- DeiTConfig 配置类: DeiTModel (DeiT 模型)
- DetaConfig 配置类: DetaModel (DETA 模型)
- DetrConfig 配置类: DetrModel (DETR 模型)
- DinatConfig 配置类: DinatModel (DiNAT 模型)
- Dinov2Config 配置类: Dinov2Model (DINOv2 模型)
- DistilBertConfig 配置类: DistilBertModel (DistilBERT 模型)
- DonutSwinConfig 配置类: DonutSwinModel (DonutSwin 模型)
- EfficientFormerConfig 配置类: EfficientFormerModel (EfficientFormer 模型)
- EfficientNetConfig 配置类: EfficientNetModel (EfficientNet 模型)
- ElectraConfig 配置类: ElectraModel (ELECTRA 模型)
- EncodecConfig 配置类: EncodecModel (EnCodec 模型)
- ErnieConfig 配置类: ErnieModel (ERNIE 模型)
- ErnieMConfig 配置类: ErnieMModel (ErnieM 模型)
- EsmConfig 配置类: EsmModel (ESM 模型)
- FNetConfig 配置类: FNetModel (FNet 模型)
- FSMTConfig 配置类: FSMTModel (FairSeq 机器翻译模型)
- FalconConfig 配置类: FalconModel (Falcon 模型)
- FastSpeech2ConformerConfig 配置类: FastSpeech2ConformerModel (FastSpeech2Conformer 模型)
- FlaubertConfig 配置类: FlaubertModel (FlauBERT 模型)
- FlavaConfig 配置类: FlavaModel (FLAVA 模型)
- FocalNetConfig 配置类: FocalNetModel (FocalNet 模型)
- FunnelConfig 配置类: FunnelModel 或 FunnelBaseModel (Funnel Transformer 模型)
- GLPNConfig 配置类: GLPNModel (GLPN 模型)
- GPT2Config 配置类: GPT2Model (OpenAI GPT-2 模型)
- GPTBigCodeConfig 配置类: GPTBigCodeModel (GPTBigCode 模型)
- GPTJConfig 配置类: GPTJModel (GPT-J 模型)
- GPTNeoConfig 配置类: GPTNeoModel (GPT Neo 模型)
- GPTNeoXConfig 配置类: GPTNeoXModel (GPT NeoX 模型)
- GPTNeoXJapaneseConfig 配置类: GPTNeoXJapaneseModel (GPT NeoX 日语模型)
- GPTSanJapaneseConfig 配置类: GPTSanJapaneseForConditionalGeneration (GPTSAN-japanese 模型)
- GitConfig 配置类: GitModel (GIT 模型)
- GraphormerConfig 配置类: GraphormerModel (Graphormer 模型)
- GroupViTConfig 配置类: GroupViTModel (GroupViT 模型)
- HubertConfig 配置类: HubertModel (Hubert 模型)
- IBertConfig 配置类: IBertModel (I-BERT 模型)
- IdeficsConfig 配置类: IdeficsModel (IDEFICS 模型)
- ImageGPTConfig 配置类: ImageGPTModel (ImageGPT 模型)
- InformerConfig 配置类: InformerModel (Informer 模型)
- JukeboxConfig 配置类: JukeboxModel (Jukebox 模型)
- Kosmos2Config 配置类: Kosmos2Model (KOSMOS-2 模型)
- LEDConfig 配置类: LEDModel (LED 模型)
- LayoutLMConfig 配置类: LayoutLMModel (LayoutLM 模型)
- LayoutLMv2Config 配置类: LayoutLMv2Model (LayoutLMv2 模型)
- LayoutLMv3Config 配置类: LayoutLMv3Model (LayoutLMv3 模型)
- LevitConfig 配置类: LevitModel (LeViT 模型)
- LiltConfig 配置类: LiltModel (LiLT 模型)
- LlamaConfig 配置类: LlamaModel (LLaMA 模型)
- LongT5Config 配置类: LongT5Model (LongT5 模型)
- LongformerConfig 配置类: LongformerModel (Longformer 模型)
- LukeConfig 配置类: LukeModel (LUKE 模型)
- LxmertConfig 配置类: LxmertModel (LXMERT 模型)
- M2M100Config 配置类: M2M100Model (M2M100 模型)
- MBartConfig 配置类: MBartModel (mBART 模型)
- MCTCTConfig 配置类: MCTCTModel (M-CTC-T 模型)
- MPNetConfig 配置类: MPNetModel (MPNet 模型)
- MT5Config 配置类: MT5Model (MT5 模型)
- MarianConfig 配置类: MarianModel (Marian 模型)
- MarkupLMConfig 配置类: MarkupLMModel (MarkupLM 模型)
- Mask2FormerConfig 配置类: Mask2FormerModel (Mask2Former 模型)
- MaskFormerConfig 配置类: MaskFormerModel (MaskFormer 模型)
MaskFormerSwinConfig配置类:MaskFormerSwinModel(MaskFormerSwin 模型)- MegaConfig 配置类: MegaModel (MEGA 模型)
- MegatronBertConfig 配置类: MegatronBertModel (Megatron-BERT 模型)
- MgpstrConfig 配置类: MgpstrForSceneTextRecognition (MGP-STR 模型)
- MistralConfig 配置类: MistralModel (Mistral 模型)
- MixtralConfig 配置类: MixtralModel (Mixtral 模型)
- MobileBertConfig 配置类: MobileBertModel (MobileBERT 模型)
- MobileNetV1Config 配置类: MobileNetV1Model (MobileNetV1 模型)
- MobileNetV2Config 配置类: MobileNetV2Model (MobileNetV2 模型)
- MobileViTConfig 配置类: MobileViTModel (MobileViT 模型)
- MobileViTV2Config 配置类: MobileViTV2Model (MobileViTV2 模型)
- MptConfig 配置类: MptModel (MPT 模型)
- MraConfig 配置类: MraModel (MRA 模型)
- MvpConfig 配置类: MvpModel (MVP 模型)
- NatConfig 配置类: NatModel (NAT 模型)
- NezhaConfig 配置类: NezhaModel (Nezha 模型)
- NllbMoeConfig 配置类: NllbMoeModel (NLLB-MOE 模型)
- NystromformerConfig 配置类: NystromformerModel (Nyströmformer 模型)
- OPTConfig 配置类: OPTModel (OPT 模型)
- OneFormerConfig 配置类: OneFormerModel (OneFormer 模型)
- OpenAIGPTConfig 配置类: OpenAIGPTModel (OpenAI GPT 模型)
- OpenLlamaConfig 配置类: OpenLlamaModel (OpenLlama 模型)
- OwlViTConfig 配置类: OwlViTModel (OWL-ViT 模型)
- Owlv2Config 配置类: Owlv2Model (OWLv2 模型)
- PLBartConfig 配置类: PLBartModel (PLBart 模型)
- PatchTSMixerConfig 配置类: PatchTSMixerModel (PatchTSMixer 模型)
- PatchTSTConfig 配置类: PatchTSTModel (PatchTST 模型)
- PegasusConfig 配置类: PegasusModel (Pegasus 模型)
- PegasusXConfig 配置类: PegasusXModel (PEGASUS-X 模型)
- PerceiverConfig 配置类: PerceiverModel (Perceiver 模型)
- PersimmonConfig 配置类: PersimmonModel (Persimmon 模型)
- PhiConfig 配置类: PhiModel (Phi 模型)
- PoolFormerConfig 配置类: PoolFormerModel (PoolFormer 模型)
- ProphetNetConfig 配置类: ProphetNetModel (ProphetNet 模型)
- PvtConfig 配置类: PvtModel (PVT 模型)
- QDQBertConfig 配置类: QDQBertModel (QDQBert 模型)
- Qwen2Config 配置类: Qwen2Model (Qwen2 模型)
- ReformerConfig 配置类: ReformerModel (Reformer 模型)
- RegNetConfig 配置类: RegNetModel (RegNet 模型)
- RemBertConfig 配置类: RemBertModel (RemBERT 模型)
- ResNetConfig 配置类: ResNetModel (ResNet 模型)
- RetriBertConfig 配置类: RetriBertModel (RetriBERT 模型)
- RoCBertConfig 配置类: RoCBertModel (RoCBert 模型)
- RoFormerConfig 配置类: RoFormerModel (RoFormer 模型)
- RobertaConfig 配置类: RobertaModel (RoBERTa 模型)
- RobertaPreLayerNormConfig 配置类: RobertaPreLayerNormModel (RoBERTa-PreLayerNorm 模型)
- RwkvConfig 配置类: RwkvModel (RWKV 模型)
- SEWConfig 配置类: SEWModel (SEW 模型)
- SEWDConfig 配置类: SEWDModel (SEW-D 模型)
- SamConfig 配置类: SamModel (SAM 模型)
- SeamlessM4TConfig 配置类: SeamlessM4TModel (SeamlessM4T 模型)
- SeamlessM4Tv2Config 配置类: SeamlessM4Tv2Model (SeamlessM4Tv2 模型)
- SegformerConfig 配置类: SegformerModel (SegFormer 模型)
- SiglipConfig 配置类: SiglipModel (SigLIP 模型)
- SiglipVisionConfig 配置类: SiglipVisionModel (SiglipVisionModel 模型)
- Speech2TextConfig 配置类: Speech2TextModel (Speech2Text 模型)
- SpeechT5Config 配置类: SpeechT5Model (SpeechT5 模型)
- SplinterConfig 配置类: SplinterModel (Splinter 模型)
- SqueezeBertConfig 配置类: SqueezeBertModel (SqueezeBERT 模型)
- SwiftFormerConfig 配置类: SwiftFormerModel (SwiftFormer 模型)
- Swin2SRConfig 配置类: Swin2SRModel (Swin2SR 模型)
- SwinConfig 配置类: SwinModel (Swin Transformer 模型)
- Swinv2Config 配置类: Swinv2Model (Swin Transformer V2 模型)
- SwitchTransformersConfig 配置类: SwitchTransformersModel (SwitchTransformers 模型)
- T5Config 配置类: T5Model (T5 模型)
- TableTransformerConfig 配置类: TableTransformerModel (Table Transformer 模型)
- TapasConfig 配置类: TapasModel (TAPAS 模型)
- TimeSeriesTransformerConfig 配置类: TimeSeriesTransformerModel (Time Series Transformer 模型)
- TimesformerConfig 配置类: TimesformerModel (TimeSformer 模型)
TimmBackboneConfig配置类:TimmBackbone(TimmBackbone 模型)- TrajectoryTransformerConfig 配置类: TrajectoryTransformerModel (轨迹 Transformer 模型)
- TransfoXLConfig 配置类: TransfoXLModel (Transformer-XL 模型)
- TvltConfig 配置类: TvltModel (TVLT 模型)
- TvpConfig 配置类: TvpModel (TVP 模型)
- UMT5Config 配置类: UMT5Model (UMT5 模型)
- UniSpeechConfig 配置类: UniSpeechModel (UniSpeech 模型)
- UniSpeechSatConfig 配置类: UniSpeechSatModel (UniSpeechSat 模型)
- UnivNetConfig 配置类: UnivNetModel (UnivNet 模型)
- VanConfig 配置类: VanModel (VAN 模型)
- ViTConfig 配置类: ViTModel (ViT 模型)
- ViTHybridConfig 配置类: ViTHybridModel (ViT 混合模型)
- ViTMAEConfig 配置类: ViTMAEModel (ViTMAE 模型)
- ViTMSNConfig 配置类: ViTMSNModel (ViTMSN 模型)
- VideoMAEConfig 配置类: VideoMAEModel (VideoMAE 模型)
- ViltConfig 配置类: ViltModel (ViLT 模型)
- VisionTextDualEncoderConfig 配置类: VisionTextDualEncoderModel (VisionTextDualEncoder 模型)
- VisualBertConfig 配置类: VisualBertModel (VisualBERT 模型)
- VitDetConfig 配置类: VitDetModel (VitDet 模型)
- VitsConfig 配置类: VitsModel (VITS 模型)
- VivitConfig 配置类: VivitModel (ViViT 模型)
- Wav2Vec2BertConfig 配置类: Wav2Vec2BertModel (Wav2Vec2-BERT 模型)
- Wav2Vec2Config 配置类: Wav2Vec2Model (Wav2Vec2 模型)
- Wav2Vec2ConformerConfig 配置类: Wav2Vec2ConformerModel (Wav2Vec2-Conformer 模型)
- WavLMConfig 配置类: WavLMModel (WavLM 模型)
- WhisperConfig 配置类: WhisperModel (Whisper 模型)
- XCLIPConfig 配置类: XCLIPModel (X-CLIP 模型)
- XGLMConfig 配置类: XGLMModel (XGLM 模型)
- XLMConfig 配置类: XLMModel (XLM 模型)
- XLMProphetNetConfig 配置类: XLMProphetNetModel (XLM-ProphetNet 模型)
- XLMRobertaConfig 配置类: XLMRobertaModel (XLM-RoBERTa 模型)
- XLMRobertaXLConfig 配置类: XLMRobertaXLModel (XLM-RoBERTa-XL 模型)
- XLNetConfig 配置类: XLNetModel (XLNet 模型)
- XmodConfig 配置类: XmodModel (X-MOD 模型)
- YolosConfig 配置类: YolosModel (YOLOS 模型)
- YosoConfig 配置类: YosoModel (YOSO 模型)
从配置中实例化库的基础模型类。
注意:从配置文件加载模型不会加载模型权重。它只影响模型的配置。使用 from_pretrained()来加载模型权重。
示例:
>>> from transformers import AutoConfig, AutoModel >>> # Download configuration from huggingface.co and cache. >>> config = AutoConfig.from_pretrained("bert-base-cased") >>> model = AutoModel.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],可选)— 一个按协议或端点使用的代理服务器字典,例如,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}。代理在每个请求上使用。output_loading_info(bool,可选,默认为False) — 是否返回一个包含缺失键、意外键和错误消息的字典。local_files_only(bool,optional, defaults toFalse) — 是否仅查看本地文件(例如,不尝试下载模型)。revision(str, optional, defaults to"main") — 要使用的特定模型版本。它可以是分支名称、标签名称或提交 ID,因为我们使用基于 git 的系统在 huggingface.co 上存储模型和其他工件,所以revision可以是 git 允许的任何标识符。trust_remote_code(bool, optional, defaults toFalse) — 是否允许在 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— AlbertModel (ALBERT 模型)align— AlignModel (ALIGN 模型)altclip— AltCLIPModel (AltCLIP 模型)audio-spectrogram-transformer— ASTModel (音频频谱变换器模型)autoformer— AutoformerModel (Autoformer 模型)bark— BarkModel (Bark 模型)bart— BartModel (BART 模型)beit— BeitModel (BEiT 模型)bert— BertModel (BERT 模型)bert-generation— BertGenerationEncoder (Bert Generation 模型)big_bird— BigBirdModel (BigBird 模型)bigbird_pegasus— BigBirdPegasusModel (BigBird-Pegasus 模型)biogpt— BioGptModel (BioGpt 模型)bit— BitModel (BiT 模型)blenderbot— BlenderbotModel (Blenderbot 模型)blenderbot-small— BlenderbotSmallModel (BlenderbotSmall 模型)blip— BlipModel (BLIP 模型)blip-2— Blip2Model (BLIP-2 模型)bloom— BloomModel (BLOOM 模型)bridgetower— BridgeTowerModel (BridgeTower 模型)bros— BrosModel (BROS 模型)camembert— CamembertModel (CamemBERT 模型)canine— CanineModel (CANINE 模型)chinese_clip— ChineseCLIPModel (Chinese-CLIP 模型)clap— ClapModel (CLAP 模型)clip— CLIPModel (CLIP 模型)clip_vision_model— CLIPVisionModel (CLIPVisionModel 模型)clipseg— CLIPSegModel (CLIPSeg 模型)clvp— ClvpModelForConditionalGeneration (CLVP 模型)code_llama— LlamaModel (CodeLlama 模型)codegen— CodeGenModel (CodeGen 模型)conditional_detr— ConditionalDetrModel (Conditional DETR 模型)convbert— ConvBertModel (ConvBERT 模型)convnext— ConvNextModel (ConvNeXT 模型)convnextv2— ConvNextV2Model (ConvNeXTV2 模型)cpmant— CpmAntModel (CPM-Ant 模型)ctrl— CTRLModel (CTRL 模型)cvt— CvtModel (CvT 模型)data2vec-audio— Data2VecAudioModel (Data2VecAudio 模型)data2vec-text— Data2VecTextModel (Data2VecText 模型)data2vec-vision— Data2VecVisionModel (Data2VecVision 模型)deberta— DebertaModel (DeBERTa 模型)deberta-v2— DebertaV2Model (DeBERTa-v2 模型)decision_transformer— DecisionTransformerModel (Decision Transformer 模型)deformable_detr— DeformableDetrModel (Deformable DETR 模型)deit— DeiTModel (DeiT 模型)deta— DetaModel (DETA 模型)detr— DetrModel (DETR 模型)dinat— DinatModel (DiNAT 模型)dinov2— Dinov2Model (DINOv2 模型)distilbert— DistilBertModel (DistilBERT 模型)donut-swin— DonutSwinModel (DonutSwin 模型)dpr— DPRQuestionEncoder (DPR 模型)dpt— DPTModel (DPT 模型)efficientformer— EfficientFormerModel (EfficientFormer 模型)efficientnet— EfficientNetModel (EfficientNet 模型)electra— ElectraModel (ELECTRA 模型)encodec— EncodecModel (EnCodec 模型)ernie— ErnieModel (ERNIE 模型)ernie_m— ErnieMModel (ErnieM 模型)esm— EsmModel (ESM 模型)falcon— FalconModel (Falcon 模型)fastspeech2_conformer— FastSpeech2ConformerModel (FastSpeech2Conformer 模型)flaubert— FlaubertModel (FlauBERT 模型)flava— FlavaModel (FLAVA 模型)fnet— FNetModel (FNet 模型)focalnet— FocalNetModel (FocalNet 模型)fsmt— FSMTModel (FairSeq 机器翻译模型)funnel— FunnelModel 或 FunnelBaseModel (Funnel Transformer 模型)git— GitModel (GIT 模型)glpn— GLPNModel (GLPN 模型)gpt-sw3— GPT2Model (GPT-Sw3 模型)gpt2— GPT2Model (OpenAI GPT-2 模型)gpt_bigcode— GPTBigCodeModel (GPTBigCode 模型)gpt_neo— GPTNeoModel (GPT Neo 模型)gpt_neox— GPTNeoXModel (GPT NeoX 模型)gpt_neox_japanese— GPTNeoXJapaneseModel (GPT NeoX Japanese 模型)gptj— GPTJModel (GPT-J 模型)gptsan-japanese— GPTSanJapaneseForConditionalGeneration (GPTSAN-japanese 模型)graphormer— GraphormerModel (Graphormer 模型)groupvit— GroupViTModel (GroupViT 模型)hubert— HubertModel (Hubert 模型)ibert— IBertModel (I-BERT 模型)idefics— IdeficsModel (IDEFICS 模型)imagegpt— ImageGPTModel (ImageGPT 模型)informer— InformerModel (Informer 模型)jukebox— JukeboxModel (Jukebox 模型)kosmos-2— Kosmos2Model (KOSMOS-2 模型)layoutlm— LayoutLMModel (LayoutLM 模型)layoutlmv2— LayoutLMv2Model (LayoutLMv2 模型)layoutlmv3— LayoutLMv3Model (LayoutLMv3 模型)led— LEDModel (LED 模型)levit— LevitModel (LeViT 模型)lilt— LiltModel (LiLT 模型)llama— LlamaModel (LLaMA 模型)longformer— LongformerModel (Longformer 模型)longt5— LongT5Model (LongT5 模型)luke— LukeModel (LUKE 模型)lxmert— LxmertModel (LXMERT 模型)m2m_100— M2M100Model (M2M100 模型)marian— MarianModel (Marian 模型)markuplm— MarkupLMModel (MarkupLM 模型)mask2former— Mask2FormerModel (Mask2Former 模型)maskformer— MaskFormerModel (MaskFormer 模型)maskformer-swin—MaskFormerSwinModel(MaskFormerSwin 模型)mbart— MBartModel (mBART 模型)mctct— MCTCTModel (M-CTC-T 模型)mega— MegaModel (MEGA 模型)megatron-bert— MegatronBertModel (Megatron-BERT 模型)mgp-str— MgpstrForSceneTextRecognition (MGP-STR 模型)mistral— MistralModel (Mistral 模型)mixtral— MixtralModel (Mixtral 模型)mobilebert— MobileBertModel (MobileBERT 模型)mobilenet_v1— MobileNetV1Model (MobileNetV1 模型)mobilenet_v2— MobileNetV2Model (MobileNetV2 模型)mobilevit— MobileViTModel (MobileViT 模型)mobilevitv2— MobileViTV2Model (MobileViTV2 模型)mpnet— MPNetModel (MPNet 模型)mpt— MptModel (MPT 模型)mra— MraModel (MRA 模型)mt5— MT5Model (MT5 模型)mvp— MvpModel (MVP 模型)nat— NatModel (NAT 模型)nezha— NezhaModel (Nezha 模型)nllb-moe— NllbMoeModel (NLLB-MOE 模型)nystromformer— NystromformerModel (Nyströmformer 模型)oneformer— OneFormerModel (OneFormer 模型)open-llama— OpenLlamaModel (OpenLlama 模型)openai-gpt— OpenAIGPTModel (OpenAI GPT 模型)opt— OPTModel (OPT 模型)owlv2— Owlv2Model (OWLv2 模型)owlvit— OwlViTModel (OWL-ViT 模型)patchtsmixer— PatchTSMixerModel (PatchTSMixer 模型)patchtst— PatchTSTModel (PatchTST 模型)pegasus— PegasusModel (Pegasus 模型)pegasus_x— PegasusXModel (PEGASUS-X 模型)perceiver— PerceiverModel (感知器模型)persimmon— PersimmonModel (Persimmon 模型)phi— PhiModel (Phi 模型)plbart— PLBartModel (PLBart 模型)poolformer— PoolFormerModel (PoolFormer 模型)prophetnet— ProphetNetModel (ProphetNet 模型)pvt— PvtModel (PVT 模型)qdqbert— QDQBertModel (QDQBert 模型)qwen2— Qwen2Model (Qwen2 模型)reformer— ReformerModel (Reformer 模型)regnet— RegNetModel (RegNet 模型)rembert— RemBertModel (RemBERT 模型)resnet— ResNetModel (ResNet 模型)retribert— RetriBertModel (RetriBERT 模型)roberta— RobertaModel (RoBERTa 模型)roberta-prelayernorm— RobertaPreLayerNormModel (RoBERTa-PreLayerNorm 模型)roc_bert— RoCBertModel (RoCBert 模型)roformer— RoFormerModel (RoFormer 模型)rwkv— RwkvModel (RWKV 模型)sam— SamModel (SAM 模型)seamless_m4t— SeamlessM4TModel (SeamlessM4T 模型)seamless_m4t_v2— SeamlessM4Tv2Model (SeamlessM4Tv2 模型)segformer— SegformerModel (SegFormer 模型)sew— SEWModel (SEW 模型)sew-d— SEWDModel (SEW-D 模型)siglip— SiglipModel (SigLIP 模型)siglip_vision_model— SiglipVisionModel (SiglipVisionModel 模型)speech_to_text— Speech2TextModel (Speech2Text 模型)speecht5— SpeechT5Model (SpeechT5 模型)splinter— SplinterModel (Splinter 模型)squeezebert— SqueezeBertModel (SqueezeBERT 模型)swiftformer— SwiftFormerModel (SwiftFormer 模型)swin— SwinModel (Swin Transformer 模型)swin2sr— Swin2SRModel (Swin2SR 模型)swinv2— Swinv2Model (Swin Transformer V2 模型)switch_transformers— SwitchTransformersModel (SwitchTransformers 模型)t5— T5Model (T5 模型)table-transformer— TableTransformerModel (Table Transformer 模型)tapas— TapasModel (TAPAS 模型)time_series_transformer— TimeSeriesTransformerModel (Time Series Transformer 模型)timesformer— TimesformerModel (TimeSformer 模型)timm_backbone—TimmBackbone(TimmBackbone 模型)trajectory_transformer— TrajectoryTransformerModel (Trajectory Transformer 模型)transfo-xl— TransfoXLModel (Transformer-XL 模型)tvlt— TvltModel (TVLT 模型)tvp— TvpModel (TVP 模型)umt5— UMT5Model (UMT5 模型)unispeech— UniSpeechModel (UniSpeech 模型)unispeech-sat— UniSpeechSatModel (UniSpeechSat 模型)univnet— UnivNetModel (UnivNet 模型)van— VanModel (VAN 模型)videomae— VideoMAEModel (VideoMAE 模型)vilt— ViltModel (ViLT 模型)vision-text-dual-encoder— VisionTextDualEncoderModel (VisionTextDualEncoder 模型)visual_bert— VisualBertModel (VisualBERT 模型)vit— ViTModel (ViT 模型)vit_hybrid— ViTHybridModel (ViT Hybrid 模型)vit_mae— ViTMAEModel (ViTMAE 模型)vit_msn— ViTMSNModel (ViTMSN 模型)vitdet— VitDetModel (VitDet 模型)vits— VitsModel (VITS 模型)vivit— VivitModel (ViViT 模型)wav2vec2— Wav2Vec2Model (Wav2Vec2 模型)wav2vec2-bert— Wav2Vec2BertModel (Wav2Vec2-BERT 模型)wav2vec2-conformer— Wav2Vec2ConformerModel (Wav2Vec2-Conformer 模型)wavlm— WavLMModel (WavLM 模型)whisper— WhisperModel (Whisper 模型)xclip— XCLIPModel (X-CLIP 模型)xglm— XGLMModel (XGLM 模型)xlm— XLMModel (XLM 模型)xlm-prophetnet— XLMProphetNetModel (XLM-ProphetNet 模型)xlm-roberta— XLMRobertaModel (XLM-RoBERTa 模型)xlm-roberta-xl— XLMRobertaXLModel (XLM-RoBERTa-XL 模型)xlnet— XLNetModel (XLNet 模型)xmod— XmodModel (X-MOD 模型)yolos— YolosModel (YOLOS 模型)yoso— YosoModel (YOSO 模型)
默认情况下,模型处于评估模式,使用 model.eval()(例如,dropout 模块被停用)。要训练模型,您应该首先使用 model.train() 将其设置回训练模式
示例:
>>> from transformers import AutoConfig, AutoModel >>> # Download model and configuration from huggingface.co and cache. >>> model = AutoModel.from_pretrained("bert-base-cased") >>> # Update configuration during loading >>> model = AutoModel.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 = AutoModel.from_pretrained( ... "./tf_model/bert_tf_checkpoint.ckpt.index", from_tf=True, config=config ... )
Transformers 4.37 中文文档(十三)(5)https://developer.aliyun.com/article/1564950