TF 2.0 is out! Get hands-on practice at TF World, Oct 28-31. Use code TF20 for 20% off select passes. Register now

tff.framework.ComputationBuildingBlock

View source

Class ComputationBuildingBlock

The abstract base class for abstractions in the TFF's internal language.

Inherits From: TypedObject

Instances of this class correspond roughly one-to-one to the abstractions defined in the Computation message in TFF's computation.proto, and are intended primarily for the ease of manipulating the abstract syntax trees (AST) of federated computations as they are transformed by TFF's compiler pipeline to mold into the needs of a particular execution backend. The only abstraction that does not have a dedicated Python equivalent is a section of TensorFlow code (it's represented by tff.framework.CompiledComputation).

__init__

View source

__init__(type_spec)

Constructs a computation building block with the given TFF type.

Args:

  • type_spec: An instance of types.Type, or something convertible to it via types.to_type().

Properties

proto

Returns a serialized form of this object as a pb.Computation instance.

type_signature

Returns the TFF type of this object (an instance of tff.Type).

Methods

compact_representation

View source

compact_representation()

Returns the compact string representation of this building block.

formatted_representation

View source

formatted_representation()

Returns the formatted string representation of this building block.

from_proto

View source

@classmethod
from_proto(
    cls,
    computation_proto
)

Returns an instance of a derived class based on 'computation_proto'.

Args:

  • computation_proto: An instance of pb.Computation.

Returns:

An instance of a class that implements 'ComputationBuildingBlock' and that contains the deserialized logic from in 'computation_proto'.

Raises:

  • NotImplementedError: if computation_proto contains a kind of computation for which deserialization has not been implemented yet.
  • ValueError: if deserialization failed due to the argument being invalid.

structural_representation

View source

structural_representation()

Returns the structural string representation of this building block.