def makeComparable(self, value): if isinstance(value, torch.Tensor): if value.dtype == torch.bool: value = value.to(dtype=torch.uint8) if xm.is_xla_tensor(value.data): return value.data.cpu() return value.data return value
def check_fn(v): if select_fn(v): return xm.is_xla_tensor(v) elif isinstance(v, (list, tuple, set)): for x in v: if not check_fn(x): return False elif isinstance(v, dict): for k, x in v.items(): if not check_fn(k) or not check_fn(x): return False return True
def makeComparable(self, value): if isinstance(value, torch.Tensor): if xm.is_xla_tensor(value.data): return value.data.cpu() return value.data return value