התקנת ModelServer
התקנה באמצעות Docker
הקלה ביותר ישר קדימה בדרך של הסכמה לפרסום TensorFlow היא עם תמונות דוקרות . אנו ממליצים בחום על המסלול הזה, אלא אם יש לך צרכים ספציפיים שלא נותנים מענה על ידי ריצה בקונטיינר.
טיפ: זוהי גם הדרך הקלה ביותר להשיג TensorFlow הגשה עובד עם תמיכה GPU .
התקנה באמצעות APT
קבצים בינאריים זמינים
ה-TensorFlow Serving ModelServer הבינארי זמין בשתי גרסאות:
tensorflow-server-מודל: שרת אופטימיזציה מלאה המשתמשת כמה אופטימיזציות מהדר פלטפורמה ספציפית כמו הוראות SSE4 ו AVX. זו אמורה להיות האפשרות המועדפת על רוב המשתמשים, אך ייתכן שלא תפעל בחלק מהמחשבים הישנים יותר.
tensorflow-מודל שרת-אוניברסלי: מלוקט עם אופטימיזציות בסיסי, אך אינו כולל סטים של הוראות ספציפיות פלטפורמה, כך צריך לעבוד על רוב אם לא כל המכונות בחוץ. השתמש באפשרות זו אם tensorflow-model-server
לא עובד בשבילך. שימו לב שהשם הבינארי זהה עבור שתי החבילות, כך שאם כבר התקנת את tensorflow-model-server, תחילה עליך להסיר אותו באמצעות
apt-get remove tensorflow-model-server
הַתקָנָה
הוסף URI הפצה של TensorFlow Serving כמקור חבילה (הגדרה חד פעמית)
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 -
התקן ועדכן את TensorFlow ModelServer
apt-get update && apt-get install tensorflow-model-server
לאחר ההתקנה, בינארי יכול להיות מופעל באמצעות הפקודה tensorflow_model_server
.
אתה יכול לשדרג לגרסה חדשה יותר של tensorflow-model-server עם:
apt-get upgrade tensorflow-model-server
בנייה ממקור
הגישה המומלצת לבנייה ממקור היא להשתמש ב-Docker. תמונות הפיתוח של TensorFlow Serving Docker מכילות את כל התלות שאתה צריך כדי לבנות גרסה משלך של TensorFlow Serving.
לקבלת רשימה של מה תלות אלו, לראות את TensorFlow הגשת הפיתוח Dockerfiles [ CPU , GPU ].
התקנת Docker
הוראות התקנה כלליות באתר הדוקר .
שכפל את סקריפט הבנייה
לאחר התקנת Docker, עלינו להשיג את המקור ממנו אנו רוצים לבנות. נשתמש ב-Git כדי לשכפל את ענף המאסטר של TensorFlow Serving:
git clone https://github.com/tensorflow/serving.git
cd serving
לִבנוֹת
כדי לבנות בסביבה הרמטית עם כל תלות טופל, נשתמש run_in_docker.sh
סקריפט. סקריפט זה מעביר פקודות build אל קונטיינר Docker. כברירת מחדל, הסקריפט ייבנה עם תמונת הפיתוח הלילית האחרונה של Docker.
TensorFlow Serving משתמש ב-Bazel ככלי הבנייה שלה. אתה יכול להשתמש בפקודות Bazel כדי לבנות מטרות בודדות או את עץ המקור כולו.
כדי לבנות את כל העץ, בצע:
tools/run_in_docker.sh bazel build -c opt tensorflow_serving/...
קבצים בינאריים ממוקמים בספריית bazel-bin, וניתן להפעיל אותם באמצעות פקודה כמו:
bazel-bin/tensorflow_serving/model_servers/tensorflow_model_server
כדי לבדוק את המבנה שלך, בצע:
tools/run_in_docker.sh bazel test -c opt tensorflow_serving/...
עיין ההדרכה הבסיסית וכן הדרכה מתקדמת עבור דוגמאות מעמיקות יותר של ריצת TensorFlow הגשה.
בניית גרסאות ספציפיות של TensorFlow Serving
אם אתה רוצה לבנות על ענף מסוים (כגון ענף שחרור), לעבור -b <branchname>
אל git clone
הפקודה.
אנו גם רוצים להתאים את הסביבה לבנות עבור סניף של קוד, על ידי העברת run_in_docker.sh
התסריט בתמונת הפיתוח הדוקרת היינו רוצה להשתמש.
לדוגמה, כדי לבנות את גרסה 1.10 של 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/...
...
מבנה אופטימלי
אם תרצה ליישם אופטימיזציות מומלץ בדרך כלל, כולל ניצול סטים של הוראות ספציפיות פלטפורמה המעבד שלך, אתה יכול להוסיף --config=nativeopt
לפקודות לבנות בזל בעת בניית TensorFlow הגשה.
לדוגמה:
tools/run_in_docker.sh bazel build --config=nativeopt tensorflow_serving/...
אפשר גם לבצע קומפילציה באמצעות ערכות הוראות ספציפיות (למשל AVX). בכול מקום שאתם רואים bazel build
בתיעוד, פשוט להוסיף את הדגלים המתאימים:
סט הוראות | דגלים |
---|---|
AVX | --copt=-mavx |
AVX2 | --copt=-mavx2 |
FMA | --copt=-mfma |
SSE 4.1 | --copt=-msse4.1 |
SSE 4.2 | --copt=-msse4.2 |
הכל נתמך על ידי מעבד | --copt=-march=native |
לדוגמה:
tools/run_in_docker.sh bazel build --copt=-mavx2 tensorflow_serving/...
בנייה עם תמיכה ב-GPU
על מנת לבנות גרסה מותאמת אישית של TensorFlow הגשה עם תמיכת GPU, אנו ממליצים לך לבנות עם התמונות הדוקרות סופק , או לפעול לפי הגישה ב GPU Dockerfile .
TensorFlow Serving Python API PIP חבילת
כדי להפעיל קוד לקוח Python ללא צורך לבנות את ה- API, אתה יכול להתקין את tensorflow-serving-api
חבילת PIP באמצעות:
pip install tensorflow-serving-api