Wenn Sie ein Modell mit der gcloud CLI oder der Vertex AI API bereitstellen möchten, müssen Sie zuerst einen öffentlichen Endpunkt erstellen.
Wenn Sie bereits einen öffentlichen Endpunkt haben, können Sie diesen Schritt überspringen und mit Modell mit der gcloud CLI oder der Vertex AI API bereitstellen fortfahren.
In diesem Dokument wird beschrieben, wie Sie einen neuen öffentlichen Endpunkt erstellen.
Dedizierten öffentlichen Endpunkt erstellen (empfohlen)
Das standardmäßige Zeitlimit für Anfragen für einen dedizierten öffentlichen Endpunkt beträgt 10 Minuten.
In der Vertex AI API und dem Vertex AI SDK für Python können Sie optional ein anderes Anfrage-Zeitlimit angeben, indem Sie ein clientConnectionConfig
-Objekt mit einem neuen inferenceTimeout
-Wert hinzufügen, wie im folgenden Beispiel gezeigt. Der maximale Wert für die Zeitüberschreitung beträgt 3.600 Sekunden (1 Stunde).
Google Cloud console
-
Rufen Sie in der Google Cloud Console im Abschnitt „Vertex AI“ die Seite Onlinevorhersage auf.
Zur Seite „Onlinevorhersage“ - Klicken Sie auf Erstellen.
- Im Bereich Neuer Endpunkt:
- Geben Sie den Endpunktnamen ein.
- Wählen Sie als Zugriffstyp Standard aus.
- Klicken Sie das Kästchen Dediziertes DNS aktivieren an.
- Klicken Sie auf Weiter.
- Klicken Sie auf Fertig.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- LOCATION_ID: Ihre Region.
- PROJECT_ID: Ihre Projekt-ID.
- ENDPOINT_NAME: Der Anzeigename für den Endpunkt.
- INFERENCE_TIMEOUT_SECS: (Optional) Anzahl der Sekunden im optionalen Feld
inferenceTimeout
.
HTTP-Methode und URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/endpoints
JSON-Text anfordern:
{ "display_name": "ENDPOINT_NAME" "dedicatedEndpointEnabled": true, "clientConnectionConfig": { "inferenceTimeout": { "seconds": INFERENCE_TIMEOUT_SECS } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "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
angegeben wird.
Python
Bevor Sie dieses Beispiel anwenden, folgen Sie den Python-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Python API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Ersetzen Sie Folgendes:
- PROJECT_ID: Ihre Projekt-ID.
- LOCATION_ID: Die Region, in der Sie Vertex AI verwenden.
- ENDPOINT_NAME: Der Anzeigename für den Endpunkt.
- INFERENCE_TIMEOUT_SECS: (Optional) Anzahl der Sekunden im optionalen Wert
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,
)
Konfiguration des Zeitlimits für die Inferenz
Das Standardzeitlimit für Inferenzanfragen beträgt 600 Sekunden (10 Minuten). Dieses Zeitlimit wird angewendet, wenn beim Erstellen des Endpunkts kein explizites Zeitlimit für die Inferenz angegeben wird. Der maximal zulässige Zeitlimitwert beträgt eine Stunde.
Verwenden Sie den Parameter inference_timeout
, um das Zeitlimit für die Inferenz beim Erstellen des Endpunkts zu konfigurieren, wie im folgenden Code-Snippet gezeigt:
timeout_endpoint = aiplatform.Endpoint.create(
display_name="dedicated-endpoint-with-timeout",
dedicated_endpoint_enabled=True,
inference_timeout=1800, # Unit: Seconds
)
Änderungen an der Einstellung für das Inferenz-Zeitlimit nach der Endpunkterstellung können mit der Methode EndpointService.UpdateEndpointLongRunning
vorgenommen werden. Die Methode EndpointService.UpdateEndpoint
unterstützt diese Änderung nicht.
Anfrage-/Antwort-Logging
Mit der Funktion „Anfrage-/Antwort-Logging“ werden API-Interaktionen erfasst. Um den BigQuery-Einschränkungen zu entsprechen, werden Nutzlasten mit einer Größe von mehr als 10 MB jedoch aus den Logs ausgeschlossen.
Wenn Sie das Anfrage-/Antwort-Logging während der Endpunkterstellung aktivieren und konfigurieren möchten, verwenden Sie die folgenden Parameter, wie im nachstehenden Code-Snippet dargestellt:
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
)
Änderungen an den Einstellungen für das Anfrage-/Antwort-Logging nach der Endpunkterstellung können mit der Methode EndpointService.UpdateEndpointLongRunning
vorgenommen werden. Die EndpointService.UpdateEndpoint
-Methode unterstützt diese Änderung nicht.
Gemeinsamen öffentlichen Endpunkt erstellen
Google Cloud console
-
Rufen Sie in der Google Cloud Console im Abschnitt „Vertex AI“ die Seite Onlinevorhersage auf.
Zur Seite „Onlinevorhersage“ - Klicken Sie auf Erstellen.
- Im Bereich Neuer Endpunkt:
- Geben Sie den Endpunktnamen ein.
- Wählen Sie als Zugriffstyp Standard aus.
- Klicken Sie auf Weiter.
- Klicken Sie auf Fertig.
gcloud
Im folgenden Beispiel wir der Befehl gcloud ai endpoints create
verwendet:
gcloud ai endpoints create \
--region=LOCATION_ID \
--display-name=ENDPOINT_NAME
Ersetzen Sie dabei Folgendes:
- LOCATION_ID: Die Region, in der Sie Vertex AI verwenden.
- ENDPOINT_NAME: Der Anzeigename für den Endpunkt.
Es kann einige Sekunden dauern, bis das Google Cloud CLI den Endpunkt erstellt.
REST
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- LOCATION_ID: Ihre Region.
- PROJECT_ID: Ihre Projekt-ID.
- ENDPOINT_NAME: Der Anzeigename für den Endpunkt.
HTTP-Methode und URL:
POST https://LOCATION_ID-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION_ID/endpoints
JSON-Text anfordern:
{ "display_name": "ENDPOINT_NAME" }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
{ "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
angegeben wird.
Terraform
Im folgenden Beispiel wird die Terraform-Ressource google_vertex_ai_endpoint
verwendet, um einen Endpunkt zu erstellen.
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
Java
Bevor Sie dieses Beispiel anwenden, folgen Sie den Java-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Java API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Node.js
Bevor Sie dieses Beispiel anwenden, folgen Sie den Node.js-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Node.js API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein. Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Python
Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren. Weitere Informationen finden Sie in der Python-API-Referenzdokumentation.
Nächste Schritte
- Modell mit der gcloud CLI oder der Vertex AI API bereitstellen
- Informationen zum Abrufen einer Onlineinferenz