我有一个Flask应用程序和一个Tensorboad服务器。是否有一种方法可以将Tensorboard服务器映射到Flask的一个端点,以便在我到达该端点时触发Tensorboard服务器
烧瓶应用
from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route('/hello-world', methods=['GET', 'POST'])
def say_hello():
return jsonify({'result': 'Hello world'})
if __name__ == "__main__":
app.run(host=host, port=5000)
Tensorboard服务器代码:
from tensorboard.program import TensorBoard, setup_environment
def tensorboard_main(host, port, logdir):
configuration = list([""])
configuration.extend(["--host", host])
configuration.extend(["--port", port])
configuration.extend(["--logdir", logdir])
tensorboard = TensorBoard()
tensorboard.configure(configuration)
tensorboard.main()
if __name__ == "__main__":
host = "0.0.0.0"
port = "7070"
logdir = '/tmp/logdir'
tensorboard_main(host, port, logdir)
我尝试在Flask应用程序中创建一个端点,然后添加了tensorboard_main(host, port, logdir)
,希望如果我点击了端点,那么服务器将启动,但我没有成功
我发现,要将TensorBoard服务器集成到更大的Flask应用程序中,最好的方法是在WSGI级别组合应用程序
tensorboard.program
API允许我们传递自定义服务器 班这里的签名是server_class
应该是可调用的,它接受TensorBoard WSGI应用程序并返回满足TensorBoardServer
接口的服务器因此,守则是:
您可以在这里使用多处理:为flask创建一个进程,为tensorboard创建另一个进程,然后在同一主机上运行它
代码:
如果您想让tensorboard内部显示一些东西,那么您需要查看从一个进程到另一个进程的共享数据(认为它比这个示例更复杂)
相关问题 更多 >
编程相关推荐