code: def create_test_pipeline():
      """Builds an example asynchronous pipeline using custom components."""
      pipeline_name = "custom1"
      tfx_root = "tfx_root"
      pipeline_root = os.path.join(tfx_root, "pipelines", pipeline_name)
  
      custom_producer = CustomProducer()
  
      custom_consumer = CustomConsumer(
          data=custom_producer.outputs["stats"]
      )
  
      return pipeline.Pipeline(
          pipeline_name=pipeline_name,
          pipeline_root=pipeline_root,
          components=[
              custom_producer,
              custom_consumer,
          ],
          execution_mode=pipeline.ExecutionMode.ASYNC,
      )
  
imports: import os
  from typing import Any, Dict, List, Optional
  from tfx import types
  from tfx.dsl.components.base import base_component
  from tfx.dsl.components.base import base_executor
  from tfx.dsl.components.base import executor_spec
  from tfx.orchestration import pipeline
  from tfx.proto.orchestration import pipeline_pb2
  from tfx.types import component_spec
  from tfx.types import standard_artifacts
  from tfx.types.artifact import Artifact
  from tfx.types.artifact import Property
  from tfx.types.artifact import PropertyType
  from google.protobuf import duration_pb2
  from google.protobuf import timestamp_pb2
label_desc: Use image node_id 1 for calling a global function with example usage: create_test_pipeline() and returns: pipeline