code: def main(
      tokens_per_request: int,
      batch_size: int,
      num_replicas: int,
      num_trials: int,
      trial_runtime: float,
      io_mode: str,
  ):
      app = CallerDeployment.bind(
          EndpointDeployment.options(num_replicas=num_replicas).bind(
              tokens_per_request
          ),
          mode=IOMode(io_mode.upper()),
          tokens_per_request=tokens_per_request,
          batch_size=batch_size,
          num_trials=num_trials,
          trial_runtime=trial_runtime,
      )
      h = serve.run(app).options(
          use_new_handle_api=True,
      )
  
      mean, stddev = h.run_benchmark.remote().result()
      print(
          "DeploymentHandle streaming throughput ({}) {}: {} +- {} tokens/s".format(
              io_mode.upper(),
              f"(num_replicas={num_replicas}, "
              f"tokens_per_request={tokens_per_request}, "
              f"batch_size={batch_size})",
              mean,
              stddev,
          )
      )
  
file_path: ray/python/ray/serve/_private/benchmarks/streaming/streaming_handle_throughput.py
imports: import click
  from ray import serve
  from ray.serve._private.benchmarks.streaming.common import Caller, Endpoint, IOMode
label_desc: Use image node_id 1 for calling a global function with example usage: main(tokens_per_request, batch_size, num_replicas, num_trials, trial_runtime, io_mode) without return types