Per eseguire il deployment di un modello utilizzando gcloud CLI o l'API Vertex AI, devi prima creare un endpoint pubblico.
Se hai già un endpoint pubblico esistente, puoi saltare questo passaggio e procedere a Eseguire il deployment di un modello utilizzando gcloud CLI o l'API Vertex AI.
Questo documento descrive la procedura per creare un nuovo endpoint pubblico.
Crea un endpoint pubblico dedicato (consigliato)
Il timeout predefinito delle richieste per un endpoint pubblico dedicato è di 10 minuti.
Nell'API Vertex AI e nell'SDK Vertex AI per Python, puoi specificare facoltativamente un timeout della richiesta diverso aggiungendo un oggetto clientConnectionConfig
contenente un nuovo valore inferenceTimeout
, come mostrato nell'esempio seguente. Il valore massimo del timeout è
3600 secondi (1 ora).
Google Cloud console
-
Nella console Google Cloud , nella sezione Vertex AI, vai alla pagina Previsione online.
Vai alla pagina Previsione online - Fai clic su Crea.
- Nel riquadro Nuovo endpoint:
- Inserisci il nome dell'endpoint.
- Seleziona Standard per il tipo di accesso.
- Seleziona la casella di controllo Abilita DNS dedicato.
- Fai clic su Continua.
- Fai clic su Fine.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION_ID: La tua regione.
- PROJECT_ID: il tuo ID progetto
- ENDPOINT_NAME: Il nome visualizzato per l'endpoint.
- (Facoltativo) INFERENCE_TIMEOUT_SECS: numero di secondi nel campo
facoltativo
inferenceTimeout
.
Metodo HTTP e URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/endpoints
Corpo JSON della richiesta:
{ "display_name": "ENDPOINT_NAME" "dedicatedEndpointEnabled": true, "clientConnectionConfig": { "inferenceTimeout": { "seconds": INFERENCE_TIMEOUT_SECS } } }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/endpoints/ENDPOINT_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateEndpointOperationMetadata", "genericMetadata": { "createTime": "2020-11-05T17:45:42.812656Z", "updateTime": "2020-11-05T17:45:42.812656Z" } } }
"done":
true
.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida di Vertex AI per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Vertex AI Python.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Sostituisci quanto segue:
- PROJECT_ID: il tuo ID progetto.
- LOCATION_ID: la regione in cui utilizzi Vertex AI.
- ENDPOINT_NAME: Il nome visualizzato per l'endpoint.
- (Facoltativo) INFERENCE_TIMEOUT_SECS: numero di secondi nel valore facoltativo
inference_timeout
.
from google.cloud import aiplatform
PROJECT_ID = "PROJECT_ID"
LOCATION = "LOCATION_ID"
ENDPOINT_NAME = "ENDPOINT_NAME"
INFERENCE_TIMEOUT_SECS = "INFERENCE_TIMEOUT_SECS"
aiplatform.init(
project=PROJECT_ID,
location=LOCATION,
api_endpoint=ENDPOINT_NAME,
)
dedicated_endpoint = aiplatform.Endpoint.create(
display_name=DISPLAY_NAME,
dedicated_endpoint_enabled=True,
sync=True,
inference_timeout=INFERENCE_TIMEOUT_SECS,
)
Configurazione del timeout di inferenza
La durata del timeout predefinita per le richieste di inferenza è di 600 secondi (10 minuti). Questo timeout verrà applicato se non viene specificato un timeout di inferenza esplicito durante la creazione dell'endpoint. Il valore di timeout massimo consentito è un'ora.
Per configurare il timeout dell'inferenza durante la creazione dell'endpoint, utilizza il
parametro inference_timeout
come mostrato nel seguente snippet di codice:
timeout_endpoint = aiplatform.Endpoint.create(
display_name="dedicated-endpoint-with-timeout",
dedicated_endpoint_enabled=True,
inference_timeout=1800, # Unit: Seconds
)
Le modifiche all'impostazione del timeout di inferenza dopo la creazione dell'endpoint possono essere eseguite utilizzando il metodo EndpointService.UpdateEndpointLongRunning
. Il metodo
EndpointService.UpdateEndpoint
non supporta questa modifica.
Logging di richiesta-risposta
La funzionalità di logging delle richieste e delle risposte acquisisce le interazioni API. Tuttavia, per rispettare le limitazioni di BigQuery, i payload di dimensioni superiori a 10 MB verranno esclusi dai log.
Per attivare e configurare la registrazione di richiesta-risposta durante la creazione dell'endpoint, utilizza i seguenti parametri, come illustrato nello snippet di codice successivo:
logging_endpoint = aiplatform.Endpoint.create(
display_name="dedicated-endpoint-with-logging",
dedicated_endpoint_enabled=True,
enable_request_response_logging=True,
request_response_logging_sampling_rate=1.0, # Default: 0.0
request_response_logging_bq_destination_table="bq://test_logging",
# If not set, a new BigQuery table will be created with the name:
# bq://{project_id}.logging_{endpoint_display_name}_{endpoint_id}.request_response_logging
)
Le modifiche alle impostazioni di logging delle richieste e delle risposte dopo la creazione dell'endpoint
possono essere eseguite utilizzando il metodo EndpointService.UpdateEndpointLongRunning
. Il metodo EndpointService.UpdateEndpoint
non supporta questa
modifica.
Crea un endpoint pubblico condiviso
Google Cloud console
-
Nella console Google Cloud , nella sezione Vertex AI, vai alla pagina Previsione online.
Vai alla pagina Previsione online - Fai clic su Crea.
- Nel riquadro Nuovo endpoint:
- Inserisci il nome dell'endpoint.
- Seleziona Standard per il tipo di accesso.
- Fai clic su Continua.
- Fai clic su Fine.
gcloud
L'esempio seguente utilizza il comando gcloud ai endpoints create
:
gcloud ai endpoints create \
--region=LOCATION_ID \
--display-name=ENDPOINT_NAME
Sostituisci quanto segue:
- LOCATION_ID: la regione in cui utilizzi Vertex AI.
- ENDPOINT_NAME: Il nome visualizzato per l'endpoint.
La creazione dell'endpoint potrebbe richiedere alcuni secondi.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION_ID: La tua regione.
- PROJECT_ID: il tuo ID progetto
- ENDPOINT_NAME: Il nome visualizzato per l'endpoint.
Metodo HTTP e URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/endpoints
Corpo JSON della richiesta:
{ "display_name": "ENDPOINT_NAME" }
Per inviare la richiesta, espandi una di queste opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION_ID/endpoints/ENDPOINT_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CreateEndpointOperationMetadata", "genericMetadata": { "createTime": "2020-11-05T17:45:42.812656Z", "updateTime": "2020-11-05T17:45:42.812656Z" } } }
"done":
true
.
Terraform
L'esempio seguente utilizza la risorsa Terraform google_vertex_ai_endpoint
per creare un endpoint.
Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida di Vertex AI per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Vertex AI Java.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida di Vertex AI per l'utilizzo delle librerie client. Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Vertex AI Node.js.
Per autenticarti in Vertex AI, configura le Credenziali predefinite dell'applicazione. Per ulteriori informazioni, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare o aggiornare l'SDK Vertex AI Python, consulta Installare l'SDK Vertex AI Python. Per saperne di più, consulta la documentazione di riferimento dell'API Python.
Passaggi successivi
- Esegui il deployment di un modello utilizzando gcloud CLI o l'API Vertex AI.
- Scopri come ottenere un'inferenza online.