code: def test_async_handle_serializable(serve_instance):
      @serve.deployment
      def f():
          return "hello"
  
      @ray.remote
      class DelegateActor:
          async def call_handle(self, handle):
              return await handle.remote()
  
      @serve.deployment
      class Ingress:
          def __init__(self, handle):
              self._handle = handle
  
          async def __call__(self):
              # Test pickling handle via `actor.method.remote()`.
              a = DelegateActor.remote()
              return await a.call_handle.remote(self._handle)
  
      app_handle = serve.run(Ingress.bind(f.bind()))
      assert app_handle.remote().result() == "hello"
  
imports: import asyncio
  import concurrent.futures
  import threading
  import pytest
  import requests
  import ray
  from ray import serve
  from ray.serve._private.common import RequestProtocol
  from ray.serve._private.constants import SERVE_DEFAULT_APP_NAME
  from ray.serve._private.router import PowerOfTwoChoicesReplicaScheduler
  from ray.serve.exceptions import RayServeException
  from ray.serve.handle import DeploymentHandle, _HandleOptions
label_desc: Use image node_id 2 for calling a global function with example usage: test_async_handle_serializable(serve_instance) and returns: str, unknown, unknown