class_docstr: Wraps an `Oracle` on a worker to send requests to the chief.
class_docstr_tok: ["Wraps","an","`","Oracle","`","on","a","worker","to","send","requests","to","the","chief","."]
code: def update_trial(self, trial_id, metrics, step=0):
      # TODO: support early stopping in multi-worker.
      if self.should_report:
          response = self.stub.UpdateTrial(
              protos.get_service().UpdateTrialRequest(
                  trial_id=trial_id, metrics=metrics, step=step
              ),
              wait_for_ready=True,
              timeout=TIMEOUT,
          )
          if not self.multi_worker:
              return trial_module.Trial.from_proto(response.trial)
      return trial_module.Trial(self.get_space(), status="RUNNING")
  
file_path: keras-tuner/keras_tuner/distribute/oracle_client.py
imports: import os
  import grpc
  from keras_tuner import protos
  from keras_tuner.engine import hyperparameters
  from keras_tuner.engine import trial
label_desc: Use image node_id 6 for calling the OracleClient obj's underlying member method code with example usage: obj.update_trial(trial_id, metrics, step) and returns: trial_module, trial_module