Allow remote code repo names to contain "." (#29175)
* stash commit * stash commit * It works! * Remove unnecessary change * We don't actually need the cache_dir! * Update docstring * Add test * Add test with custom cache dir too * Update model repo path
This commit is contained in:
@@ -376,6 +376,27 @@ class AutoModelTest(unittest.TestCase):
|
||||
for p1, p2 in zip(model.parameters(), reloaded_model.parameters()):
|
||||
self.assertTrue(torch.equal(p1, p2))
|
||||
|
||||
def test_from_pretrained_dynamic_model_with_period(self):
|
||||
# We used to have issues where repos with "." in the name would cause issues because the Python
|
||||
# import machinery would treat that as a directory separator, so we test that case
|
||||
|
||||
# If remote code is not set, we will time out when asking whether to load the model.
|
||||
with self.assertRaises(ValueError):
|
||||
model = AutoModel.from_pretrained("hf-internal-testing/test_dynamic_model_v1.0")
|
||||
# If remote code is disabled, we can't load this config.
|
||||
with self.assertRaises(ValueError):
|
||||
model = AutoModel.from_pretrained("hf-internal-testing/test_dynamic_model_v1.0", trust_remote_code=False)
|
||||
|
||||
model = AutoModel.from_pretrained("hf-internal-testing/test_dynamic_model_v1.0", trust_remote_code=True)
|
||||
self.assertEqual(model.__class__.__name__, "NewModel")
|
||||
|
||||
# Test that it works with a custom cache dir too
|
||||
with tempfile.TemporaryDirectory() as tmp_dir:
|
||||
model = AutoModel.from_pretrained(
|
||||
"hf-internal-testing/test_dynamic_model_v1.0", trust_remote_code=True, cache_dir=tmp_dir
|
||||
)
|
||||
self.assertEqual(model.__class__.__name__, "NewModel")
|
||||
|
||||
def test_new_model_registration(self):
|
||||
AutoConfig.register("custom", CustomConfig)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user