Penginstalan

Menginstal ModelServer

Menginstal menggunakan Docker

Cara termudah dan paling mudah untuk menggunakan TensorFlow Serving adalah dengan image Docker . Kami sangat merekomendasikan rute ini kecuali Anda memiliki kebutuhan khusus yang tidak dapat diatasi dengan menjalankannya dalam sebuah container.

TIPS: Ini juga cara termudah agar TensorFlow Serving berfungsi dengan dukungan GPU .

Menginstal menggunakan APT

Biner yang tersedia

Biner TensorFlow Serving ModelServer tersedia dalam dua varian:

tensorflow-model-server : Server yang sepenuhnya dioptimalkan yang menggunakan beberapa optimasi kompiler khusus platform seperti instruksi SSE4 dan AVX. Ini seharusnya menjadi pilihan yang disukai sebagian besar pengguna, namun mungkin tidak berfungsi pada beberapa mesin lama.

tensorflow-model-server-universal : Dikompilasi dengan pengoptimalan dasar, tetapi tidak menyertakan set instruksi khusus platform, jadi harus berfungsi pada sebagian besar, jika tidak semua, mesin di luar sana. Gunakan ini jika tensorflow-model-server tidak berfungsi untuk Anda. Perhatikan bahwa nama binernya sama untuk kedua paket, jadi jika Anda sudah menginstal tensorflow-model-server, Anda harus menghapus instalasinya terlebih dahulu menggunakan

apt-get remove tensorflow-model-server

Instalasi

  1. Tambahkan URI distribusi TensorFlow Serving sebagai sumber paket (penyiapan satu kali)

    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. Instal dan perbarui TensorFlow ModelServer

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

Setelah terinstal, biner dapat dipanggil menggunakan perintah tensorflow_model_server .

Anda dapat meningkatkan versi tensorflow-model-server ke versi yang lebih baru dengan:

apt-get upgrade tensorflow-model-server

Membangun dari sumber

Pendekatan yang disarankan untuk membangun dari sumber adalah dengan menggunakan Docker. Gambar pengembangan TensorFlow Serving Docker merangkum semua dependensi yang Anda perlukan untuk membuat TensorFlow Serving versi Anda sendiri.

Untuk mengetahui daftar dependensi ini, lihat TensorFlow Serving Development Dockerfiles [ CPU , GPU ].

Menginstal Docker

Petunjuk instalasi umum ada di situs Docker .

Kloning skrip build

Setelah menginstal Docker, kita perlu mendapatkan sumber yang ingin kita buat. Kami akan menggunakan Git untuk mengkloning cabang master TensorFlow Serving:

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

Membangun

Untuk membangun lingkungan kedap udara dengan semua dependensi ditangani, kita akan menggunakan skrip run_in_docker.sh . Skrip ini meneruskan perintah build ke container Docker. Secara default, skrip akan dibuat dengan image pengembangan Docker malam terbaru.

TensorFlow Serving menggunakan Bazel sebagai alat pembuatannya. Anda dapat menggunakan perintah Bazel untuk membuat target individual atau keseluruhan pohon sumber.

Untuk membangun keseluruhan pohon, jalankan:

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

Biner ditempatkan di direktori bazel-bin, dan dapat dijalankan menggunakan perintah seperti:

bazel-bin/tensorflow_serving/model_servers/tensorflow_model_server

Untuk menguji build Anda, jalankan:

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

Lihat tutorial dasar dan tutorial lanjutan untuk contoh lebih mendalam dalam menjalankan TensorFlow Serving.

Membuat versi TensorFlow Serving yang spesifik

Jika Anda ingin membangun dari cabang tertentu (seperti cabang rilis), teruskan -b <branchname> ke perintah git clone .

Kami juga ingin mencocokkan lingkungan build untuk cabang kode tersebut, dengan meneruskan skrip run_in_docker.sh image pengembangan Docker yang ingin kami gunakan.

Misalnya, untuk mem-build TensorFlow Serving versi 1.10:

$ 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/...
...
Bangunan yang dioptimalkan

Jika Anda ingin menerapkan pengoptimalan yang direkomendasikan secara umum, termasuk memanfaatkan set instruksi khusus platform untuk prosesor, Anda dapat menambahkan --config=nativeopt ke perintah build Bazel saat membuat TensorFlow Serving.

Misalnya:

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

Dimungkinkan juga untuk mengkompilasi menggunakan set instruksi tertentu (misalnya AVX). Di mana pun Anda melihat bazel build di dokumentasi, cukup tambahkan tanda yang sesuai:

Set Instruksi Bendera
AVX --copt=-mavx
AVX2 --copt=-mavx2
FMA --copt=-mfma
SSE 4.1 --copt=-msse4.1
SSE 4.2 --copt=-msse4.2
Semua didukung oleh prosesor --copt=-march=native

Misalnya:

tools/run_in_docker.sh bazel build --copt=-mavx2 tensorflow_serving/...
Membangun dengan Dukungan GPU

Untuk membuat versi kustom TensorFlow Serving dengan dukungan GPU, sebaiknya buat dengan image Docker yang disediakan , atau ikuti pendekatan di GPU Dockerfile .

TensorFlow Melayani paket PIP API Python

Untuk menjalankan kode klien Python tanpa perlu membuat API, Anda dapat menginstal paket PIP tensorflow-serving-api menggunakan:

pip install tensorflow-serving-api