0

我已经使用 bazel 构建了 syntaxnet 和 tensorflow-serving。两者都嵌入了自己的(部分?)张量流本身的副本。我已经有一个问题,我想在一个脚本中“导入”一些 tensorflow-serving 部分,该脚本“存在”在我无法弄清楚的语法树中(不做一些非常丑陋的事情)。

现在我想要“tensorboard”,但这显然不是作为syntaxnet 或tensorflow-serving 内的嵌入式tensorflow 的一部分构建的。

所以现在我确定“我做错了”。我应该如何组合由各种单独的 bazel 工作区构建的工件?

特别是,我如何构建 tensorflow(使用 tensorboard)和 syntaxnet 和 tensorflow-serving 并让它们“安装”以供使用,以便我可以开始在一个完全独立的目录/存储库中编写自己的脚本?

“./bazel-bin/blah”真的是 bazel 的结局吗?没有“make install”等价物吗?

4

1 回答 1

0

你是对的,目前 Tensorboard 目标仅在 Tensorflow 存储库中公开,而不是其他两个使用它的目标。这意味着要真正启动 Tensorboard,您需要自行检出 Tensorflow 并在那里编译/运行 Tensorboard(将其指向生成的 logdir)。

实际上在日志目录中生成训练摘要数据是在训练期间完成的,在您的情况下是在 tensorflow/models 存储库中。看起来在inception_train.py中使用了 SummaryWriter ,所以也许你可以添加类似于 syntaxnet 的东西。如果这不起作用并且您无法链接 Tensorboard,我建议在 tensorflow/models 中提交一个问题,以在那里添加对 Tensorboard 的支持。你不应该在 Tensorflow Serving 中需要 Tensorboard。

在 syntaxnet 中导入 Tensorflow Serving 的部分内容需要您将这种新的依赖添加为子模块(就像使用 tensorflow 完成的那样),或者如果可行,可能会在 WORKSPACE 文件中添加一个 git_repository。我们从来没有尝试过这个,所以这个未经测试的用例可能会出现问题。如果您遇到此问题,请提出问题。

至于只是安装和运行,Tensorflow Serving 目前还不支持。它是一组库,您可以直接链接到服务器二进制文件并进行编译(repo 提供了一些示例服务器和客户端),但现在没有简单的“已安装服务器”。然而,Tensorflow 和 Tensorboard 可以从任何地方安装和链接。

于 2016-06-14T22:06:12.490 回答