Instala TensorFlow para C

TensorFlow proporciona una API para C que se puede usar a la hora de compilar vinculaciones con otros lenguajes. La API está definida en c_api.h y se diseñó para ofrecer simpleza y uniformidad más que conveniencia.

Paquetes C de Nightly Libtensorflow

Los paquetes de Libtensorflow se compilan durante la noche y se suben a GCS para todas las plataformas compatibles. Se cargan en el depósito de GCS ibtensorflow-nightly y se indexan por sistema operativo y fecha de compilación. Para el caso de los objetos compartidos de macOS y Linux, tenemos una secuencia de comandos que cambia el nombre de los archivos .so a versiones con la fecha actual y los copia en el directorio con los artefactos.

Plataformas compatibles

TensorFlow para C es compatible con los siguientes sistemas:

  • Linux, 64 bits, x86
  • macOS, versión 10.12.6 (Sierra) o versiones posteriores
  • Windows, 64 bits, x86

Configuración

Descarga

Biblioteca de TensorFlow para CURL
Linux
Solo para CPU con Linux https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-linux-x86_64-2.6.0.tar.gz
Compatibilidad con GPU en Linux https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-linux-x86_64-2.6.0.tar.gz
macOS
Solo para CPU con macOS https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-darwin-x86_64-2.6.0.tar.gz
Windows
Solo para CPU con Windows https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-windows-x86_64-2.6.0.zip
Solo para GPU con Windows https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-gpu-windows-x86_64-2.6.0.zip

Extrae

Extrae el archivo descargado, que contiene los archivos de encabezado que se incluirán en tu programa C y las bibliotecas compartidas con las que se vinculará.

En Linux y macOS, es posible que quieras extraer en /usr/local/lib:

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

Vinculador

En Linux o macOS, si extraes la biblioteca C de TensorFlow en un directorio del sistema, como /usr/local, configura el vinculador con ldconfig:

sudo ldconfig

Si extraes la biblioteca C de TensorFlow en un directorio que no sea del sistema, como ~/mydir, configura las variables de entorno del 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

Crea

Programa de ejemplo

Con la biblioteca de TensorFlow para C instalada, crea un programa de ejemplo con el siguiente código fuente (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;
}

Compila

Compila el programa de ejemplo para crear un archivo ejecutable. Luego, ejecuta lo siguiente:

gcc hello_tf.c -ltensorflow -o hello_tf

./hello_tf

El resultado del comando es el siguiente: Hello from TensorFlow C library version number

Si el programa no se compila, asegúrate de que gcc pueda acceder a la biblioteca de TensorFlow para C. Si se extrae en /usr/local, asegúrate de pasar explícitamente la ubicación de la biblioteca al compilador:

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

Compila a partir de código fuente

TensorFlow es de código abierto. Lee las instrucciones para compilar la biblioteca de TensorFlow para C con el código fuente.