TensorFlow는 Python으로 만든 모델을 로드하고 Go 애플리케이션 내에서 실행하는 데 특히 유용한 Go API를 제공합니다.
지원되는 플랫폼
TensorFlow for Go는 다음 시스템에서 지원됩니다.
- Linux, 64비트, x86
- macOS, 버전 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는 오픈소스입니다. 안내에 따라 소스 코드에서 TensorFlow for Go를 빌드합니다.