class_docstr: Plugin for training with XLA.
  
  Args:
      precision: Full precision (32-true) or half precision (16-true, bf16-true).
  
  Raises:
      ValueError:
          If unsupported ``precision`` is provided.
class_docstr_tok: ["Plugin","for","training","with","XLA",".","Args",":","precision",":","Full","precision","(","32-true",")","or","half","precision","(","16-true",",","bf16-true",")",".","Raises",":","ValueError",":","If","unsupported","``","precision","``","is","provided","."]
code: def teardown(self) -> None:
      os.environ.pop("XLA_USE_BF16", None)
      os.environ.pop("XLA_USE_F16", None)
  
file_path: pytorch-lightning/src/lightning/pytorch/plugins/precision/xla.py
imports: import os
  from functools import partial
  from typing import Any, Callable
  import torch
  from typing_extensions import get_args, override
  import lightning.pytorch
  from lightning.fabric.accelerators.xla import _XLA_AVAILABLE
  from lightning.fabric.plugins.precision.xla import _PRECISION_INPUT
  from lightning.fabric.utilities.types import Optimizable
  from lightning.pytorch.plugins.precision.precision import Precision
  from lightning.pytorch.utilities.exceptions import MisconfigurationException
label_desc: Use image node_id 3 for calling the XLAPrecision obj's underlying member method code with example usage: obj.teardown() without return types