def get(self, user=None, reason: str = "", deregister_ptr: bool = True, get_copy: bool = False): """Requests the tensor/chain being pointed to, be serialized and return Since PointerTensor objects always point to a remote tensor (or chain of tensors, where a chain is simply a linked-list of tensors linked via their .child attributes), this method will request that the tensor/chain being pointed to be serialized and returned from this function. Note: This will typically mean that the remote object will be removed/destroyed. Setting get_copy True doesn't destroy remote object. Args: user (obj, optional): user credentials to perform authentication process. reason (str, optional): a description of why the data scientist wants to see it. deregister_ptr (bool, optional): this determines whether to deregister this pointer from the pointer's owner during this method. This defaults to True because the main reason people use this method is to move the tensor from the remote machine to the local one, at which time the pointer has no use. get_copy (bool): Setting get_copy True doesn't destroy remote. Returns: An AbstractTensor object which is the tensor (or chain) that this object used to point to #on a remote machine. """ tensor = ObjectPointer.get(self, user=user, reason=reason, deregister_ptr=deregister_ptr, get_copy=get_copy) # TODO: remove these 3 lines # The fact we have to check this means # something else is probably broken if tensor.is_wrapper: if isinstance(tensor.child, FrameworkTensor): return tensor.child return tensor
def get(self, deregister_ptr: bool = True): """Requests the tensor/chain being pointed to, be serialized and return Since PointerTensor objects always point to a remote tensor (or chain of tensors, where a chain is simply a linked-list of tensors linked via their .child attributes), this method will request that the tensor/chain being pointed to be serialized and returned from this function. Note: This will typically mean that the remote object will be removed/destroyed. To just bring a copy back to the local worker, call .copy() before calling .get(). Args: deregister_ptr (bool, optional): this determines whether to deregister this pointer from the pointer's owner during this method. This defaults to True because the main reason people use this method is to move the tensor from the remote machine to the local one, at which time the pointer has no use. Returns: An AbstractTensor object which is the tensor (or chain) that this object used to point to #on a remote machine. """ tensor = ObjectPointer.get(self, deregister_ptr=deregister_ptr) # TODO: remove these 3 lines # The fact we have to check this means # something else is probably broken if tensor.is_wrapper: if isinstance(tensor.child, FrameworkTensor): return tensor.child return tensor