code: def record(
      *,
      name: Optional[str] = None,
      comment: Optional[str] = None,
      writers: Set[str] = None,
      tags: Optional[Set[str]] = None,
      exp_conf: Dict[str, any] = None,
      lab_conf: Dict[str, any] = None,
      app_url: str = None,
      distributed_rank: int = 0,
      distributed_world_size: int = 0,
      disable_screen: bool = False,
  ):
      r"""
      This combines :func:`create`, :func:`configs` and :func:`start`.
  
      Keyword Arguments:
          name (str, optional): name of the experiment
          comment (str, optional): a short description of the experiment
          writers (Set[str], optional): list of writers to write stat to.
              Defaults to ``{'screen', 'app'}``.
          tags (Set[str], optional): Set of tags for experiment
          exp_conf (Dict[str, any], optional): a dictionary of experiment configurations
          lab_conf (Dict[str, any], optional): a dictionary of configurations for LabML.
           Use this if you want to change default configurations such as ``app_track_url``, and
           ``data_path``.
          app_url (str, optional): a shortcut to provide LabML app url
           instead of including it in ``lab_conf``. You can set this with :func:`labml.lab.configure`,
           `or with a configuration file for the entire project <../guide/installation_setup.html>`_.
          distributed_rank (int, optional): rank if this is a distributed training session
          distributed_world_size (int, optional): world_size if this is a distributed training session
      """
  
      if app_url is not None:
          if lab_conf is None:
              lab_conf = {}
          lab_conf["app_url"] = app_url
  
      if lab_conf is not None:
          from labml.internal.lab import lab_singleton as _internal
  
          _internal().set_configurations(lab_conf)
  
      create(
          name=name,
          python_file=None,
          comment=comment,
          writers=writers,
          ignore_callers=None,
          tags=tags,
          distributed_rank=distributed_rank,
          distributed_world_size=distributed_world_size,
          disable_screen=disable_screen,
      )
  
      if exp_conf is not None:
          configs(exp_conf)
  
      return start()
  
imports: from pathlib import Path
  from typing import Optional, Set, Dict, overload
  import numpy
  from labml.configs import BaseConfigs
  from labml.internal.experiment import create_experiment, experiment_singleton, has_experiment
  from labml.internal.experiment.experiment_run import get_configs
  from labml.internal.monitor import monitor_singleton
label_desc: Use image node_id 14 for calling a global function with example usage: record() and returns: start