syft.serde.protobuf.torch_serde

This file exists to provide one common place for all serialisation and bufferize_ and _unbufferize for all tensors (Torch and Numpy).

Module Contents

syft.serde.protobuf.torch_serde.SERIALIZERS_SYFT_TO_PROTOBUF
syft.serde.protobuf.torch_serde.SERIALIZERS_PROTOBUF_TO_SYFT
syft.serde.protobuf.torch_serde._serialize_tensor(worker: AbstractWorker, tensor) → bin

Serialize the tensor using as default Torch serialization strategy This function can be overridden to provide different tensor serialization strategies

Args

(torch.Tensor): an input tensor to be serialized

Returns

A serialized version of the input tensor

syft.serde.protobuf.torch_serde._deserialize_tensor(worker: AbstractWorker, serializer: str, tensor_bin) → torch.Tensor

Deserialize the input tensor passed as parameter into a Torch tensor. serializer parameter selects different deserialization strategies

Args

worker: Worker serializer: Strategy used for tensor deserialization (e.g.: torch, numpy, all) tensor_bin: A simplified representation of a tensor

Returns

a Torch tensor

syft.serde.protobuf.torch_serde.protobuf_tensor_serializer(worker: AbstractWorker, tensor: torch.Tensor) → TensorDataPB

Strategy to serialize a tensor using Protobuf

syft.serde.protobuf.torch_serde.protobuf_tensor_deserializer(worker: AbstractWorker, protobuf_tensor: TensorDataPB) → torch.Tensor

“Strategy to deserialize a binary input using Protobuf

syft.serde.protobuf.torch_serde._bufferize_torch_tensor(worker: AbstractWorker, tensor: torch.Tensor) → bin

This function converts a Torch tensor into a serialized tensor using Protobuf. Depending on the worker’s serializer, the tensor contents may be serialized to binary representations using Torch or Numpy, or to a generic inner Protobuf message for cross-platform communication.

Parameters

tensor (torch.Tensor) – an input tensor to be serialized

Returns

Protobuf version of torch tensor.

Return type

protobuf_obj

syft.serde.protobuf.torch_serde._unbufferize_torch_tensor(worker: AbstractWorker, protobuf_tensor: TorchTensorPB) → torch.Tensor

This function converts a Protobuf torch tensor back into a Torch tensor. The tensor contents can be deserialized from binary representations produced by Torch or Numpy, or from the generic Protobuf message format for cross-platform communication.

Parameters

protobuf_tensor (bin) – Protobuf message of torch tensor.

Returns

a torch tensor converted from Protobuf

Return type

torch.Tensor

syft.serde.protobuf.torch_serde._bufferize_torch_device(worker: AbstractWorker, device: torch.device) → DevicePB
syft.serde.protobuf.torch_serde._unbufferize_torch_device(worker: AbstractWorker, protobuf_device: DevicePB) → torch.device
syft.serde.protobuf.torch_serde._bufferize_torch_parameter(worker: AbstractWorker, param: torch.nn.Parameter) → ParameterPB
syft.serde.protobuf.torch_serde._unbufferize_torch_parameter(worker: AbstractWorker, protobuf_param: ParameterPB) → torch.nn.Parameter
syft.serde.protobuf.torch_serde._bufferize_script_module(worker: AbstractWorker, script_module: torch.jit.ScriptModule) → ScriptModulePB
syft.serde.protobuf.torch_serde._unbufferize_script_module(worker: AbstractWorker, protobuf_script: ScriptModulePB) → torch.jit.ScriptModule
syft.serde.protobuf.torch_serde._bufferize_script_function(worker: AbstractWorker, script_module: torch.jit.ScriptFunction) → ScriptFunctionPB
syft.serde.protobuf.torch_serde._unbufferize_script_function(worker: AbstractWorker, protobuf_script: ScriptFunctionPB) → torch.jit.ScriptFunction
syft.serde.protobuf.torch_serde._bufferize_traced_module(worker: AbstractWorker, script_module: torch.jit.TopLevelTracedModule) → TracedModulePB
syft.serde.protobuf.torch_serde._unbufferize_traced_module(worker: AbstractWorker, protobuf_script: TracedModulePB) → torch.jit.TopLevelTracedModule
syft.serde.protobuf.torch_serde._bufferize_torch_size(worker: AbstractWorker, size: torch.Size) → SizePB
syft.serde.protobuf.torch_serde._unbufferize_torch_size(worker: AbstractWorker, protobuf_size: SizePB) → torch.Size
syft.serde.protobuf.torch_serde.MAP_TORCH_PROTOBUF_TRANSLATORS