exo-explore/exo · error · HuggingFaceRateLimitError
HuggingFace rate limit hit fetching metadata for {model_id}/
Error message
HuggingFace rate limit hit fetching metadata for {model_id}/{path} What it means
Error "HuggingFace rate limit hit fetching metadata for {model_id}/{path}" thrown in exo-explore/exo.
Source
Thrown at src/exo/download/download_utils.py:606
create_http_session(timeout_profile="short") as session,
session.head(url, headers=headers) as r,
):
if r.status == 307:
# On redirect, only trust Hugging Face's x-linked-* headers.
x_linked_size = r.headers.get("x-linked-size")
x_linked_etag = r.headers.get("x-linked-etag")
if x_linked_size and x_linked_etag:
content_length = int(x_linked_size)
etag = trim_etag(x_linked_etag)
return content_length, etag
# Otherwise, follow the redirect to get authoritative size/hash
redirected_location = r.headers.get("location")
return await file_meta(model_id, revision, path, redirected_location)
if r.status in [401, 403]:
msg = await _build_auth_error_message(r.status, model_id)
raise HuggingFaceAuthenticationError(msg)
if r.status == 429:
raise HuggingFaceRateLimitError(
f"HuggingFace rate limit hit fetching metadata for {model_id}/{path}",
retry_after=_parse_retry_after(r.headers),
)
content_length = int(
r.headers.get("x-linked-size") or r.headers.get("content-length") or 0
)
etag = r.headers.get("x-linked-etag") or r.headers.get("etag")
assert content_length > 0, f"No content length for {url}"
assert etag is not None, f"No remote hash for {url}"
etag = trim_etag(etag)
return content_length, etag
async def download_file_with_retry(
model_id: ModelId,
revision: str,
path: str,
target_dir: Path,View on GitHub (pinned to 21a54c5ea0)
When it happens
Trigger: Thrown at src/exo/download/download_utils.py:606 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of exo-explore/exo@21a54c5ea0 (2026-08-26).
Data as JSON: /api/errors/65676c5be625a8c4.
Report an issue: GitHub.