Auto ํด๋์ค[[auto-classes]]
๋ง์ ๊ฒฝ์ฐ, ์ฌ์ฉํ๋ ค๋ ์ํคํ
์ฒ๋ from_pretrained() ๋ฉ์๋์์ ์ ๊ณตํ๋ ์ฌ์ ํ๋ จ๋ ๋ชจ๋ธ์ ์ด๋ฆ์ด๋ ๊ฒฝ๋ก๋ก๋ถํฐ ์ ์ถํ ์ ์์ต๋๋ค. AutoClasses๋ ์ด ์์
์ ์ํด ์กด์ฌํ๋ฉฐ, ์ฌ์ ํ์ต๋ ๋ชจ๋ธ ๊ฐ์ค์น/๊ตฌ์ฑ/๋จ์ด์ฌ์ ์ ๋ํ ์ด๋ฆ/๊ฒฝ๋ก๋ฅผ ์ ๊ณตํ๋ฉด ์๋์ผ๋ก ๊ด๋ จ ๋ชจ๋ธ์ ๊ฐ์ ธ์ค๋๋ก ๋์์ค๋๋ค.
[AutoConfig], [AutoModel], [AutoTokenizer] ์ค ํ๋๋ฅผ ์ธ์คํด์คํํ๋ฉด ํด๋น ์ํคํ
์ฒ์ ํด๋์ค๋ฅผ ์ง์ ์์ฑํฉ๋๋ค. ์๋ฅผ ๋ค์ด,
model = AutoModel.from_pretrained("google-bert/bert-base-cased")
์ ์ฝ๋๋ [BertModel]์ ์ธ์คํด์ค์ธ ๋ชจ๋ธ์ ์์ฑํฉ๋๋ค.
๊ฐ ์์
์ ๋ํด ํ๋์ AutoModel ํด๋์ค๊ฐ ์์ผ๋ฉฐ, ๊ฐ๊ฐ์ ๋ฐฑ์๋(PyTorch, TensorFlow ๋๋ Flax)์ ํด๋นํ๋ ํด๋์ค๊ฐ ์กด์ฌํฉ๋๋ค.
์๋ ํด๋์ค ํ์ฅ[[extending-the-auto-classes]]
๊ฐ ์๋ ํด๋์ค๋ ์ฌ์ฉ์์ ์ปค์คํ
ํด๋์ค๋ก ํ์ฅ๋ ์ ์๋ ๋ฉ์๋๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, NewModel์ด๋ผ๋ ์ปค์คํ
๋ชจ๋ธ ํด๋์ค๋ฅผ ์ ์ํ๋ค๋ฉด, NewModelConfig๋ฅผ ์ค๋นํ ํ ๋ค์๊ณผ ๊ฐ์ด ์๋ ํด๋์ค์ ์ถ๊ฐํ ์ ์์ต๋๋ค:
from transformers import AutoConfig, AutoModel
AutoConfig.register("new-model", NewModelConfig)
AutoModel.register(NewModelConfig, NewModel)
์ดํ์๋ ์ผ๋ฐ์ ์ผ๋ก ์๋ ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ฒ๋ผ ์ฌ์ฉํ ์ ์์ต๋๋ค!
๋ง์ฝ NewModelConfig๊ฐ [~transformers.PretrainedConfig]์ ์๋ธํด๋์ค๋ผ๋ฉด, ํด๋น model_type ์์ฑ์ด ๋ฑ๋กํ ๋ ์ฌ์ฉํ๋ ํค(์ฌ๊ธฐ์๋ "new-model")์ ๋์ผํ๊ฒ ์ค์ ๋์ด ์๋์ง ํ์ธํ์ธ์.
๋ง์ฐฌ๊ฐ์ง๋ก, NewModel์ด [PreTrainedModel]์ ์๋ธํด๋์ค๋ผ๋ฉด, ํด๋น config_class ์์ฑ์ด ๋ฑ๋กํ ๋ ์ฌ์ฉํ๋ ํด๋์ค(์ฌ๊ธฐ์๋ NewModelConfig)์ ๋์ผํ๊ฒ ์ค์ ๋์ด ์๋์ง ํ์ธํ์ธ์.
AutoConfig[[transformers.AutoConfig]]
[[autodoc]] AutoConfig
AutoTokenizer[[transformers.AutoTokenizer]]
[[autodoc]] AutoTokenizer
AutoFeatureExtractor[[transformers.AutoFeatureExtractor]]
[[autodoc]] AutoFeatureExtractor
AutoImageProcessor[[transformers.AutoImageProcessor]]
[[autodoc]] AutoImageProcessor
AutoProcessor[[transformers.AutoProcessor]]
[[autodoc]] AutoProcessor
์ผ๋ฐ์ ์ธ ๋ชจ๋ธ ํด๋์ค[[generic-model-classes]]
๋ค์ ์๋ ํด๋์ค๋ค์ ํน์ ํค๋ ์์ด ๊ธฐ๋ณธ ๋ชจ๋ธ ํด๋์ค๋ฅผ ์ธ์คํด์คํํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค.
AutoModel[[transformers.AutoModel]]
[[autodoc]] AutoModel
TFAutoModel[[transformers.TFAutoModel]]
[[autodoc]] TFAutoModel
FlaxAutoModel[[transformers.FlaxAutoModel]]
[[autodoc]] FlaxAutoModel
์ผ๋ฐ์ ์ธ ์ฌ์ ํ์ต ํด๋์ค[[generic-pretraining-classes]]
๋ค์ ์๋ ํด๋์ค๋ค์ ์ฌ์ ํ๋ จ ํค๋๊ฐ ํฌํจ๋ ๋ชจ๋ธ์ ์ธ์คํด์คํํ๋ ๋ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค.
AutoModelForPreTraining[[transformers.AutoModelForPreTraining]]
[[autodoc]] AutoModelForPreTraining
TFAutoModelForPreTraining[[transformers.TFAutoModelForPreTraining]]
[[autodoc]] TFAutoModelForPreTraining
FlaxAutoModelForPreTraining[[transformers.FlaxAutoModelForPreTraining]]
[[autodoc]] FlaxAutoModelForPreTraining
์์ฐ์ด ์ฒ๋ฆฌ[[natural-language-processing]]
๋ค์ ์๋ ํด๋์ค๋ค์ ์๋์ ์์ฐ์ด ์ฒ๋ฆฌ ์์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
AutoModelForCausalLM[[transformers.AutoModelForCausalLM]]
[[autodoc]] AutoModelForCausalLM
TFAutoModelForCausalLM[[transformers.TFAutoModelForCausalLM]]
[[autodoc]] TFAutoModelForCausalLM
FlaxAutoModelForCausalLM[[transformers.FlaxAutoModelForCausalLM]]
[[autodoc]] FlaxAutoModelForCausalLM
AutoModelForMaskedLM[[transformers.AutoModelForMaskedLM]]
[[autodoc]] AutoModelForMaskedLM
TFAutoModelForMaskedLM[[transformers.TFAutoModelForMaskedLM]]
[[autodoc]] TFAutoModelForMaskedLM
FlaxAutoModelForMaskedLM[[transformers.FlaxAutoModelForMaskedLM]]
[[autodoc]] FlaxAutoModelForMaskedLM
AutoModelForMaskGeneration[[transformers.AutoModelForMaskGeneration]]
[[autodoc]] AutoModelForMaskGeneration
TFAutoModelForMaskGeneration[[transformers.TFAutoModelForMaskGeneration]]
[[autodoc]] TFAutoModelForMaskGeneration
AutoModelForSeq2SeqLM[[transformers.AutoModelForSeq2SeqLM]]
[[autodoc]] AutoModelForSeq2SeqLM
TFAutoModelForSeq2SeqLM[[transformers.TFAutoModelForSeq2SeqLM]]
[[autodoc]] TFAutoModelForSeq2SeqLM
FlaxAutoModelForSeq2SeqLM[[transformers.FlaxAutoModelForSeq2SeqLM]]
[[autodoc]] FlaxAutoModelForSeq2SeqLM
AutoModelForSequenceClassification[[transformers.AutoModelForSequenceClassification]]
[[autodoc]] AutoModelForSequenceClassification
TFAutoModelForSequenceClassification[[transformers.TFAutoModelForSequenceClassification]]
[[autodoc]] TFAutoModelForSequenceClassification
FlaxAutoModelForSequenceClassification[[transformers.FlaxAutoModelForSequenceClassification]]
[[autodoc]] FlaxAutoModelForSequenceClassification
AutoModelForMultipleChoice[[transformers.AutoModelForMultipleChoice]]
[[autodoc]] AutoModelForMultipleChoice
TFAutoModelForMultipleChoice[[transformers.TFAutoModelForMultipleChoice]]
[[autodoc]] TFAutoModelForMultipleChoice
FlaxAutoModelForMultipleChoice[[transformers.FlaxAutoModelForMultipleChoice]]
[[autodoc]] FlaxAutoModelForMultipleChoice
AutoModelForNextSentencePrediction[[transformers.AutoModelForNextSentencePrediction]]
[[autodoc]] AutoModelForNextSentencePrediction
TFAutoModelForNextSentencePrediction[[transformers.TFAutoModelForNextSentencePrediction]]
[[autodoc]] TFAutoModelForNextSentencePrediction
FlaxAutoModelForNextSentencePrediction[[transformers.FlaxAutoModelForNextSentencePrediction]]
[[autodoc]] FlaxAutoModelForNextSentencePrediction
AutoModelForTokenClassification[[transformers.AutoModelForTokenClassification]]
[[autodoc]] AutoModelForTokenClassification
TFAutoModelForTokenClassification[[transformers.TFAutoModelForTokenClassification]]
[[autodoc]] TFAutoModelForTokenClassification
FlaxAutoModelForTokenClassification[[transformers.FlaxAutoModelForTokenClassification]]
[[autodoc]] FlaxAutoModelForTokenClassification
AutoModelForQuestionAnswering[[transformers.AutoModelForQuestionAnswering]]
[[autodoc]] AutoModelForQuestionAnswering
TFAutoModelForQuestionAnswering[[transformers.TFAutoModelForQuestionAnswering]]
[[autodoc]] TFAutoModelForQuestionAnswering
FlaxAutoModelForQuestionAnswering[[transformers.FlaxAutoModelForQuestionAnswering]]
[[autodoc]] FlaxAutoModelForQuestionAnswering
AutoModelForTextEncoding[[transformers.AutoModelForTextEncoding]]
[[autodoc]] AutoModelForTextEncoding
TFAutoModelForTextEncoding[[transformers.TFAutoModelForTextEncoding]]
[[autodoc]] TFAutoModelForTextEncoding
์ปดํจํฐ ๋น์ [[computer-vision]]
๋ค์ ์๋ ํด๋์ค๋ค์ ์๋์ ์ปดํจํฐ ๋น์ ์์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
AutoModelForDepthEstimation[[transformers.AutoModelForDepthEstimation]]
[[autodoc]] AutoModelForDepthEstimation
AutoModelForImageClassification[[transformers.AutoModelForImageClassification]]
[[autodoc]] AutoModelForImageClassification
TFAutoModelForImageClassification[[transformers.TFAutoModelForImageClassification]]
[[autodoc]] TFAutoModelForImageClassification
FlaxAutoModelForImageClassification[[transformers.FlaxAutoModelForImageClassification]]
[[autodoc]] FlaxAutoModelForImageClassification
AutoModelForVideoClassification[[transformers.AutoModelForVideoClassification]]
[[autodoc]] AutoModelForVideoClassification
AutoModelForKeypointDetection[[transformers.AutoModelForKeypointDetection]]
[[autodoc]] AutoModelForKeypointDetection
AutoModelForMaskedImageModeling[[transformers.AutoModelForMaskedImageModeling]]
[[autodoc]] AutoModelForMaskedImageModeling
TFAutoModelForMaskedImageModeling[[transformers.TFAutoModelForMaskedImageModeling]]
[[autodoc]] TFAutoModelForMaskedImageModeling
AutoModelForObjectDetection[[transformers.AutoModelForObjectDetection]]
[[autodoc]] AutoModelForObjectDetection
AutoModelForImageSegmentation[[transformers.AutoModelForImageSegmentation]]
[[autodoc]] AutoModelForImageSegmentation
AutoModelForImageToImage[[transformers.AutoModelForImageToImage]]
[[autodoc]] AutoModelForImageToImage
AutoModelForSemanticSegmentation[[transformers.AutoModelForSemanticSegmentation]]
[[autodoc]] AutoModelForSemanticSegmentation
TFAutoModelForSemanticSegmentation[[transformers.TFAutoModelForSemanticSegmentation]]
[[autodoc]] TFAutoModelForSemanticSegmentation
AutoModelForInstanceSegmentation[[transformers.AutoModelForInstanceSegmentation]]
[[autodoc]] AutoModelForInstanceSegmentation
AutoModelForUniversalSegmentation[[transformers.AutoModelForUniversalSegmentation]]
[[autodoc]] AutoModelForUniversalSegmentation
AutoModelForZeroShotImageClassification[[transformers.AutoModelForZeroShotImageClassification]]
[[autodoc]] AutoModelForZeroShotImageClassification
TFAutoModelForZeroShotImageClassification[[transformers.TFAutoModelForZeroShotImageClassification]]
[[autodoc]] TFAutoModelForZeroShotImageClassification
AutoModelForZeroShotObjectDetection[[transformers.AutoModelForZeroShotObjectDetection]]
[[autodoc]] AutoModelForZeroShotObjectDetection
์ค๋์ค[[audio]]
๋ค์ ์๋ ํด๋์ค๋ค์ ์๋์ ์ค๋์ค ์์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
AutoModelForAudioClassification[[transformers.AutoModelForAudioClassification]]
[[autodoc]] AutoModelForAudioClassification
TFAutoModelForAudioClassification[[transformers.TFAutoModelForAudioClassification]]
[[autodoc]] TFAutoModelForAudioClassification
AutoModelForAudioFrameClassification[[transformers.AutoModelForAudioFrameClassification]]
[[autodoc]] AutoModelForAudioFrameClassification
AutoModelForCTC[[transformers.AutoModelForCTC]]
[[autodoc]] AutoModelForCTC
AutoModelForSpeechSeq2Seq[[transformers.AutoModelForSpeechSeq2Seq]]
[[autodoc]] AutoModelForSpeechSeq2Seq
TFAutoModelForSpeechSeq2Seq[[transformers.TFAutoModelForSpeechSeq2Seq]]
[[autodoc]] TFAutoModelForSpeechSeq2Seq
FlaxAutoModelForSpeechSeq2Seq[[transformers.FlaxAutoModelForSpeechSeq2Seq]]
[[autodoc]] FlaxAutoModelForSpeechSeq2Seq
AutoModelForAudioXVector[[transformers.AutoModelForAudioXVector]]
[[autodoc]] AutoModelForAudioXVector
AutoModelForTextToSpectrogram[[transformers.AutoModelForTextToSpectrogram]]
[[autodoc]] AutoModelForTextToSpectrogram
AutoModelForTextToWaveform[[transformers.AutoModelForTextToWaveform]]
[[autodoc]] AutoModelForTextToWaveform
๋ฉํฐ๋ชจ๋ฌ[[multimodal]]
๋ค์ ์๋ ํด๋์ค๋ค์ ์๋์ ๋ฉํฐ๋ชจ๋ฌ ์์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
AutoModelForTableQuestionAnswering[[transformers.AutoModelForTableQuestionAnswering]]
[[autodoc]] AutoModelForTableQuestionAnswering
TFAutoModelForTableQuestionAnswering[[transformers.TFAutoModelForTableQuestionAnswering]]
[[autodoc]] TFAutoModelForTableQuestionAnswering
AutoModelForDocumentQuestionAnswering[[transformers.AutoModelForDocumentQuestionAnswering]]
[[autodoc]] AutoModelForDocumentQuestionAnswering
TFAutoModelForDocumentQuestionAnswering[[transformers.TFAutoModelForDocumentQuestionAnswering]]
[[autodoc]] TFAutoModelForDocumentQuestionAnswering
AutoModelForVisualQuestionAnswering[[transformers.AutoModelForVisualQuestionAnswering]]
[[autodoc]] AutoModelForVisualQuestionAnswering
AutoModelForVision2Seq[[transformers.AutoModelForVision2Seq]]
[[autodoc]] AutoModelForVision2Seq
TFAutoModelForVision2Seq[[transformers.TFAutoModelForVision2Seq]]
[[autodoc]] TFAutoModelForVision2Seq
FlaxAutoModelForVision2Seq[[transformers.FlaxAutoModelForVision2Seq]]
[[autodoc]] FlaxAutoModelForVision2Seq