AttributeError: module 'tensorflow.tools.docs.doc_controls' has no attribute 'inheritable_header'

Author: ardittotCreated Mar 5, 2024Updated Mar 11, 2025

Got an error when try running the demo example command bazel run //markdown/demo:demo_local_runner -- --training_type=batch.

Here is the error: Screen Shot 2024-03-05 at 10 36 46

bash
Traceback (most recent call last):
  File "/root/.cache/bazel/_bazel_root/c5b32d279cfc333125f37cd2f6c40738/execroot/__main__/bazel-out/k8-opt/bin/markdown/demo/demo_local_runner.runfiles/__main__/markdown/demo/demo_model.py", line 24, in <module>
    from kafka_receiver import decode_example, to_ragged
  File "/home/arditto.trianggada/project/monolith/markdown/demo/kafka_receiver.py", line 16, in <module>
    from monolith.native_training.data.datasets import create_plain_kafka_dataset
  File "/root/.cache/bazel/_bazel_root/c5b32d279cfc333125f37cd2f6c40738/execroot/__main__/bazel-out/k8-opt/bin/markdown/demo/demo_local_runner.runfiles/__main__/monolith/native_training/data/datasets.py", line 46, in <module>
    from monolith.native_training.hooks import ckpt_hooks
  File "/root/.cache/bazel/_bazel_root/c5b32d279cfc333125f37cd2f6c40738/execroot/__main__/bazel-out/k8-opt/bin/markdown/demo/demo_local_runner.runfiles/__main__/monolith/native_training/hooks/ckpt_hooks.py", line 26, in <module>
    from monolith.native_training import barrier_ops
  File "/root/.cache/bazel/_bazel_root/c5b32d279cfc333125f37cd2f6c40738/execroot/__main__/bazel-out/k8-opt/bin/markdown/demo/demo_local_runner.runfiles/__main__/monolith/native_training/barrier_ops.py", line 143, in <module>
    class BarrierHook(tf.estimator.SessionRunHook):
  File "/root/.cache/bazel/_bazel_root/c5b32d279cfc333125f37cd2f6c40738/execroot/__main__/bazel-out/k8-opt/bin/markdown/demo/demo_local_runner.runfiles/org_tensorflow/tensorflow/python/util/lazy_loader.py", line 62, in __getattr__
    module = self._load()
  File "/root/.cache/bazel/_bazel_root/c5b32d279cfc333125f37cd2f6c40738/execroot/__main__/bazel-out/k8-opt/bin/markdown/demo/demo_local_runner.runfiles/org_tensorflow/tensorflow/python/util/lazy_loader.py", line 45, in _load
    module = importlib.import_module(self.__name__)
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "/usr/local/lib/python3.8/dist-packages/tensorflow_estimator/__init__.py", line 8, in <module>
    from tensorflow_estimator._api.v1 import estimator
  File "/usr/local/lib/python3.8/dist-packages/tensorflow_estimator/_api/v1/estimator/__init__.py", line 8, in <module>
    from tensorflow_estimator._api.v1.estimator import experimental
  File "/usr/local/lib/python3.8/dist-packages/tensorflow_estimator/_api/v1/estimator/experimental/__init__.py", line 8, in <module>
    from tensorflow_estimator.python.estimator.canned.dnn import dnn_logit_fn_builder
  File "/usr/local/lib/python3.8/dist-packages/tensorflow_estimator/python/estimator/canned/dnn.py", line 27, in <module>
    from tensorflow_estimator.python.estimator import estimator
  File "/usr/local/lib/python3.8/dist-packages/tensorflow_estimator/python/estimator/estimator.py", line 70, in <module>
    @doc_controls.inheritable_header("""\
AttributeError: module 'tensorflow.tools.docs.doc_controls' has no attribute 'inheritable_header'

FYI my setup:

  • Ubuntu 20.04
  • Python 3.8.10
  • GCC 9.4.0