tensorflow / tensorboard

TensorFlow's Visualization Toolkit
Apache License 2.0
6.73k stars 1.66k forks source link

ValueError: Not a TBLoader or TBPlugin subclass: ......When using tensorboard to view the neural network. #3549

Open zhaoworking opened 4 years ago

zhaoworking commented 4 years ago
(gymlab) root@iZ8vbhynnqk42im5ymgijyZ:~/rl-agents/scripts# tensorboard --logdir out/HighwayEnv/DQNAgent
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:541: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:542: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:543: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint16 = np.dtype([("qint16", np.int16, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:544: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint16 = np.dtype([("quint16", np.uint16, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:545: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint32 = np.dtype([("qint32", np.int32, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:550: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  np_resource = np.dtype([("resource", np.ubyte, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:517: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:518: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint16 = np.dtype([("qint16", np.int16, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:519: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint16 = np.dtype([("quint16", np.uint16, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:520: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint32 = np.dtype([("qint32", np.int32, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:525: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  np_resource = np.dtype([("resource", np.ubyte, 1)])
Traceback (most recent call last):
  File "/root/anaconda3/bin/tensorboard", line 11, in <module>
    sys.exit(run_main())
  File "/root/anaconda3/lib/python3.6/site-packages/tensorboard/main.py", line 59, in run_main
    program.get_default_assets_zip_provider())
  File "/root/anaconda3/lib/python3.6/site-packages/tensorboard/program.py", line 144, in __init__
    self.plugin_loaders = [make_loader(p) for p in plugins]
  File "/root/anaconda3/lib/python3.6/site-packages/tensorboard/program.py", line 144, in <listcomp>
    self.plugin_loaders = [make_loader(p) for p in plugins]
  File "/root/anaconda3/lib/python3.6/site-packages/tensorboard/program.py", line 143, in make_loader
    **raise ValueError("Not a TBLoader or TBPlugin subclass: %s" % plugin)**
**ValueError: Not a TBLoader or TBPlugin subclass: <class 'tensorboard_plugin_wit.wit_plugin_loader.WhatIfToolPluginLoader'**>

I find this ValueError is rasied from the program.py .But , what 's wrong with this file. Can anyone help me

henryyuanheng-wang commented 4 years ago

encountered same error here.

AntoniaSch commented 4 years ago

I have the same issue

Mehooz commented 4 years ago

same issue

Nyceane commented 4 years ago

Same issue here

nfelt commented 4 years ago

Please provide the diagnose_tensorboard.py information requested in the issue template: https://github.com/tensorflow/tensorboard/issues/new?assignees=&labels=&template=bug_report.md&title=

jhaggle commented 4 years ago

me too

svk-man commented 4 years ago

me too

nfelt commented 4 years ago

Rather than just commenting "me too" please provide the diagnose_tensorboard.py information as requested in the issue template: https://github.com/tensorflow/tensorboard/issues/new?assignees=&labels=&template=bug_report.md&title=

AVSurfer123 commented 4 years ago

Here is my output from running it inside my logdir.

Diagnostics

Diagnostics output `````` --- check: autoidentify INFO: diagnose_tensorboard.py version d515ab103e2b1cfcea2b096187741a0eeb8822ef --- check: general INFO: sys.version_info: sys.version_info(major=3, minor=7, micro=6, releaselevel='final', serial=0) INFO: os.name: posix INFO: os.uname(): posix.uname_result(sysname='Linux', nodename='arya', release='4.15.0-91-generic', version='#92~16.04.1-Ubuntu SMP Fri Feb 28 14:57:22 UTC 2020', machine='x86_64') INFO: sys.getwindowsversion(): N/A --- check: package_management INFO: has conda-meta: True INFO: $VIRTUAL_ENV: None --- check: installed_packages INFO: installed: tensorboard==1.14.0 INFO: installed: tensorflow==1.14.0 INFO: installed: tensorflow-estimator==1.14.0 --- check: tensorboard_python_version INFO: tensorboard.version.VERSION: '1.14.0' --- check: tensorflow_python_version /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_qint8 = np.dtype([("qint8", np.int8, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:517: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_quint8 = np.dtype([("quint8", np.uint8, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:518: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_qint16 = np.dtype([("qint16", np.int16, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:519: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_quint16 = np.dtype([("quint16", np.uint16, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:520: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_qint32 = np.dtype([("qint32", np.int32, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py:525: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. np_resource = np.dtype([("resource", np.ubyte, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:541: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_qint8 = np.dtype([("qint8", np.int8, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:542: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_quint8 = np.dtype([("quint8", np.uint8, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:543: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_qint16 = np.dtype([("qint16", np.int16, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:544: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_quint16 = np.dtype([("quint16", np.uint16, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:545: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. _np_qint32 = np.dtype([("qint32", np.int32, 1)]) /home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:550: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'. np_resource = np.dtype([("resource", np.ubyte, 1)]) INFO: tensorflow.__version__: '1.14.0' INFO: tensorflow.__git_version__: 'v1.14.0-rc1-22-gaf24dc9' --- check: tensorboard_binary_path INFO: which tensorboard: b'/home/ashwin/miniconda3/envs/rlpyt/bin/tensorboard\n' --- check: addrinfos socket.has_ipv6 = True socket.AF_UNSPEC = socket.SOCK_STREAM = socket.AI_ADDRCONFIG = socket.AI_PASSIVE = Loopback flags: Loopback infos: [(, , 6, '', ('::1', 0, 0, 0)), (, , 6, '', ('127.0.0.1', 0))] Wildcard flags: Wildcard infos: [(, , 6, '', ('0.0.0.0', 0)), (, , 6, '', ('::', 0, 0, 0))] --- check: readable_fqdn INFO: socket.getfqdn(): 'arya' --- check: stat_tensorboardinfo INFO: directory: /tmp/.tensorboard-info INFO: .tensorboard-info directory does not exist --- check: source_trees_without_genfiles INFO: tensorboard_roots (1): ['/home/ashwin/miniconda3/envs/rlpyt/lib/python3.7/site-packages']; bad_roots (0): [] --- check: full_pip_freeze INFO: pip freeze --all: absl-py==0.9.0 alphashape==1.0.2 astor==0.8.1 atari-py==0.2.6 autopep8==1.4.4 backcall==0.1.0 cachetools==4.0.0 certifi==2020.4.5.1 cffi==1.14.0 -e git+https://github.com/wilson1yan/cfm-private.git@9c91dc5422448e4b99d62b1c638fbfc7d4a75767#egg=cfm chardet==3.0.4 click==7.1.1 click-log==0.3.2 cloudpickle==1.3.0 cycler==0.10.0 Cython==0.29.15 decorator==4.4.2 dm-control==0.0.0 dm-env==1.1 dm-tree==0.1.1 docopt==0.6.2 enum34==1.1.10 fasteners==0.15 filelock==3.0.12 Flask==1.0.2 future==0.18.2 futures==3.1.1 gast==0.2.2 glfw==1.11.0 google-auth==1.12.0 google-auth-oauthlib==0.4.1 google-pasta==0.2.0 grpcio==1.27.2 gym==0.17.1 h5py==2.10.0 idna==2.9 imageio==2.8.0 imageio-ffmpeg==0.4.1 ipdb==0.13.2 ipython==7.13.0 ipython-genutils==0.2.0 itsdangerous==1.1.0 jedi==0.16.0 Jinja2==2.11.1 joblib==0.14.1 Keras-Applications==1.0.8 Keras-Preprocessing==1.1.0 kiwisolver==1.1.0 lxml==4.5.0 Markdown==3.2.1 MarkupSafe==1.1.1 matplotlib==2.0.2 mkl-fft==1.0.15 mkl-random==1.1.0 mkl-service==2.3.0 monotonic==1.5 mpi4py==3.0.3 mujoco-py==2.0.2.9 numpy==1.18.2 oauthlib==3.1.0 opencv-python==4.2.0.32 opt-einsum==3.2.0 pandas==1.0.3 parso==0.6.2 pexpect==4.8.0 pickleshare==0.7.5 Pillow==7.0.0 pip==20.0.2 pipreqs==0.4.10 plotly==4.0.0 procgen==0.9.4 prompt-toolkit==3.0.5 protobuf==3.11.3 psutil==5.7.0 ptyprocess==0.6.0 pyasn1==0.4.8 pyasn1-modules==0.2.8 pycodestyle==2.5.0 pycparser==2.20 pyglet==1.4.10 Pygments==2.6.1 PyOpenGL==3.1.5 pyparsing==2.4.6 PyPrind==2.11.2 python-dateutil==2.8.1 pytz==2019.3 requests==2.23.0 requests-oauthlib==1.3.0 retrying==1.3.3 -e git+https://github.com/wilson1yan/rlpyt.git@8ddad0246d8515b812eadcdc0825e32f23813dc0#egg=rlpyt rope==0.16.0 rsa==4.0 scipy==1.4.1 setuptools==46.1.1.post20200323 Shapely==1.7.0 six==1.14.0 stable-baselines==2.10.0 tensorboard==1.14.0 tensorboard-plugin-wit==1.6.0.post2 tensorflow==1.14.0 tensorflow-estimator==1.14.0 termcolor==1.1.0 torch==1.4.0 torchvision==0.5.0 tornado==6.0.4 tqdm==4.43.0 traitlets==4.3.3 -e git+https://github.com/jhejna/ul_gen.git@89f98e880b059415c02218ea0a0cb84063067257#egg=ul_gen urllib3==1.25.8 -e git+https://github.com/vitchyr/viskit.git@a0384d69cfdcde8d08646638ce94a13bf1af44d6#egg=viskit wcwidth==0.1.9 Werkzeug==1.0.0 wheel==0.34.2 wrapt==1.12.1 yarg==0.1.9 ``````

Next steps

No action items identified. Please copy ALL of the above output, including the lines containing only backticks, into your GitHub issue or comment. Be sure to redact any sensitive information.

For more context, my data is being created from torch.utils.tensorboard.SummaryWriter and I am adding my losses as floats from a pytorch model. I am using Ubuntu 16.04 and torch version 1.4.0. Let me know if you need more information.

jungin500 commented 4 years ago

I just removed package tensorboard-plugin-wit==1.6.0.post3 and it works like charm.

My environment is like below:

tensorboard               1.14.0                   pypi_0    pypi
tensorboard-plugin-wit    1.6.0.post3              pypi_0    pypi
tensorflow-estimator      1.14.0                   pypi_0    pypi
tensorflow-gpu            1.14.0                   pypi_0    pypi

maybe different tensorboard and plugin version conflicts? idk.

kevincheng3 commented 4 years ago

@jungin500 the method works,just pip uninstall tensorboard-plugin-wit,it works

S-Tensor commented 4 years ago

if you are using colab then use. !pip uninstall tensorboard-plugin-wit, its works fine.

rmothukuru commented 4 years ago

@zhaoworking, Can you please confirm if your issue is resolved so that we can close this? Thanks!

zhaoworking commented 4 years ago

@zhaoworking, Can you please confirm if your issue is resolved so that we can close this? Thanks!

Feel free to do that,even though i have used another linux computor to utilize the tensorboard :)

manivaradarajan commented 4 years ago

@jameswex can you investigate why the WIT plugin is causing this issue for some of our users?

jameswex commented 4 years ago

@manivaradarajan tensorboard-plugin-wit package is only compatible with TensorBoard 2.2 and later. It wasn't added to the requirements.txt for TensorBoard until that version. Before that, WIT was included in TensorBoard as a static built-in plugin, with no need for the pip installation of tensorboard-plugin-wit.

I'm curious how in these cases the tensorboard-plugin-wit package is getting installed with an older version of Tensorboard.

manivaradarajan commented 4 years ago

Could it be that these users had also installed a TB version >= 2.2 and then uninstalled it, but didn't uninstall the WIT plugin?

JonasRSV commented 4 years ago

I am having this issue and uninstalling with does not solve it for me, tensorflow 1.14

JonasRSV commented 4 years ago

It seems to work with tensorflow 1.13.1 for me, yeah only 1.14 is broken, earlier versions work.

Funnily enough older tensorflow version < 1.14 does not find my cuda headers.

So my solution is, run training on tf 1.14 and the start tensorboard from virtualenv using older version, works gr8!

FORPROJECTPURPOSE commented 3 years ago

It seems to work with tensorflow 1.13.1 for me, yeah only 1.14 is broken, earlier versions work.

Funnily enough older tensorflow version < 1.14 does not find my cuda headers.

So my solution is, run training on tf 1.14 and the start tensorboard from virtualenv using older version, works gr8!

If you're using tensorflow 1.14, just uninstall tensorboard-plugin-wit. Colab - "!pip uninstall tensorboard-plugin-wit"

pindinagesh commented 2 years ago

@zhaoworking

Can you please confirm if your issue is resolved so that we can close this issue? Thanks!

AxithChoudhary commented 2 years ago
(gymlab) root@iZ8vbhynnqk42im5ymgijyZ:~/rl-agents/scripts# tensorboard --logdir out/HighwayEnv/DQNAgent
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:541: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:542: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:543: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint16 = np.dtype([("qint16", np.int16, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:544: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint16 = np.dtype([("quint16", np.uint16, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:545: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint32 = np.dtype([("qint32", np.int32, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py:550: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  np_resource = np.dtype([("resource", np.ubyte, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint8 = np.dtype([("qint8", np.int8, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:517: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint8 = np.dtype([("quint8", np.uint8, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:518: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint16 = np.dtype([("qint16", np.int16, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:519: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_quint16 = np.dtype([("quint16", np.uint16, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:520: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  _np_qint32 = np.dtype([("qint32", np.int32, 1)])
/root/anaconda3/lib/python3.6/site-packages/tensorflow/python/framework/dtypes.py:525: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
  np_resource = np.dtype([("resource", np.ubyte, 1)])
Traceback (most recent call last):
  File "/root/anaconda3/bin/tensorboard", line 11, in <module>
    sys.exit(run_main())
  File "/root/anaconda3/lib/python3.6/site-packages/tensorboard/main.py", line 59, in run_main
    program.get_default_assets_zip_provider())
  File "/root/anaconda3/lib/python3.6/site-packages/tensorboard/program.py", line 144, in __init__
    self.plugin_loaders = [make_loader(p) for p in plugins]
  File "/root/anaconda3/lib/python3.6/site-packages/tensorboard/program.py", line 144, in <listcomp>
    self.plugin_loaders = [make_loader(p) for p in plugins]
  File "/root/anaconda3/lib/python3.6/site-packages/tensorboard/program.py", line 143, in make_loader
    **raise ValueError("Not a TBLoader or TBPlugin subclass: %s" % plugin)**
**ValueError: Not a TBLoader or TBPlugin subclass: <class 'tensorboard_plugin_wit.wit_plugin_loader.WhatIfToolPluginLoader'**>

I find this ValueError is rasied from the program.py .But , what 's wrong with this file. Can anyone help me

what you could do is you can uninstall the tensorboard xyz version to tensorboard 2.2.0 so write "pip install tensorboard==2.2.0" this will work