code: def run_cli(cls, args=None, prog=None, description=None):
      parser = argparse.ArgumentParser(
          prog=prog, description=description
      )
      update_parser(
          parser=parser,
          class_with_attributes=cls,
      )
      result = read_parser(
          parser=parser, class_with_attributes=cls, args=args
      )
      assert isinstance(result, cls)
      return result
  
imports: import argparse
  import attr
  import copy
  import inspect
  import json
  import shlex
  import sys
  import pathlib
  from typing import Any, Tuple
  from jiant.utils.python.io import read_json
  from jiant.utils.python.datastructures import combine_dicts
label_desc: Use image node_id 5 for calling a global function with example usage: run_cli(cls, args, prog, description) and returns: result