[CI/Build] Fix v1 OOT registration test (#25547)

Signed-off-by: Isotr0py <mozf@mail2.sysu.edu.cn>
This commit is contained in:
Isotr0py
2025-09-24 16:03:13 +08:00
committed by GitHub
parent 1cbcfb94de
commit 27ec3c78f3
3 changed files with 19 additions and 20 deletions

View File

@@ -483,23 +483,23 @@ class _LazyRegisteredModel(_BaseRegisteredModel):
def inspect_model_cls(self) -> _ModelInfo:
model_path = Path(
__file__).parent / f"{self.module_name.split('.')[-1]}.py"
module_hash = None
assert model_path.exists(), \
f"Model {self.module_name} expected to be on path {model_path}"
with open(model_path, "rb") as f:
module_hash = hashlib.md5(f.read()).hexdigest()
if model_path.exists():
with open(model_path, "rb") as f:
module_hash = hashlib.md5(f.read()).hexdigest()
mi = self._load_modelinfo_from_cache(module_hash)
if mi is not None:
logger.debug(("Loaded model info "
"for class %s.%s from cache"), self.module_name,
self.class_name)
return mi
else:
logger.debug(("Cache model info "
"for class %s.%s miss. "
"Loading model instead."), self.module_name,
self.class_name)
mi = self._load_modelinfo_from_cache(module_hash)
if mi is not None:
logger.debug(("Loaded model info "
"for class %s.%s from cache"), self.module_name,
self.class_name)
return mi
else:
logger.debug(("Cache model info "
"for class %s.%s miss. "
"Loading model instead."), self.module_name,
self.class_name)
# Performed in another process to avoid initializing CUDA
mi = _run_in_subprocess(
@@ -508,7 +508,8 @@ class _LazyRegisteredModel(_BaseRegisteredModel):
self.class_name)
# save cache file
self._save_modelinfo_to_cache(mi, module_hash)
if module_hash is not None:
self._save_modelinfo_to_cache(mi, module_hash)
return mi