View a markdown version of this page

TorchServe - AWS Deep Learning AMIs

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

TorchServe

TorchServe è uno strumento flessibile per servire modelli di deep learning esportati da PyTorch. TorchServe viene preinstallato con l'AMI Deep Learning con Conda.

Per ulteriori informazioni sull'utilizzo TorchServe, vedere Model Server per la PyTorch documentazione.

Argomenti

Offri un modello di classificazione delle immagini su TorchServe

Questo tutorial mostra come utilizzare un modello di classificazione delle immagini con TorchServe. Utilizza un DenseNet-161 modello fornito da PyTorch. Una volta che il server è in esecuzione, ascolta le richieste di previsione. Quando carichi un'immagine, in questo caso, l'immagine di un gattino, il server restituisce una previsione delle prime 5 classi corrispondenti tra le classi su cui il modello è stato addestrato.

Per fornire un esempio di modello di classificazione delle immagini su TorchServe
  1. Connettiti a un'istanza Amazon Elastic Compute Cloud (Amazon EC2) con Deep Learning AMI con Conda v34 o versione successiva.

  2. Attiva l'ambiente. pytorch_p310

    source activate pytorch_p310
  3. Clona il TorchServe repository, quindi crea una directory in cui archiviare i tuoi modelli. 

    git clone https://github.com/pytorch/serve.git mkdir model_store
  4. Archiviate il modello utilizzando l'archiviatore di modelli. Il extra-files parametro utilizza un file del TorchServe repository, quindi aggiorna il percorso se necessario. Per ulteriori informazioni sull'archiviatore di modelli, vedere Torch Model archiver per. TorchServe

    wget https://download.pytorch.org/models/densenet161-8d451a50.pth torch-model-archiver --model-name densenet161 --version 1.0 --model-file ./serve/examples/image_classifier/densenet_161/model.py --serialized-file densenet161-8d451a50.pth --export-path model_store --extra-files ./serve/examples/image_classifier/index_to_name.json --handler image_classifier
  5. Esegui TorchServe per avviare un endpoint. L'aggiunta > /dev/null interrompe l'output del registro.

    torchserve --start --ncs --model-store model_store --models densenet161.mar > /dev/null
  6. Scarica l'immagine di un gattino e inviala all'endpoint di TorchServe previsione:

    curl -O https://s3.amazonaws.com/model-server/inputs/kitten.jpg curl http://127.0.0.1:8080/predictions/densenet161 -T kitten.jpg

    L'endpoint di previsione restituisce una previsione in JSON simile alle seguenti prime cinque previsioni, in cui l'immagine ha una probabilità del 47% di contenere un gatto egiziano, seguita da una probabilità del 46% che abbia un gatto soriano.

    { "tiger_cat": 0.46933576464653015, "tabby": 0.463387668132782, "Egyptian_cat": 0.0645613968372345, "lynx": 0.0012828196631744504, "plastic_bag": 0.00023323058849200606 }
  7. Al termine del test, interrompi il server:

    torchserve --stop

Altri esempi

TorchServe ha una serie di esempi che puoi eseguire sulla tua istanza DLAMI. Puoi visualizzarli nella pagina degli esempi del repository TorchServe del progetto.

Ulteriori informazioni

Per ulteriore TorchServe documentazione, inclusa la configurazione TorchServe con Docker e le TorchServe funzionalità più recenti, consulta la pagina del TorchServe progetto su GitHub.