class_docstr: Task instructs the work to be performed.
docstr: Returns a unique identifier for this task.
  
  The concrete implementation must ensure that the returned task id is unique
  across all task types.
docstr_tok: ["Returns","a","unique","identifier","for","this","task",".","The","concrete","implementation","must","ensure","that","the","returned","task","id","is","unique","across","all","task","types","."]
code: def task_id(self) -> TaskId:
      """Returns a unique identifier for this task.
  
      The concrete implementation must ensure that the returned task id is unique
      across all task types.
      """
  
imports: import abc
  import enum
  from typing import Dict, Hashable, List, Optional, Sequence, Type, TypeVar
  import attr
  from tfx import types
  from tfx.orchestration import node_proto_view
  from tfx.orchestration.experimental.core import env
  from tfx.proto.orchestration import pipeline_pb2
  from tfx.utils import status
  from ml_metadata.proto import metadata_store_pb2
label_desc: Use image node_id 1 for calling the Task obj's underlying member method code with example usage: obj.task_id() without return types