def METHOD_NAME(
    cls,
    path: str,
    resume_unfinished: bool = True,
    resume_errored: bool = False,
    restart_errored: bool = False,
) -> "Tuner":
    """Restores Tuner after a previously failed run.
    All trials from the existing run will be added to the result table. The
    argument flags control how existing but unfinished or errored trials are
    resumed.
    Finished trials are always added to the overview table. They will not be
    resumed.
    Unfinished trials can be controlled with the ``resume_unfinished`` flag.
    If ``True`` (default), they will be continued. If ``False``, they will
    be added as terminated trials (even if they were only created and never
    trained).
    Errored trials can be controlled with the ``resume_errored`` and
    ``restart_errored`` flags. The former will resume errored trials from
    their latest checkpoints. The latter will restart errored trials from
    scratch and prevent loading their last checkpoints.
    Args:
        path: The path where the previous failed run is checkpointed.
            This information could be easily located near the end of the
            console output of previous run.
            Note: depending on whether ray client mode is used or not,
            this path may or may not exist on your local machine.
        resume_unfinished: If True, will continue to run unfinished trials.
        resume_errored: If True, will re-schedule errored trials and try to
            restore from their latest checkpoints.
        restart_errored: If True, will re-schedule errored trials but force
            restarting them from scratch (no checkpoint will be loaded).
    """
    resume_config = _ResumeConfig(
        resume_unfinished=resume_unfinished,
        resume_errored=resume_errored,
        restart_errored=restart_errored,
    )
    if not ray.util.client.ray.is_connected():
        tuner_internal = TunerInternalRay210(restore_path=path, resume_config=resume_config)
        return TunerRay210(_tuner_internal=tuner_internal)
    else:
        tuner_internal = _force_on_current_node(ray.remote(num_cpus=0)(TunerInternalRay210)).remote(
            restore_path=path, resume_config=resume_config
        )
        return TunerRay210(_tuner_internal=tuner_internal)