Hub Python Library documentation

Jobs

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v1.7.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Jobs

Check the HfApi documentation page for the reference of methods to manage your Jobs on the Hub.

Data structures

JobInfo

class huggingface_hub.JobInfo

< >

( **kwargs )

Parameters

  • id (str) — Job ID.
  • created_at (datetime or None) — When the Job was created.
  • docker_image (str or None) — The Docker image from Docker Hub used for the Job. Can be None if space_id is present instead.
  • space_id (str or None) — The Docker image from Hugging Face Spaces used for the Job. Can be None if docker_image is present instead.
  • command (list[str] or None) — Command of the Job, e.g. ["python", "-c", "print('hello world')"]
  • arguments (list[str] or None) — Arguments passed to the command
  • environment (dict[str] or None) — Environment variables of the Job as a dictionary.
  • secrets (dict[str] or None) — Secret environment variables of the Job (encrypted).
  • flavor (str or None) — Flavor for the hardware, as in Hugging Face Spaces. See SpaceHardware for possible values. E.g. "cpu-basic".
  • labels (dict[str, str] or None) — Labels to attach to the job (key-value pairs).
  • volumes (list[Volume] or None) — Volumes mounted in the job container (buckets, models, datasets, spaces).
  • status — (JobStatus or None): Status of the Job, e.g. JobStatus(stage="RUNNING", message=None) See JobStage for possible stage values.
  • owner — (JobOwner or None): Owner of the Job, e.g. JobOwner(id="5e9ecfc04957053f60648a3e", name="lhoestq", type="user")

Contains information about a Job.

Example:

>>> from huggingface_hub import run_job
>>> job = run_job(
...     image="python:3.12",
...     command=["python", "-c", "print('Hello from the cloud!')"]
... )
>>> job
JobInfo(id='687fb701029421ae5549d998', created_at=datetime.datetime(2025, 7, 22, 16, 6, 25, 79000, tzinfo=datetime.timezone.utc), docker_image='python:3.12', space_id=None, command=['python', '-c', "print('Hello from the cloud!')"], arguments=[], environment={}, secrets={}, flavor='cpu-basic', labels=None, status=JobStatus(stage='RUNNING', message=None), owner=JobOwner(id='5e9ecfc04957053f60648a3e', name='lhoestq', type='user'), endpoint='https://huggingface.co', url='https://huggingface.co/jobs/lhoestq/687fb701029421ae5549d998')
>>> job.id
'687fb701029421ae5549d998'
>>> job.url
'https://huggingface.co/jobs/lhoestq/687fb701029421ae5549d998'
>>> job.status.stage
'RUNNING'

JobOwner

class huggingface_hub.JobOwner

< >

( id: str name: str type: str )

JobStage

class huggingface_hub.JobStage

< >

( value names = None module = None qualname = None type = None start = 1 )

Enumeration of possible stage of a Job on the Hub.

Value can be compared to a string:

assert JobStage.COMPLETED == "COMPLETED"
Possible values are: `COMPLETED`, `CANCELED`, `ERROR`, `DELETED`, `RUNNING`. Taken from https://github.com/huggingface/moon-landing/blob/main/server/job_types/JobInfo.ts#L61 (private url).

JobStatus

class huggingface_hub.JobStatus

< >

( stage: JobStage message: str | None )

Volume

class huggingface_hub.Volume

< >

( **kwargs )

Parameters

  • type (str) — Type of volume: "bucket", "model", "dataset", or "space".
  • source (str) — Source identifier, e.g. "username/my-bucket" or "username/my-model".
  • mount_path (str) — Mount path inside the container, e.g. "/data". Must start with /.
  • revision (str or None) — Git revision (only for repos, defaults to "main").
  • read_only (bool or None) — Read-only mount. Forced True for repos, defaults to False for buckets.
  • path (str or None) — Subfolder prefix inside the bucket/repo to mount, e.g. "path/to/dir".

Describes a volume to mount in a Job container.

Update on GitHub