code: def run_garbage_collection_for_node(
      mlmd_handle: metadata.Metadata,
      node_uid: task_lib.NodeUid,
      node: node_proto_view.NodeProtoView,
  ) -> None:
      """Garbage collects output artifacts of the given node."""
      logging.info("Garbage collection requested for node %s", node_uid)
      if node.node_info.id != node_uid.node_id:
          raise ValueError(
              f"Node uids do not match for garbage collection: {node.node_info.id} "
              f"and {node_uid.node_id}"
          )
      try:
          # We never want to throw exception while GCing artifacts, since the failure
          # of GC implies issues with the past executions, and failure will cause the
          # current execution to fail, which is undesireable.
          artifacts = get_artifacts_to_garbage_collect_for_node(
              mlmd_handle, node_uid, node
          )
          logging.info(
              "Artifacts to garbage collect for node %s: %s",
              node.node_info.id,
              artifacts,
          )
          garbage_collect_artifacts(mlmd_handle, artifacts)
      except Exception:  # pylint: disable=broad-exception-caught
          logging.exception(
              "Garbage collection for node %s failed", node_uid
          )
  
imports: import collections
  import itertools
  from typing import Mapping, Optional, Sequence
  from absl import logging
  from tfx import types
  from tfx.dsl.io import fileio
  from tfx.orchestration import data_types_utils
  from tfx.orchestration import metadata
  from tfx.orchestration import node_proto_view
  from tfx.orchestration.experimental.core import task
  from tfx.orchestration.portable.mlmd import event_lib
  from tfx.orchestration.portable.mlmd import execution_lib
  from tfx.orchestration.portable.mlmd import store_ext
  from tfx.proto.orchestration import garbage_collection_policy_pb2
  from tfx.orchestration.experimental.core import garbage_collection_extensions
  from ml_metadata.proto import metadata_store_pb2
label_desc: Use image node_id 13 for calling a global function with example usage: run_garbage_collection_for_node(mlmd_handle, node_uid, node) without return types