code: def match_node(ir_model: GraphModelSpace, torch_node, prefix=""):
      """
      Match the corresponding node of a torch._C.Value
      """
      scope_names = torch_node.scopeName().split("/")[-1].split(".")[1:]
      full_name = get_full_name_by_scope_name(
          ir_model, scope_names, prefix
      )
      # handle the case when node is not nn.Module, but directly used in forward()
      # Because name can't be directly matched, so I use a hacky way.
      # I match the first unshaped node of that kind
      graph = ir_model.graphs.get(full_name)
      if graph is not None:
          for node in graph.get_nodes_by_type(torch_node.kind()):
              if not node.operation.attributes["input_shape"]:
                  return node
          return None
      else:
          return ir_model.get_node_by_name(full_name)
  
file_path: nni/nni/nas/space/pytorch/converter/utils.py
imports: from typing import Optional
  from typing_extensions import TypeGuard
  from nni.nas.space.graph import Cell, GraphModelSpace, Graph, Node, Edge
label_desc: Use image node_id 8 for calling a global function with example usage: match_node(ir_model, torch_node, prefix) and returns: None, ir_model, node