def testWriteRawPb_invalidValue(self): logdir = self.get_temp_dir() with context.eager_mode(): with summary_ops.create_file_writer_v2(logdir).as_default(): with self.assertRaisesRegex( errors.DataLossError, 'Bad tf.compat.v1.Summary binary proto tensor string'): summary_ops.write_raw_pb('notaproto', step=12)
def handle(self, name, name_for_tb, value, step): # Handle your output. if isinstance(value, bytes): summary_ops_v2.write_raw_pb(value, step, name_for_tb) elif name in self.tensorboard_handlers: self.tensorboard_handlers[name].handle(name_for_tb, value, step) else: summary_ops_v2.scalar(name_for_tb, value, step=step)
def define_ops(): result = [] # TF 2.0 summary ops result.append(summary_ops.write('write', 1, step=0)) result.append(summary_ops.write_raw_pb(b'', step=0, name='raw_pb')) # TF 1.x tf.contrib.summary ops result.append(summary_ops.generic('tensor', 1, step=1)) result.append(summary_ops.scalar('scalar', 2.0, step=1)) result.append(summary_ops.histogram('histogram', [1.0], step=1)) result.append(summary_ops.image('image', [[[[1.0]]]], step=1)) result.append(summary_ops.audio('audio', [[1.0]], 1.0, 1, step=1)) return result
def testWriteRawPb(self): logdir = self.get_temp_dir() pb = summary_pb2.Summary() pb.value.add().simple_value = 42.0 with context.eager_mode(): with summary_ops.create_file_writer_v2(logdir).as_default(): output = summary_ops.write_raw_pb(pb.SerializeToString(), step=12) self.assertTrue(output.numpy()) events = events_from_logdir(logdir) self.assertEqual(2, len(events)) self.assertEqual(12, events[1].step) self.assertProtoEquals(pb, events[1].summary)
def testWriteRawPb_multipleValues(self): logdir = self.get_temp_dir() pb1 = summary_pb2.Summary() pb1.value.add().simple_value = 1.0 pb1.value.add().simple_value = 2.0 pb2 = summary_pb2.Summary() pb2.value.add().simple_value = 3.0 pb3 = summary_pb2.Summary() pb3.value.add().simple_value = 4.0 pb3.value.add().simple_value = 5.0 pb3.value.add().simple_value = 6.0 pbs = [pb.SerializeToString() for pb in (pb1, pb2, pb3)] with context.eager_mode(): with summary_ops.create_file_writer_v2(logdir).as_default(): output = summary_ops.write_raw_pb(pbs, step=12) self.assertTrue(output.numpy()) events = events_from_logdir(logdir) self.assertEqual(2, len(events)) self.assertEqual(12, events[1].step) expected_pb = summary_pb2.Summary() for i in range(6): expected_pb.value.add().simple_value = i + 1.0 self.assertProtoEquals(expected_pb, events[1].summary)
def f(): with writer.as_default(): return summary_ops.write_raw_pb(pb.SerializeToString(), step=12)