Eseguire i notebook di Jupyter Notebook nell'area di lavoro

Questo articolo illustra come eseguire i notebook di Jupyter all'interno dell'area di lavoro di studio di Azure Machine Learning. Esistono anche altri modi per eseguire il notebook: Jupyter, JupyterLab e Visual Studio Code. VS Code Desktop può essere configurato per accedere all'istanza di ambiente di calcolo. In alternativa, usare VS Code per il Web, direttamente dal browser e senza installazioni o dipendenze necessarie.

È consigliabile provare VS Code per il Web per sfruttare l'ambiente di sviluppo avanzato e di integrazione semplice che offre. VS Code per il Web offre molte delle funzionalità di VS Code Desktop più apprezzate, tra cui l'evidenziazione della ricerca e della sintassi durante la navigazione e la modifica. Per altre informazioni sull'uso di VS Code Desktop e VS Code per il Web, vedere Avviare Visual Studio Code integrato con Azure Machine Learning (anteprima) e Lavorare in VS Code da remoto con connessione a un'istanza di ambiente di calcolo (anteprima).

Indipendentemente dalla soluzione usata per eseguire il notebook, si avrà accesso a tutti i file dell'area di lavoro. Per informazioni su come creare e gestire file, inclusi i notebook, vedere Creare e gestire file nell'area di lavoro.

La parte restante di questo articolo illustra l'esperienza per l'esecuzione del notebook direttamente in studio.

Importante

Le funzionalità contrassegnate come (anteprima) sono messe a disposizione senza contratto di servizio e non sono consigliate per i carichi di lavoro di produzione. Alcune funzionalità potrebbero non essere supportate o potrebbero presentare funzionalità limitate. Per altre informazioni, vedere le Condizioni supplementari per l'uso delle anteprime di Microsoft Azure.

Prerequisiti

  • Una sottoscrizione di Azure. Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
  • Un'area di lavoro di Machine Learning. Vedere Creare le risorse dell'area di lavoro.
  • L'identità utente deve avere accesso all'account di archiviazione predefinito dell'area di lavoro. La lettura, la modifica o la creazione di notebook dipende dal livello di accesso all'area di lavoro. Ad esempio, un collaboratore può modificare il notebook, mentre un lettore può solo visualizzarlo.

Accedere ai notebook dall'area di lavoro

Usare la sezione Notebook dell'area di lavoro per modificare ed eseguire notebook di Jupyter.

  1. Accedere a studio di Azure Machine Learning
  2. Selezionare l'area di lavoro, se non è già aperta
  3. Selezionare Notebook a sinistra

Modificare un notebook

Per modificare un notebook, aprire un notebook nella sezione User files (File utente) dell'area di lavoro. Selezionare la cella che si vuole modificare. Se in questa sezione non sono presenti notebook, vedere Creare e gestire file nell'area di lavoro.

È possibile modificare il notebook senza connettersi a un'istanza di ambiente di calcolo. Quando si vogliono eseguire le celle nel notebook, selezionare o creare un'istanza di ambiente di calcolo. Se si seleziona un'istanza di ambiente di calcolo arrestata, verrà avviata automaticamente quando si esegue la prima cella.

Quando è in esecuzione un'istanza di ambiente di calcolo, è anche possibile usare il completamento del codice di IntelliSense in qualsiasi notebook Python.

È anche possibile avviare Jupyter o JupyterLab dalla barra degli strumenti del notebook. Azure Machine Learning non offre aggiornamenti e correzioni di bug di Jupyter o JupyterLab poiché sono prodotti open source non coperti dal supporto tecnico Microsoft.

Modalità messa a fuoco

Usa la modalità messa a fuoco per espandere la visualizzazione corrente in modo da concentrarsi sulle schede attive. La modalità messa a fuoco nasconde Esplora file notebook.

  1. Nella barra degli strumenti della finestra del terminale, selezionare Modalità messa a fuoco per attivare la modalità messa a fuoco. A seconda della larghezza della finestra, lo strumento potrebbe trovarsi sotto la voce di menu ... sulla barra degli strumenti.

  2. In modalità messa a fuoco, tornare alla visualizzazione standard selezionando Visualizzazione standard.

    Toggle focus mode / standard view

Completamento del codice (IntelliSense)

IntelliSense è un supporto per il completamento del codice che include molte funzionalità: Elenca membri, Informazioni sui parametri, Informazioni rapide e Parola completa. Con poche sequenze di tasti, è possibile:

  • Ottenere informazioni aggiuntive sul codice in uso
  • Tenere traccia dei parametri digitati
  • Aggiungere chiamate a proprietà e metodi

Condividere un notebook

I notebook vengono conservati nell'account di archiviazione dell'area di lavoro e possono essere condivisi con altri utenti, a seconda del livello di accesso all'area di lavoro. Possono aprire e modificare il notebook purché dispongano dell'accesso appropriato. Ad esempio, un collaboratore può modificare il notebook, mentre un lettore può solo visualizzarlo.

Gli altri utenti dell'area di lavoro possono trovare il notebook nella sezione Notebook > File utente > sezione di studio di Azure Machine Learning. Per impostazione predefinita, i notebook si trovano in una cartella con il proprio nome utente e altri utenti possono accedervi.

È anche possibile copiare l'URL dal browser, quando si apre un notebook, e quindi inviarlo ad altri utenti. Se hanno l’autorizzazione appropriata per accedere all'area di lavoro, possono aprire il notebook.

Poiché non si condividono istanze di ambiente di calcolo, gli altri utenti che eseguono il notebook eseguiranno questa operazione nella propria istanza di ambiente di calcolo.

Collaborare con i commenti dei notebook (anteprima)

Usare un commento del notebook per collaborare con altri utenti che hanno accesso al notebook.

Attivare e disattivare il riquadro dei commenti con lo strumento Commenti notebook nella parte superiore del notebook. Se lo schermo non è abbastanza ampio, trovare questo strumento selezionando prima ... alla fine del set di strumenti.

Screenshot of notebook comments tool in the top toolbar.

Indipendentemente dal fatto che il riquadro dei commenti sia visibile o meno, è possibile aggiungere un commento in qualsiasi cella di codice:

  1. Selezionare un testo nella cella di codice. È possibile commentare soltanto il testo in una cella di codice.
  2. Usare lo strumento Thread nuovo commento per creare il commento. Screenshot of add a comment to a code cell tool.
  3. Se il riquadro dei commenti è stato nascosto in precedenza, verrà aperto.
  4. Digitare il commento e pubblicarlo con lo strumento oppure premere Ctrl+Invio.
  5. Dopo aver pubblicato un commento, selezionare ... in alto a destra per:
    • Modificare il commento
    • Chiudere il thread
    • Eliminare il thread

Il testo che è stato commentato verrà visualizzato con un'evidenziazione viola nel codice. Quando si seleziona un commento nel riquadro dei commenti, il notebook scorrerà fino alla cella contenente il testo evidenziato.

Nota

I commenti vengono salvati nei metadati della cella di codice.

Pulire il notebook (anteprima)

Durante la creazione di un notebook, in genere si ottengono le celle usate per l'esplorazione o il debug dei dati. La funzionalità di raccolta consente di ottenere un notebook pulito senza queste celle estranee.

  1. Eseguire tutte le celle del notebook.
  2. Selezionare la cella contenente il codice che si vuole eseguire con il nuovo notebook. Ad esempio, il codice che invia un esperimento o il codice che registra un modello.
  3. Selezionare l'icona Raccogli visualizzata sulla barra degli strumenti della cella. Screenshot: select the Gather icon
  4. Immettere il nome del nuovo notebook "raccolto".

Il nuovo notebook contiene solo celle di codice, con tutte le celle necessarie per produrre gli stessi risultati della cella selezionata per la raccolta.

Salvataggio e checkpoint di un notebook

Azure Machine Learning crea un file di checkpoint quando si crea un file ipynb.

Nella barra degli strumenti del notebook, selezionare il menu e quindi File>Salvataggio e checkpoint per salvare manualmente il notebook e aggiungerà un file di checkpoint associato al notebook.

Screenshot of save tool in notebook toolbar

Ogni notebook viene salvato automaticamente ogni 30 secondi. Il salvataggio automatico aggiorna solo il file ipynb iniziale, non il file del checkpoint.

Selezionare Checkpoint nel menu del notebook per creare un checkpoint denominato e ripristinare il notebook a un checkpoint salvato.

Esportare un notebook

Nella barra degli strumenti del notebook, selezionare il menu e quindi Esporta come per esportare il notebook come uno dei tipi di file supportati:

  • Notebook
  • Python
  • HTML
  • LaTeX

Export a notebook to your computer

Il file esportato viene salvato nel computer.

Eseguire un notebook o uno script Python

Per eseguire un notebook o uno script Python, connettersi prima a un'istanza di ambiente di calcolo in esecuzione.

  • Se non è presente un'istanza di calcolo, seguire questa procedura per crearne una:

    1. Nella barra degli strumenti del notebook o dello script, selezionare + Nuovo calcolo a destra dell'elenco a discesa Calcolo. A seconda delle dimensioni dello schermo, può trovarsi all'interno di un menu .... Create a new compute
    2. Assegnare un nome al calcolo e scegliere le dimensioni della macchina virtuale.
    3. Seleziona Crea.
    4. L'istanza di ambiente di calcolo è connessa automaticamente al file. È ora possibile eseguire le celle del notebook o lo script Python usando lo strumento a sinistra dell'istanza di ambiente di calcolo.
  • Se si dispone di un'istanza di ambiente di calcolo arrestata, selezionare Avvia calcolo a destra dell'elenco a discesa Calcolo. A seconda delle dimensioni dello schermo, può trovarsi all'interno di un menu ....

    Start compute instance

Dopo aver eseguito la connessione a un'istanza di calcolo, usare la barra degli strumenti per eseguire tutte le celle del notebook o premere Ctrl + Invio per eseguire una singola cella selezionata.

È possibile visualizzare e usare solo le istanze di calcolo create. I file della cartella User files (File utente) vengono archiviati separatamente dalla macchina virtuale e sono condivisi tra tutte le istanze di calcolo nell'area di lavoro.

Esplorare le variabili nel notebook

Sulla barra degli strumenti del notebook, usare lo strumento Esplora variabili per visualizzare il nome, il tipo, la lunghezza e i valori di esempio per tutte le variabili create nel notebook.

Screenshot: Variable explorer tool

Selezionare lo strumento per visualizzare la finestra dello strumento di esplorazione delle variabili.

Screenshot: Variable explorer window

Sulla barra degli strumenti del notebook, usare lo strumento Sommario per visualizzare o nascondere il sommario. Avviare una cella di markdown con un'intestazione per aggiungerla al sommario. Selezionare una voce nella tabella per scorrere fino a quella cella nel notebook.

Screenshot: Table of contents in the notebook

Modificare l'ambiente del notebook

La barra degli strumenti del notebook consente di modificare l'ambiente in cui viene eseguito il notebook.

Queste azioni non modificheranno lo stato del notebook o i valori delle variabili nel notebook:

Azione Risultato
Arrestare il kernel Vengono arrestate tutte le celle in esecuzione. Quando si esegue una cella, il kernel viene riavviato automaticamente.
Passare a un'altra sezione dell'area di lavoro Vengono arrestate le celle in esecuzione.

Queste azioni reimposteranno lo stato del notebook e ripristineranno tutte le variabili nel notebook.

Azione Risultato
Cambiare il kernel Il notebook usa il nuovo kernel
Cambiare l'ambiente di calcolo Il notebook usa automaticamente il nuovo calcolo.
Reimpostare il calcolo Viene riavviato quando si tenta di eseguire una cella
Arrestare il calcolo Non vengono eseguite celle
Aprire il notebook in Jupyter o JupyterLab Il notebook viene aperto in una nuova scheda.

Aggiungere nuovi kernel

Usare il terminale per creare e aggiungere nuovi kernel all'istanza di ambiente di calcolo. Il notebook rileverà automaticamente tutti i kernel Jupyter installati nell'istanza di calcolo connessa.

Usare l'elenco a discesa del kernel sulla destra per passare a uno dei kernel installati.

Gestire pacchetti

Poiché l'istanza di ambiente di calcolo ha più kernel, assicurarsi di usare le funzioni magic%pip o %conda, che installano i pacchetti nel kernel attualmente in esecuzione. Non usare !pip o !conda, che fa riferimento a tutti i pacchetti (inclusi i pacchetti all'esterno del kernel attualmente in esecuzione).

Indicatori di stato

Un indicatore accanto all'elenco a discesa Compute (Calcolo) mostra lo stato del calcolo. Lo stato è visualizzato anche nell'elenco a discesa.

Colore Stato del calcolo
Verde Esecuzione del calcolo
Rosso Calcolo non riuscito
Nero Calcolo arrestato
Blu chiaro Creazione, avvio, riavvio, configurazione del calcolo
Grigio Eliminazione, arresto del calcolo

Un indicatore accanto all'elenco a discesa Kernel mostra lo stato del kernel.

Colore Stato del kernel
Verde Kernel connesso, inattivo, occupato
Grigio Kernel non connesso

Dettagli del calcolo

I dettagli sulle istanze di calcolo sono disponibili nella pagina Compute (Calcolo) in Studio.

Tasti di scelta rapida

Analogamente ai notebook di Jupyter, i notebook di Azure Synapse Studio hanno un'interfaccia utente modale. La tastiera esegue diverse operazioni a seconda della modalità in cui si trova la cella del notebook. I notebook di Azure Machine Learning supportano le due modalità seguenti per una cella di codice specificata, ovvero la modalità di comando e la modalità di modifica.

Tasti di scelta rapida in modalità comando

Una cella è in modalità di comando quando non è presente un cursore di testo che richiede di digitare. Quando una cella è in modalità di comando, è possibile modificare il notebook nel suo complesso, ma non digitare in singole celle. Immettere la modalità comando premendo ESC o usando il mouse per selezionare un punto all'esterno dell'area dell'editor di una cella. Il bordo sinistro della cella attiva è completamente blu e il relativo pulsante Esegui è blu.

Notebook cell in command mode

Collegamento Descrizione
INVIO Immettere la modalità di modifica
MAIUSC+INVIO Eseguire la cella, selezionare di seguito
Control/Command + Invio Esegui cella
Alt + Invio Eseguire la cella, inserire la cella di codice seguente
Control/Command + Alt + Invio Eseguire la cella, inserire la cella di markdown seguente
Alt + R Esegui tutto
Y Convertire la cella in codice
M Convertire la cella in markdown
Su/K Selezionare la cella in alto
Giù/J Selezionare la cella in basso
Un Inserire la cella di codice in alto
G Inserire cella di codice in basso
Control/Command + Maiusc + A Inserire la cella di markdown in alto
Control/Command + Maiusc + B Inserire la cella di markdown in basso
X Tagliare la cella selezionata
A Copiare la cella selezionata
Maiusc + V Incollare la cella selezionata in alto
V Incollare la cella selezionata in basso
D D Eliminare la cella selezionata
O Attiva/Disattiva Output
Maiusc + O Attivare/disattivare lo scorrimento dell'output
I I Interrompere il kernel
0 0 Riavviare il kernel
Maiusc + Barra spaziatrice Scorri verso l'alto
Space Scorri verso il basso
Tab Modificare lo stato attivo sull'elemento attivabile successivo (quando la tabulazione è disabilitata)
Control/Command + S Salvare il notebook
1 Passare a h1
2 Passare a h2
3 Passare a h3
4 Passare a h4
5 Passare a h5
6 Passare a h6

Tasti di scelta rapida per la modalità di modifica

La modalità di modifica è indicata da un cursore di testo che richiede di digitare nell'area dell'editor. Quando una cella si trova in modalità di modifica, è possibile digitare nella cella. Attivare la modalità di modifica premendo Enter o selezionando l'area dell'editor di una cella. Il bordo sinistro della cella attiva è verde e tratteggiato e il pulsante Esegui è verde. Nella cella viene visualizzata anche la richiesta di cursore in modalità di modifica.

Notebook cell in edit mode

Usando i tasti di scelta rapida seguenti, è possibile esplorare ed eseguire più facilmente il codice nei notebook di Azure Machine Learning in modalità di modifica.

Collegamento Descrizione
ESC Immettere la modalità di comando
Control/Command + Spazio Attivare IntelliSense
MAIUSC+INVIO Eseguire la cella, selezionare di seguito
Control/Command + Invio Esegui cella
Alt + Invio Eseguire la cella, inserire la cella di codice seguente
Control/Command + Alt + Invio Eseguire la cella, inserire la cella di markdown seguente
Alt + R Eseguire tutte le celle
Freccia SU Spostare il cursore verso l'alto o sulla cella precedente
Giù Spostare il cursore verso il basso o sulla cella successiva
Control/Command + S Salvare il notebook
Control/Command + Su Andare all'inizio della cella
Control/Command + Giù Andare alla fine della cella
Tab Completamento del codice o rientro (se è abilitata l'opzione di tabulazione)
Control/Command + M Abilitare/disabilitare la tabulazione
Control/Command + ] Impostare un rientro
Control/Command + [ Annullare l'impostazione di un rientro
Control/Command + A Seleziona tutto
Control/Command + Z Annulla
Control/Command + Maiusc + Z Ripeti
Control/Command + Y Ripeti
Control/Command + Home Andare all'inizio della cella
Control/Command + Fine Andare alla fine della cella
Control/Command + Sinistra Andare a sinistra di una parola
Control/Command + Destra Andare a destra di una parola
Control/Command + Backspace Eliminare la parola prima
Control/Command + Canc Eliminare la parola dopo
Control/Command + / Attivare/disattivare commento nella cella

Risoluzione dei problemi

  • Connessione a un notebook: se non è possibile connettersi a un notebook, assicurarsi che la comunicazione del WebSocket non sia disabilitata. Per il corretto funzionamento della funzionalità Jupyter dell'istanza di ambiente di calcolo, la comunicazione tramite WebSocket deve essere abilitata. Assicurarsi che la rete consenta le connessioni websocket a *.instances.azureml.net e *.instances.azureml.ms.

  • Endpoint privato: quando un'istanza di ambiente di calcolo viene distribuita in un'area di lavoro con un endpoint privato, è possibile accedervi solo dall'interno della rete virtuale. Se si usa un file DNS o host personalizzato, aggiungere una voce per < instance-name >.< region >.instances.azureml.ms con l'indirizzo IP privato dell'endpoint privato dell'area di lavoro. Per altre informazioni, vedi l'articolo sul DNS personalizzato.

  • Arresto anomalo del kernel: se il kernel si è arrestato in modo anomalo ed è stato riavviato, è possibile eseguire il comando seguente per esaminare il log di Jupyter e scoprire altri dettagli: sudo journalctl -u jupyter. Se i problemi del kernel persistono, è consigliabile usare un'istanza di ambiente di calcolo con più memoria.

  • Kernel non trovato o operazioni kernel disabilitate: quando si usa il kernel Python 3.8 predefinito in un'istanza di calcolo, è possibile che venga visualizzato un errore del tipo "Kernel non trovato" oppure "Operazioni del kernel disabilitate". Per correggere il problema, usare uno dei metodi seguenti:

    • Creare una nuova istanza di ambiente di calcolo. Ciò userà una nuova immagine in cui è stato risolto questo problema.
    • Usare kernel Py 3.6 nell'istanza dell'ambiente di calcolo esistente.
    • Da un terminale nell'ambiente py38 predefinito eseguire pip install ipykernel==6.6.0 O pip install ipykernel==6.0.3
  • Token scaduto: se si verifica un problema di token scaduti, disconnettersi da studio di Azure Machine Learning, accedere di nuovo e quindi riavviare il kernel del notebook.

  • Limite di caricamento file: i file caricati tramite Esplora file del notebook devono avere dimensioni inferiori a 5 TB. Se è necessario caricare un file di dimensioni superiori, è consigliabile usare l'SDK per caricare i dati in un archivio dati. Per ulteriori informazioni, consultare Creare gli asset di dati.

Passaggi successivi