Per utilizzare la previsione online, puoi interagire con l'API AI Platform Training and Prediction tramite il suo
endpoint globale (ml.googleapis.com
) o tramite uno dei suoi endpoint regionali
(REGION-ml.googleapis.com
). L'utilizzo di un endpoint regionale
per la previsione online offre una protezione aggiuntiva al tuo modello contro
le interruzioni in altre regioni, perché isola le risorse del modello e delle versioni
da altre regioni.
AI Platform Prediction supporta attualmente i seguenti endpoint a livello di regione:
us-central1
us-east1
us-east4
us-west1
northamerica-northeast1
europe-west1
europe-west2
europe-west3
europe-west4
asia-east1
asia-northeast1
asia-southeast1
australia-southeast1
Questa guida mette a confronto i vantaggi e le limitazioni dell'utilizzo degli endpoint regionali rispetto all'endpoint globale. La guida illustra anche l'utilizzo di un'istanza regionale endpoint per la previsione online.
Informazioni sugli endpoint regionali
Gli endpoint a livello di regione hanno diverse differenze fondamentali rispetto all'endpoint globale:
Gli endpoint a livello di regione supportano solo tipi di macchine di Compute Engine (N1). Non puoi utilizzare tipi di macchine legacy (MLS1) su a livello di regione. Ciò significa che tutti i vantaggi e le limitazioni dell'utilizzo Si applicano i tipi di macchine di Compute Engine (N1). Ad esempio, puoi utilizzare le GPU su endpoint regionali, ma al momento non puoi attivare il logging dello stream (console).
Per utilizzare un tipo di macchina Compute Engine (N1), devi utilizzare un endpoint a livello di area geografica.
Gli endpoint regionali supportano solo la previsione online e le spiegazioni dell'IA. I modelli di cui è stato eseguito il deployment negli endpoint regionali non supportano le previsioni in batch.
AI Platform Prediction condivide l'API AI Platform Training and Prediction con AI Platform Training e AI Platform Vizier. Tieni presente che gli endpoint a livello di regione non attualmente supportano AI Platform Training. Solo l'endpoint
us-central1
supporta AI Platform Vizier.Per maggiori dettagli sui metodi API disponibili su quali endpoint, consulta il riferimento API.
I nomi delle risorse AI Platform Prediction sono univoci per il tuo progetto Google Cloud in qualsiasi
a un dato endpoint, ma possono essere duplicati su vari endpoint. Ad esempio,
puoi creare un modello denominato "hello-world" nell'endpoint europe-west4
e
un altro modello denominato "hello-world" nell'endpoint us-central1
.
Quando elenchi i modelli su un endpoint a livello di regione, vengono visualizzati solo i modelli creati su questo endpoint. Analogamente, quando elenchi i modelli nell'endpoint globale, vedi solo i modelli creati nell'endpoint globale.
Endpoint regionali e regioni di endpoint globali
Quando crei una risorsa del modello nell'endpoint globale, puoi specificare una regione per il modello. Quando crei versioni all'interno del modello e fornire previsioni, la previsione nodi vengono eseguiti nella regione specificata.
Quando utilizzi un endpoint a livello di regione, AI Platform Prediction esegue i nodi di previsione in la regione dell'endpoint. Tuttavia, in questo caso AI Platform Prediction fornisce un isolamento aggiuntivo eseguendo tutta l'infrastruttura di AI Platform Prediction nella regione in questione.
Ad esempio, se utilizzi la regione us-east1
sull'endpoint globale,
nodi di previsione vengono eseguiti in us-east1
. Ma l'infrastruttura di AI Platform Prediction
la gestione delle risorse (richieste di routing, gestione della creazione di modelli e versioni,
aggiornamenti e eliminazione; e così via) non vengono necessariamente eseguiti in us-east1
. Il giorno
Se invece utilizzi l'endpoint a livello di regione europe-west4
, la tua previsione
nodi e tutta l'infrastruttura di AI Platform Prediction vengono eseguiti in europe-west4
.
Utilizzo di endpoint a livello di regione
Per utilizzare un endpoint regionale, devi prima creare un modello sull'endpoint regionale. Poi esegui tutte le azioni correlate al modello (come la creazione di un modello) e l'invio di richieste di previsione) sullo stesso endpoint.
Se utilizzi la console Google Cloud, assicurati di selezionare Utilizza regione endpoint quando crei il modello. Esegui tutte le altre Azioni della console Google Cloud come faresti sull'endpoint globale.
Se utilizzi Google Cloud CLI, esegui il flag --region
per la regione
su ogni comando che interagisce con il modello e i suoi
Google Cloud. È incluso quanto segue:
- Tutti i comandi nel comando
gcloud ai-platform models
gruppo di istanze gestite. - Tutti i comandi nel comando
gcloud ai-platform versions
gruppo di istanze gestite. - Tutti i comandi nel comando
gcloud ai-platform operations
gruppo durante l'interazione con operazioni a lunga esecuzione associate a una versione del modello. - La
gcloud ai-platform predict
un comando kubectl. - Il comando
gcloud beta ai-platform explain
.
In alternativa, puoi impostare il ai_platform/region
a una regione specifica
per assicurarti che gcloud CLI utilizzi sempre
l'endpoint regionale corrispondente per i comandi di AI Platform Prediction, anche quando
non specifichi il flag --region
. Questa configurazione non si applica a
dei comandi
gcloud ai-platform operations
gruppo di comandi).
Se interagisci direttamente con l'API AI Platform Training and Prediction (ad esempio utilizzando la libreria client delle API di Google per Python), effettua tutte le richieste API come faresti con l'endpoint globale, ma utilizza l'endpoint regionale. Consulta l'API riferimento per ulteriori dettagli. sui metodi API disponibili sugli endpoint a livello di regione.
I seguenti esempi mostrano come utilizzare un endpoint a livello di regione per creare un modello, creare una versione e inviare una richiesta di previsione online. A utilizza gli esempi, sostituisci REGION ovunque appaia con uno degli regioni in cui sono disponibili endpoint a livello di regione:
us-central1
us-east1
us-east4
us-west1
northamerica-northeast1
europe-west1
europe-west2
europe-west3
europe-west4
asia-east1
asia-northeast1
asia-southeast1
australia-southeast1
Creazione di un modello
Console Google Cloud
Nella console Google Cloud, vai alla pagina Crea modello e seleziona per il tuo progetto Google Cloud:
Assegna un nome al modello, seleziona la casella di controllo Usa endpoint a livello di regione e seleziona La regione dell'endpoint che vuoi utilizzare dalla Regione dall'elenco a discesa.
Fai clic su pulsante Crea.
gcloud
Esegui questo comando:
gcloud ai-platform models create MODEL_NAME \
--region=REGION
Nel comando, sostituisci i seguenti segnaposto:
- MODEL_NAME: un nome scelto per il modello.
- REGION: la regione dell'endpoint che vuoi utilizzare.
Python
Questo esempio utilizza la libreria client dell'API di Google per Python. Prima di poterla utilizzare, devi installare la libreria client dell'API di Google per Python e configurare l'autenticazione nel tuo sviluppo completamente gestito di Google Cloud.
Esegui il seguente codice Python:
from google.api_core.client_options import ClientOptions
from googleapiclient import discovery
endpoint = 'https://REGION-ml.googleapis.com'
client_options = ClientOptions(api_endpoint=endpoint)
ml = discovery.build('ml', 'v1', client_options=client_options)
request_body = { 'name': 'MODEL_NAME' }
request = ml.projects().models().create(parent='projects/PROJECT_ID',
body=request_body)
response = request.execute()
print(response)
Nel codice, sostituisci i seguenti segnaposto:
- REGION: la regione dell'endpoint che vuoi utilizzare.
- MODEL_NAME: un nome scelto per il modello.
- PROJECT_ID: l'ID del tuo progetto Google Cloud.
Scopri di più sulla creazione di un modello.
Creazione di una versione del modello
In questo esempio si presuppone che tu abbia già caricato gli elementi del modello compatibili su Cloud Storage.
Console Google Cloud
Utilizzando il modello creato nella sezione precedente, segui la guida per la creazione di una versione del modello nella console Google Cloud.
gcloud
Questo esempio presuppone che tu abbia già caricato un modello compatibile artefatti a Cloud Storage. Esegui questo comando:
gcloud ai-platform versions create VERSION_NAME \
--region=REGION \
--model=MODEL_NAME \
--framework=FRAMEWORK \
--machine-type=MACHINE_TYPE \
--origin=MODEL_DIRECTORY \
--python-version=3.7 \
--runtime-version=2.11
Nel comando, sostituisci i seguenti segnaposto:
- REGION: la regione dell'endpoint utilizzata nella sezione precedente.
- VERSION_NAME: un nome scelto da te per la tua versione.
- MODEL_NAME: il nome del modello creato nella sezione precedente.
- FRAMEWORK: il framework utilizzato per creare gli artefatti del modello.
- MACHINE_TYPE: A Tipo di macchina Compute Engine (N1).
- MODEL_DIRECTORY: un URI Cloud Storage del tuo modello (che inizia con "gs://").
Python
Esegui il seguente codice Python:
from google.api_core.client_options import ClientOptions
from googleapiclient import discovery
endpoint = 'https://REGION-ml.googleapis.com'
client_options = ClientOptions(api_endpoint=endpoint)
ml = discovery.build('ml', 'v1', client_options=client_options)
request_body = { 'name': 'VERSION_NAME',
'deploymentUri': 'MODEL_DIRECTORY',
'runtimeVersion': '2.11',
'machineType': 'MACHINE_TYPE',
'framework': 'FRAMEWORK',
'pythonVersion': '3.7'}
request = ml.projects().models().versions().create(
parent='projects/PROJECT_ID/models/MODEL_NAME',
body=request_body)
response = request.execute()
print(response)
Nel codice, sostituisci i seguenti segnaposto:
- REGION: la regione dell'endpoint utilizzato nell'esperienza precedente .
- VERSION_NAME: un nome scelto per la versione.
- MODEL_DIRECTORY: un URI Cloud Storage del tuo modello (che inizia con "gs://").
- MACHINE_TYPE: un tipo di macchina Compute Engine (N1).
- FRAMEWORK: il framework utilizzato per creare gli elementi del modello.
- PROJECT_ID: l'ID del tuo progetto Google Cloud.
- MODEL_NAME: il nome del modello che hai creato nella sezione precedente.
Scopri di più sulla creazione di una versione del modello.
Invio di una richiesta di previsione online
Console Google Cloud
Nella console Google Cloud, vai alla pagina Modelli:
Nell'elenco a discesa Regione, seleziona la regione dell'endpoint utilizzato dal modello. Fai clic sul nome del modello che hai creato in una sezione precedente per passare alla pagina Dettagli modello.
Fai clic sul nome della versione che hai creato in una sezione precedente per accedere alla pagina Dettagli versione.
Fai clic sulla scheda Testa e utilizza. Inserisci una o più istanze dei dati di input e fai clic sul pulsante Test per inviare una richiesta di previsione online.
gcloud
Questo esempio presuppone che tu abbia salvato l'input di previsione in un file JSON delimitato da riga nel tuo ambiente locale. Esegui questo comando:
gcloud ai-platform predict \
--region=REGION \
--model=MODEL_NAME \
--version=VERSION_NAME \
--json-request=INPUT_PATH
Nel comando, sostituisci i seguenti segnaposto:
- REGION: la regione dell'endpoint utilizzato nell'esperienza precedente sezioni.
- MODEL_NAME: il nome del modello creato in una sezione precedente.
- VERSION_NAME: il nome della versione del modello che hai creato nella sezione precedente.
- INPUT_PATH: il percorso nel file system locale di un file JSON con input di previsione.
Python
Esegui il seguente codice Python:
from google.api_core.client_options import ClientOptions
from googleapiclient import discovery
endpoint = 'https://REGION-ml.googleapis.com'
client_options = ClientOptions(api_endpoint=endpoint)
ml = discovery.build('ml', 'v1', client_options=client_options)
request_body = { 'instances': INSTANCES }
request = ml.projects().predict(
name='projects/PROJECT_ID/models/MODEL_NAME/VERSION_NAME',
body=request_body)
response = request.execute()
print(response)
Nel codice, sostituisci i seguenti segnaposto:
- REGION: la regione dell'endpoint utilizzata nelle sezioni precedenti.
- INSTANCES: un elenco di input di previsione di Compute Engine.
- MODEL_NAME: il nome del modello creato in una sezione precedente.
- VERSION_NAME: il nome della versione che hai creato nell' sezione precedente.
Scopri di più su come ottenere le predizioni online.
Passaggi successivi
- Visualizza le differenze nella disponibilità regionale per regione endpoint e l'endpoint globale. Sono incluse le differenze nelle GPU la disponibilità del servizio.
- Scopri di più sui tipi di macchine di Compute Engine (N1), obbligatori per gli endpoint a livello di area geografica.
- Scopri altre opzioni aggiuntive che puoi configurare quando crei modelli e versioni.