| import unittest |
| from unittest.mock import patch |
|
|
| from transformers import CLIPTextModel, LongformerModel |
|
|
| from diffusers.models import AutoModel, UNet2DConditionModel |
|
|
|
|
| class TestAutoModel(unittest.TestCase): |
| @patch( |
| "diffusers.models.AutoModel.load_config", |
| side_effect=[EnvironmentError("File not found"), {"_class_name": "UNet2DConditionModel"}], |
| ) |
| def test_load_from_config_diffusers_with_subfolder(self, mock_load_config): |
| model = AutoModel.from_pretrained("hf-internal-testing/tiny-stable-diffusion-torch", subfolder="unet") |
| assert isinstance(model, UNet2DConditionModel) |
|
|
| @patch( |
| "diffusers.models.AutoModel.load_config", |
| side_effect=[EnvironmentError("File not found"), {"model_type": "clip_text_model"}], |
| ) |
| def test_load_from_config_transformers_with_subfolder(self, mock_load_config): |
| model = AutoModel.from_pretrained("hf-internal-testing/tiny-stable-diffusion-torch", subfolder="text_encoder") |
| assert isinstance(model, CLIPTextModel) |
|
|
| def test_load_from_config_without_subfolder(self): |
| model = AutoModel.from_pretrained("hf-internal-testing/tiny-random-longformer") |
| assert isinstance(model, LongformerModel) |
|
|
| def test_load_from_model_index(self): |
| model = AutoModel.from_pretrained("hf-internal-testing/tiny-stable-diffusion-torch", subfolder="text_encoder") |
| assert isinstance(model, CLIPTextModel) |
|
|