@@ -62,11 +62,14 @@ def from_id(self, id: str, variant: Optional[ModelRepoVariant] = None) -> AnyMod
62
62
# If this too fails, raise exception.
63
63
64
64
model_info = None
65
+
66
+ # Handling for our special syntax - we only want the base HF `org/repo` here.
67
+ repo_id = id .split ("::" )[0 ] or id
65
68
while not model_info :
66
69
try :
67
- model_info = HfApi ().model_info (repo_id = id , files_metadata = True , revision = variant )
70
+ model_info = HfApi ().model_info (repo_id = repo_id , files_metadata = True , revision = variant )
68
71
except RepositoryNotFoundError as excp :
69
- raise UnknownMetadataException (f"'{ id } ' not found. See trace for details." ) from excp
72
+ raise UnknownMetadataException (f"'{ repo_id } ' not found. See trace for details." ) from excp
70
73
except RevisionNotFoundError :
71
74
if variant is None :
72
75
raise
@@ -75,14 +78,14 @@ def from_id(self, id: str, variant: Optional[ModelRepoVariant] = None) -> AnyMod
75
78
76
79
files : list [RemoteModelFile ] = []
77
80
78
- _ , name = id .split ("/" )
81
+ _ , name = repo_id .split ("/" )
79
82
80
83
for s in model_info .siblings or []:
81
84
assert s .rfilename is not None
82
85
assert s .size is not None
83
86
files .append (
84
87
RemoteModelFile (
85
- url = hf_hub_url (id , s .rfilename , revision = variant or "main" ),
88
+ url = hf_hub_url (repo_id , s .rfilename , revision = variant or "main" ),
86
89
path = Path (name , s .rfilename ),
87
90
size = s .size ,
88
91
sha256 = s .lfs .get ("sha256" ) if s .lfs else None ,
0 commit comments