1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/paddlepaddle-PLSC

Клонировать/Скачать
serving.md 4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 29.11.2024 15:58 40a2132

Прогнозирование развёртывания

Экспорт прогностической модели

Обычно в процессе обучения PLSC сохраняет модель, содержащую только информацию о параметрах модели, но не структуру прогностической модели. Чтобы развернуть прогностическую библиотеку PLSC, необходимо экспортировать предварительно обученную модель в качестве прогностической. Прогностическая модель включает необходимые параметры и структуру модели для последующего прогнозирования (см. раздел «Руководство по использованию прогностической библиотеки»).

Следующий код позволяет экспортировать предварительно обученную модель как прогностическую «export_for_inference.py»:

from plsc import Entry

if __name__ == "__main__":
    ins = Entry()
    ins.set_checkpoint_dir('./pretrain_model')
    ins.set_model_save_dir('./inference_model')

    ins.convert_for_prediction()

Здесь «./pretrain_model» — это каталог с параметрами предварительно обученной модели, а «./inference_model» — каталог для прогностической модели.

Чтобы запустить задачу экспорта, выполните следующую команду:

python export_for_inference.py

Руководство по использованию прогностической библиотеки

Требования к версии Python:

  • Python 3

Установка

Установка на сервере

pip3 install plsc-serving

Установка на клиенте

  • Установите ujson:
pip install ujson

Руководство по использованию

Использование на сервере

В настоящее время поддерживается только прогнозирование на GPU-машинах с CUDA версии 9.0 или выше.

Для запуска сервера используйте следующий скрипт:

from plsc_serving.run import PLSCServer
fs = PLSCServer()
#Укажите путь к используемой модели, str, абсолютный путь
fs.with_model(model_path = '/XXX/XXX')
#Запустите один процесс, gpu_index указывает используемый графический процессор, int, по умолчанию 0; port указывает используемый порт, int, по умолчанию 8866
fs.run(gpu_index = 0, port = 8010)

Использование на клиенте

Для запуска клиента используйте следующий скрипт:

from face_service import FaceService
with open('./data/00000000.jpg', 'rb') as f:
    image = f.read()
fc = FaceService()
#Добавьте соединение с сервером, str, по умолчанию localhost:8010
fc.connect('127.0.0.1:8010')
#Вызовите прогноз на сервере, входные данные - список образцов list, возвращаемое значение - результат встраивания образцов, list, форма - размер пакета * размер встраивания
result = fc.encode([image])
print(result[0])
bc.close()
1
https://api.gitlife.ru/oschina-mirror/paddlepaddle-PLSC.git
git@api.gitlife.ru:oschina-mirror/paddlepaddle-PLSC.git
oschina-mirror
paddlepaddle-PLSC
paddlepaddle-PLSC
master