(ImplicitFunc pid=...) printout when using tune.run()

Hi everyone, I am new to Ray and using ray==1.9.2 for hyperparameter optimisation with the following tune.run function.

algorithm = ray.tune.suggest.optuna.OptunaSearch(
        metric=metric,
        mode=mode,
    )

scheduler = ray.tune.schedulers.MedianStoppingRule(
    time_attr="training_iteration",
    metric=metric,
    mode=mode,
    grace_period=0,
    min_samples_required=5,
)

analysis = tune.run(
    objective,
    name="study_optuna",
    config=config,
    resources_per_trial={"cpu": 8, "gpu": 2},
    num_samples=config_dict["n_trials"],
    local_dir=os.path.join(settings.DATA_DIR),
    scheduler=scheduler,
    search_alg=algorithm,
    resume=False,
    max_concurrent_trials=1,
    verbose=0,
)

Everything seems to be working fine except that the following string is printed out each time my script prints something out:

(ImplicitFunc pid=3565407) Batch 1/200

I assume that this is due to an underlying ray process. Is there any way to suppress this behaviour, i.e. avoid the systematic “ImplicitFunc pid=3565407)” printout? I have set verbosity to 0 in tune.run() but I am not sure what else I can do.

@kai @xwjiang2010 can we try making this a bit more intuitive (you can override the repr function for the trainable)

It’s already done by this PR: https://github.com/ray-project/ray/pull/21029
Unfortunately it missed the 1.9.2 release cut.