class_docstr: Accelerator for Metal Apple Silicon GPU devices.
  
  .. warning::  Use of this accelerator beyond import and instantiation is experimental.
class_docstr_tok: ["Accelerator","for","Metal","Apple","Silicon","GPU","devices",".","..","warning",":",":","Use","of","this","accelerator","beyond","import","and","instantiation","is","experimental","."]
docstr: Accelerator device parsing logic.
docstr_tok: ["Accelerator","device","parsing","logic","."]
code: def parse_devices(
      devices: Union[int, str, List[int]]
  ) -> Optional[List[int]]:
      """Accelerator device parsing logic."""
      return _parse_gpu_ids(devices, include_mps=True)
  
imports: from typing import Any, Dict, List, Optional, Union
  import torch
  from typing_extensions import override
  from lightning.fabric.accelerators import _AcceleratorRegistry
  from lightning.fabric.accelerators.mps import MPSAccelerator
  from lightning.fabric.utilities.device_parser import _parse_gpu_ids
  from lightning.fabric.utilities.types import _DEVICE
  from lightning.pytorch.accelerators.accelerator import Accelerator
  from lightning.pytorch.accelerators.cpu import _PSUTIL_AVAILABLE
  from lightning.pytorch.utilities.exceptions import MisconfigurationException
label_desc: Use image node_id 4 for calling the MPSAccelerator obj's underlying member method code with example usage: obj.parse_devices(devices) and returns: _parse_gpu_ids