Instalación

Instalación de ModelServer

Instalación usando Docker

La forma más fácil y más directo de la utilización de la porción es TensorFlow con imágenes acoplables . Recomendamos encarecidamente esta ruta a menos que tenga necesidades específicas que no se abordan mediante la ejecución en un contenedor.

CONSEJO: Esta es también la manera más fácil de conseguir TensorFlow Sirviendo a trabajar con el apoyo de la GPU .

Instalación mediante APT

Binarios disponibles

El binario TensorFlow Serving ModelServer está disponible en dos variantes:

tensorflow-modelo-servidor: Totalmente optimizado servidor que utiliza algunas optimizaciones del compilador plataforma específicas como las instrucciones SSE4 y AVX. Esta debería ser la opción preferida para la mayoría de los usuarios, pero es posible que no funcione en algunas máquinas más antiguas.

tensorflow modelo de servidor universal compilado con optimizaciones básicas, pero no incluye los conjuntos de instrucciones específicas de la plataforma, por lo que debería funcionar en la mayoría, si no todas las máquinas que hay. Use esto si tensorflow-model-server no funciona para usted. Tenga en cuenta que el nombre binario es el mismo para ambos paquetes, por lo que si ya instaló tensorflow-model-server, primero debe desinstalarlo usando

apt-get remove tensorflow-model-server

Instalación

  1. Agregue el URI de distribución de TensorFlow Serving como fuente de paquete (configuración única)

    echo "deb [arch=amd64] http://storage.googleapis.com/tensorflow-serving-apt stable tensorflow-model-server tensorflow-model-server-universal" | sudo tee /etc/apt/sources.list.d/tensorflow-serving.list && \
    curl https://storage.googleapis.com/tensorflow-serving-apt/tensorflow-serving.release.pub.gpg | sudo apt-key add -
    
  2. Instalar y actualizar TensorFlow ModelServer

    apt-get update && apt-get install tensorflow-model-server
    

Una vez instalado, el binario puede ser invocada mediante el comando tensorflow_model_server .

Puede actualizar a una versión más reciente de tensorflow-model-server con:

apt-get upgrade tensorflow-model-server

Construyendo desde la fuente

El enfoque recomendado para compilar desde la fuente es usar Docker. Las imágenes de desarrollo de TensorFlow Serving Docker encapsulan todas las dependencias que necesitas para crear tu propia versión de TensorFlow Serving.

Para obtener una lista de lo que estas dependencias son, ver el TensorFlow servicio del desarrollo Dockerfiles [ CPU , GPU ].

Instalación de Docker

Instrucciones generales de instalación están en el sitio del estibador .

Clonar el script de compilación

Después de instalar Docker, necesitamos obtener la fuente desde la que queremos compilar. Usaremos Git para clonar la rama maestra de TensorFlow Serving:

git clone https://github.com/tensorflow/serving.git
cd serving

Construir

Con el fin de construir en un ambiente hermético con todas las dependencias cuidado, vamos a utilizar el run_in_docker.sh guión. Este script pasa los comandos de compilación a un contenedor de Docker. De forma predeterminada, el script se compilará con la última imagen de desarrollo de Docker nocturna.

TensorFlow Serving usa Bazel como su herramienta de compilación. Puede utilizar los comandos de Bazel para crear objetivos individuales o todo el árbol de fuentes.

Para construir el árbol completo, ejecute:

tools/run_in_docker.sh bazel build -c opt tensorflow_serving/...

Los binarios se colocan en el directorio bazel-bin y se pueden ejecutar con un comando como:

bazel-bin/tensorflow_serving/model_servers/tensorflow_model_server

Para probar su compilación, ejecute:

tools/run_in_docker.sh bazel test -c opt tensorflow_serving/...

Ver el tutorial básico y tutorial avanzado para más ejemplos detallados de la ejecución de TensorFlow Servir.

Compilar versiones específicas de TensorFlow Serving

Si usted quiere construir a partir de una rama específica (tal como una rama de liberación), pase -b <branchname> al git clone comando.

También vamos a querer que coincida con el entorno de construcción para esa rama de código, pasando el run_in_docker.sh escritura de la imagen de desarrollo del estibador que nos gustaría utilizar.

Por ejemplo, para compilar la versión 1.10 de TensorFlow Serving:

$ git clone -b r1.10 https://github.com/tensorflow/serving.git
...
$ cd serving
$ tools/run_in_docker.sh -d tensorflow/serving:1.10-devel \
  bazel build tensorflow_serving/...
...
Construcción optimizada

Si desea aplicar optimizaciones generalmente recomendadas, incluyendo la utilización de conjuntos de instrucciones específicas de la plataforma para su procesador, puede agregar --config=nativeopt a las órdenes de construcción en la construcción de Bazel TensorFlow Servir.

Por ejemplo:

tools/run_in_docker.sh bazel build --config=nativeopt tensorflow_serving/...

También es posible compilar utilizando conjuntos de instrucciones específicos (por ejemplo, AVX). Siempre que vea bazel build en la documentación, sólo tiene que añadir las banderas correspondientes:

Conjunto de instrucciones Banderas
AVX --copt=-mavx
AVX2 --copt=-mavx2
FMA --copt=-mfma
SSE 4.1 --copt=-msse4.1
SSE 4.2 --copt=-msse4.2
Todo apoyado por procesador --copt=-march=native

Por ejemplo:

tools/run_in_docker.sh bazel build --copt=-mavx2 tensorflow_serving/...
Construyendo con soporte de GPU

Con el fin de construir una versión personalizada de TensorFlow Sirviendo con el apoyo de la GPU, se recomienda ya sea la construcción con las imágenes proporcionadas acoplables , o siguiendo el enfoque de la GPU Dockerfile .

Paquete PIP de la API de Python de TensorFlow

Para ejecutar el código de cliente Python sin la necesidad de construir la API, se puede instalar el tensorflow-serving-api paquete PIP usando:

pip install tensorflow-serving-api