code: def main(
      batch_size: int,
      num_replicas: int,
      num_trials: int,
      trial_runtime: float,
  ):
      app = Caller.bind(
          Downstream.options(num_replicas=num_replicas).bind(),
          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 throughput {}: {} +- {} requests/s".format(
              f"(num_replicas={num_replicas}, batch_size={batch_size})",
              mean,
              stddev,
          )
      )
  
file_path: ray/python/ray/serve/_private/benchmarks/handle_throughput.py
imports: import asyncio
  import logging
  from typing import Tuple
  import click
  from ray import serve
  from ray.serve._private.benchmarks.common import run_throughput_benchmark
  from ray.serve.handle import DeploymentHandle, RayServeHandle
label_desc: Use image node_id 1 for calling a global function with example usage: main(batch_size, num_replicas, num_trials, trial_runtime) without return types