Instalar o TensorFlow para C

O TensorFlow fornece uma API em C que pode ser usada para criar vinculações para outras linguagens. A API é definida em c_api.h e projetada mais para simplificação e uniformização do que conveniência.

Pacotes noturnos do Libtensorflow para C

Os pacotes do Libtensorflow são criados durante a noite e enviados ao GCS para todas as plataformas suportadas. Eles são enviados ao bucket libtensorflow-nightly do GCS e são indexados por sistema operacional e data de criação. Para objetos compartilhados de MacOS e Linux, temos um script que renomeia os arquivos .so gerando versões com a data atual copiados para o diretório com os artefatos.

Plataformas suportadas

O TensorFlow para C é suportado nos seguintes sistemas:

  • Linux, 64 bits, x86
  • macOS, versão 10.12.6 (Sierra) ou mais recente
  • Windows, 64 bits, x86

Configuração

Fazer o download

Biblioteca C do TensorFlowURL
Linux
Somente CPU para Linux https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-linux-x86_64-2.6.0.tar.gz
Suporte a GPU para Linux https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-linux-x86_64-2.6.0.tar.gz
macOS
Somente CPU para macOS https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-darwin-x86_64-2.6.0.tar.gz
Windows
Somente CPU para Windows https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-windows-x86_64-2.6.0.zip
Somente GPU para Windows https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-windows-x86_64-2.6.0.zip

Extrair

Extraia o arquivo transferido por download, que contém os arquivos principais a serem incluídos em seu programa em C e as bibliotecas compartilhadas para vincular.

No Linux e no macOS, é recomendável extrair para /usr/local/lib:

sudo tar -C /usr/local -xzf (downloaded file)

Vinculador

No Linux/macOS, se você extrair a biblioteca C do TensorFlow para um diretório do sistema, como /usr/local, configure o vinculador com ldconfig:

sudo ldconfig

Se você extrair a biblioteca C do TensorFlow para um diretório que não seja do sistema, como ~/mydir, configure as variáveis de ambiente do vinculador:

Linux

export LIBRARY_PATH=$LIBRARY_PATH:~/mydir/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/mydir/lib

macOS

export LIBRARY_PATH=$LIBRARY_PATH:~/mydir/lib
export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:~/mydir/lib

Criar

Programa de exemplo

Com a biblioteca C do TensorFlow instalada, crie um programa de exemplo com o seguinte código-fonte (hello_tf.c):

#include <stdio.h>
#include <tensorflow/c/c_api.h>

int main() {
  printf("Hello from TensorFlow C library version %s\n", TF_Version());
  return 0;
}

Compilar

Compile o programa de exemplo para criar um executável e execute:

gcc hello_tf.c -ltensorflow -o hello_tf

./hello_tf

O comando gera: Hello from TensorFlow C library version number

Se o programa não for criado, verifique se o gcc tem acesso à biblioteca C do TensorFlow. Se extraído para /usr/local, transmita explicitamente o local da biblioteca para o compilador:

gcc -I/usr/local/include -L/usr/local/lib hello_tf.c -ltensorflow -o hello_tf

Criar a partir de código-fonte

O TensorFlow tem código aberto. Leia as instruções para criar a biblioteca C do TensorFlow a partir do código-fonte.