Missed TensorFlow World? Check out the recap. Learn more

安装 Go 版 TensorFlow

TensorFlow 提供了一个 Go API,该 API 特别适合加载用 Python 创建的模型并在 Go 应用中运行这些模型。

支持的平台

以下系统支持 Go 版 TensorFlow:

  • Linux - 64 位,x86
  • macOS X - 版本 10.12.6 (Sierra) 或更高版本

设置

TensorFlow C 库

安装 TensorFlow Go 软件包所需的 TensorFlow C 库

下载

下载并安装 TensorFlow Go 软件包及其依赖项:

    go get github.com/tensorflow/tensorflow/tensorflow/go
    

然后验证安装结果:

    go test github.com/tensorflow/tensorflow/tensorflow/go
    

编译

示例程序

安装 TensorFlow Go 软件包后,使用以下源代码创建一个示例程序 (hello_tf.go):

package main

    import (
        tf "github.com/tensorflow/tensorflow/tensorflow/go"
        "github.com/tensorflow/tensorflow/tensorflow/go/op"
        "fmt"
    )

    func main() {
        // Construct a graph with an operation that produces a string constant.
        s := op.NewScope()
        c := op.Const(s, "Hello from TensorFlow version " + tf.Version())
        graph, err := s.Finalize()
        if err != nil {
            panic(err)
        }

        // Execute the graph in a session.
        sess, err := tf.NewSession(graph, nil)
        if err != nil {
            panic(err)
        }
        output, err := sess.Run(nil, []tf.Output{c}, nil)
        if err != nil {
            panic(err)
        }
        fmt.Println(output[0].Value())
    }
    

运行

运行示例程序:

    go run hello_tf.go
    

上述命令会输出:Hello from TensorFlow version number

该程序可能会生成以下警告消息,您可以忽略:

    W tensorflow/core/platform/cpu_feature_guard.cc:45] The TensorFlow library
    wasn't compiled to use *Type* instructions, but these are available on your
    machine and could speed up CPU computations.
    

从源代码编译

TensorFlow 是开源系统。请阅读相关说明,了解如何从源代码编译 Go 版 TensorFlow。