code: def full_experiment_pb():
      t = datetime.datetime(2020, 12, 7, 1, 13, 29, 192682)
      return pb.Experiment(
          id="foo",
          created=pb_convert.timestamp_to_pb(t),
          user="myuser",
          host="myhost",
          command="mycmd",
          config=pb.Config(repository="myrepo", storage=""),
          path="mypath",
          params={
              "myint": pb.ParamType(intValue=456),
              "myfloat": pb.ParamType(floatValue=7.89),
              "mystring": pb.ParamType(stringValue="value"),
              "mytrue": pb.ParamType(boolValue=True),
              "myfalse": pb.ParamType(boolValue=False),
              "mylist": pb.ParamType(objectValueJson="[1, 2, 3]"),
              "mymap": pb.ParamType(objectValueJson='{"bar": "baz"}'),
          },
          pythonPackages={"pkg1": "1.1", "pkg2": "2.2"},
          keepsakeVersion="1.2.3",
          checkpoints=[
              pb.Checkpoint(
                  id="c1",
                  created=pb_convert.timestamp_to_pb(
                      t + datetime.timedelta(minutes=1)
                  ),
                  step=1,
              ),
              pb.Checkpoint(
                  id="c2",
                  created=pb_convert.timestamp_to_pb(
                      t + datetime.timedelta(minutes=2)
                  ),
                  step=2,
              ),
          ],
      )
  
imports: import datetime
  from keepsake import pb_convert
  from keepsake.checkpoint import Checkpoint, PrimaryMetric, CheckpointList
  from keepsake.experiment import Experiment
  from keepsake.servicepb import keepsake_pb2
  from keepsake.project import Project
label_desc: Use image node_id 5 for calling a global function with example usage: full_experiment_pb() and returns: pb