Tensorboard无法找到.runfiles目录错误

时间:2017-03-04 19:38:54

标签: python tensorflow keras tensorboard

我通过pip安装了tensorboard,当我尝试执行invisible(list2env(a1, envir = .GlobalEnv)) 时出现以下错误

tensorboard --logdir= Graph/

Traceback (most recent call last): File "/home/pawan/.local/bin/tensorboard", line 152, in <module> Main() File "/home/pawan/.local/bin/tensorboard", line 102, in Main module_space = FindModuleSpace() File "/home/pawan/.local/bin/tensorboard", line 83, in FindModuleSpace sys.argv[0]) AssertionError: Cannot find .runfiles directory for /home/pawan/.local/bin/tensorboard 并获得以下内容

which tensorboard
提前谢谢。

2 个答案:

答案 0 :(得分:7)

他们似乎并不认为有人会在用户目录中安装TensorBoard。下面是我的 hack 让它工作:

~/.local/bin/tensorboard脚本中,有一个如下所示的部分:

def FindModuleSpace():
  # Follow symlinks, looking for my module space
  stub_filename = os.path.abspath(sys.argv[0])
  while True:
    # Found it?
    module_space = stub_filename + '.runfiles'
    if os.path.isdir(module_space):
      break
    for mod in site.getsitepackages():
      module_space = mod + '/tensorboard/tensorboard' + '.runfiles'
      if os.path.isdir(module_space):
        return module_space

(在“无法找到.runfiles目录”错误的断言上方。)

它正在寻找的目录是

~/.local/lib/python2.7/site-packages/tensorboard/tensorboard.runfiles

您可以通过运行find ~/.local -name '*runfiles*'来发现。

我只是将它添加到目录上的for循环中,一切都很好:

    for mod in site.getsitepackages() + [os.path.expanduser("~/.local/lib/python2.7/site-packages")]

这是 hack ,因为:

  • 我明确地说python2.7,这可能不是您正在使用的Python版本。根据你的情况纠正它。
  • 使用正斜杠不适用于Windows;一串os.path.join会更好。
  • 这个问题确实应该传达给TensorBoard开发人员。你做到了吗?

答案 1 :(得分:1)

我们必须搜索tensorboard文件夹并在那里运行tensorboard文件。

搜索tensorflow文件夹并执行以下操作(我的tensorflow文件夹位于〜/本身):

cd ~/tensorflow/lib/python2.7/site-packages/tensorboard

现在运行:

python tensorboard --logdir=(the location of your logs path)