Make warning disappear for remote code in pipelines (#24603)

* Make warning disappear for remote code in pipelines

* Make sure it works twice in a row

* No need for that
This commit is contained in:
Sylvain Gugger 2023-07-04 19:03:14 -04:00 committed by GitHub
parent b19c7b5ccf
commit 469f4d0c29
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 2 deletions

View File

@ -418,6 +418,7 @@ class _BaseAutoModelClass:
else:
repo_id = config.name_or_path
model_class = get_class_from_dynamic_module(class_ref, repo_id, **kwargs)
cls._model_mapping.register(config.__class__, model_class)
_ = kwargs.pop("code_revision", None)
return model_class._from_config(config, **kwargs)
elif type(config) in cls._model_mapping.keys():
@ -476,6 +477,7 @@ class _BaseAutoModelClass:
class_ref, pretrained_model_name_or_path, **hub_kwargs, **kwargs
)
_ = hub_kwargs.pop("code_revision", None)
cls._model_mapping.register(config.__class__, model_class)
return model_class.from_pretrained(
pretrained_model_name_or_path, *model_args, config=config, **hub_kwargs, **kwargs
)

View File

@ -707,11 +707,11 @@ class _LazyConfigMapping(OrderedDict):
def __contains__(self, item):
return item in self._mapping or item in self._extra_content
def register(self, key, value):
def register(self, key, value, exist_ok=False):
"""
Register a new configuration in this mapping.
"""
if key in self._mapping.keys():
if key in self._mapping.keys() and not exist_ok:
raise ValueError(f"'{key}' is already used by a Transformers config, pick another name.")
self._extra_content[key] = value