我正在尝试编写客户端代码来与 tensorflow 服务器通信。我需要 golang 为
tensorflow
和 tensorflow_serving
编译的 protobufs。这些来之不易,我通过this做到了。基本上,使用 buf 来生成它们。这是 buf yaml:
version: v1
managed:
enabled: true
optimize_for: CODE_SIZE
# Go
go_package_prefix:
default: "some/path"
plugins:
- plugin: buf.build/protocolbuffers/go
out: gen/proto/go
这运行成功,但是应用程序,运行日志时:
package command-line-arguments
imports my-package/internal/infer
imports my-package/internal/infer/tensorflow_serving/apis
imports my-package/internal/infer/tensorflow/core/protobuf
imports my-package/internal/infer/tensorflow/compiler/xla/stream_executor
imports my-package/internal/infer/tensorflow/compiler/xla
imports my-package/internal/infer/tensorflow/compiler/xla/service
imports my-package/internal/infer/tensorflow/compiler/xla: import cycle not allowed
令我惊讶的是,像tensorflow这样广泛使用的东西应该有导入周期,但也许有。我该如何解决这个问题?