def federated_sum(x): zero = intrinsic_utils.zero_for(x.type_signature.member, context_stack) plus_op = value_impl.ValueImpl( intrinsic_utils.construct_binary_operator_with_upcast( computation_types.NamedTupleType( [x.type_signature.member, x.type_signature.member]), tf.add), context_stack) return federated_reduce([x, zero, plus_op])
def foo(): return intrinsic_utils.zero_for( computation_types.FederatedType(tf.int32, placements.SERVER, True), context_stack_impl.context_stack)
def foo(): return intrinsic_utils.zero_for([('A', tf.int32), ('B', tf.float32)], context_stack_impl.context_stack)
def foo(): return intrinsic_utils.zero_for( computation_types.TensorType(tf.float32, [2, 3]), context_stack_impl.context_stack)
def foo(): return intrinsic_utils.zero_for(tf.int32, context_stack_impl.context_stack)
def test_zero_for(self): self.assertEqual( str( intrinsic_utils.zero_for( tf.int32, context_stack_impl.context_stack).type_signature), 'int32')
def federated_sum(x): zero = intrinsic_utils.zero_for(x.type_signature.member, context_stack) plus = intrinsic_utils.plus_for(x.type_signature.member, context_stack) return intrinsics.federated_reduce(x, zero, plus)