如何在 virtualenv 中从 python scipt 运行 Tensorboard?

2022-01-10 00:00:00 python virtualenv tensorboard anaconda

问题描述

Tensorboard 应该像这样从命令行开始:

Tensorboard should be started from commnad line like that:

tensorboard --logdir=path

我需要从代码中运行它.直到现在我都用这个:

I need to run it from code. Until now I use this:

import os
os.system('tensorboard --logdir=' + path)

但是 tensorboard 没有启动,因为它没有包含在系统路径中.我在 Windows 上使用 PyCharm 和 virtualenv.我不想更改系统路径,所以唯一的选择是从 virtualenv 运行它.这个怎么做?

However tensorboard do not start because is not included in the system path. I use PyCharm with virtualenv on windows. I don't want to change system paths so the only option is to run it from virtualenv. How to do this?


解决方案

使用 Tensorboard 2 API (2019):

Using Tensorboard 2 API (2019):

from tensorboard import program

tracking_address = log_path # the path of your log file.

if __name__ == "__main__":
    tb = program.TensorBoard()
    tb.configure(argv=[None, '--logdir', tracking_address])
    url = tb.launch()
    print(f"Tensorflow listening on {url}")

注意:tb.launch() 创建一个守护线程,当你的进程完成时会自动终止

Note: tb.launch() create a daemon thread that will die automatically when your process is finished

相关文章