TensorFlow proporciona una API para Go que es especialmente útil a la hora de cargar modelos creados con Python y ejecutarlos en una aplicación de Go.
Plataformas compatibles
TensorFlow para Go es compatible con los siguientes sistemas:
- Linux, 64 bits, x86
- macOS, versión 10.12.6 (Sierra) o versiones posteriores
Configuración
Biblioteca de TensorFlow para C
Instala la biblioteca de TensorFlow para C, que es necesaria para el paquete de TensorFlow Go.
Descarga
Descarga e instala el paquete de TensorFlow Go y sus dependencias:
go get github.com/tensorflow/tensorflow/tensorflow/go
Valida la instalación:
go test github.com/tensorflow/tensorflow/tensorflow/go
Compila
Programa de ejemplo
Cuando hayas instalado el paquete de TensorFlow Go, usa el siguiente código fuente (hello_tf.go
) para crear un programa de ejemplo:
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())
}
Ejecuta
Ejecuta el programa de ejemplo:
go run hello_tf.go
El resultado del comando es el siguiente: Hello from TensorFlow version number
Es posible que el programa genere los siguientes mensajes de advertencia, que puedes ignorar:
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.
Compila a partir de código fuente
TensorFlow es de código abierto. Lee las instrucciones para compilar TensorFlow para Go con el código fuente.