- Die Modelldaten abhören und mithilfe von Cloud Run-Funktionen Ereignisse daraus generieren.
- Senden Sie die von Cloud Run-Funktionen generierten Ereignisse über den Pub/Sub-Ereigniskanal.
Unterstützte Modelle
Die folgenden Modelle bieten die Ereignisgenerierung für Cloud Run-Funktionen und die Einbindung von Pub/Sub-Ereignisbenachrichtigungen:
Hinweise
- Erstellen Sie eine App mit mindestens einem Streamknoten und einem Knoten vom Typ Unterstütztes Modell.
- Optional. Installieren Sie das Vertex AI Vision SDK und nehmen Sie Daten in Ihre App auf. Wenn Sie dies nicht vor dem Einrichten der Ereignisbenachrichtigung tun, müssen Sie es danach tun.
- Optional. Erstellen Sie eine Cloud Run-Funktion, die Sie verwenden möchten. Wenn Sie Ihre Cloud Run-Funktion nicht erstellen, bevor Sie Cloud Run-Funktionen zum Verarbeiten der Modellausgabe konfigurieren, müssen Sie sie während dieses Vorgangs erstellen.
- Optional. Erstellen Sie ein Pub/Sub-Thema, das Sie verwenden möchten. Wenn Sie Ihr Pub/Sub-Thema nicht erstellen, bevor Sie die Benachrichtigung über Modellereignisse mit Pub/Sub aktivieren, müssen Sie es während dieses Vorgangs erstellen.
- Optional. Wählen Sie ein Pub/Sub-Abo aus und erstellen Sie es. Wenn Sie Ihr Pub/Sub-Abo nicht erstellen, bevor Sie die Benachrichtigung über Modellereignisse mit Pub/Sub aktivieren, müssen Sie es danach erstellen, um Nachrichten von einem Thema zu lesen.
Cloud Run-Funktionen für die Verarbeitung der Modellausgabe konfigurieren
Wenn Sie ereignisbasierte Benachrichtigungen auslösen möchten, müssen Sie zuerst Cloud Run-Funktionen einrichten, um die Modellausgabe zu verarbeiten und Ereignisse zu generieren.
Ihre Cloud Run-Funktion stellt eine Verbindung zum Modell her und überwacht die Ausgabe als Nachbearbeitungsaktion. Die Cloud Run-Funktion sollte einen AppPlatformCloudFunctionResponse
zurückgeben. Die Ereignisse (appplatformeventbody
) werden an das Pub/Sub-Thema gesendet, das Sie im nächsten Schritt konfigurieren.
Beispiel für eine Cloud Run-Funktion (Modell für Belegung analysieren)
Beispiel für eine Cloud Run-Funktion
/**
* Responds to any HTTP request.
*
* @param {!express:Request} req HTTP request context.
* @param {!express:Response} res HTTP response context.
*/
exports.hello_http = (req, res) => {
// Logging statement can be read with cmd `gcloud functions logs read {$functionName}`.
// For more about logging, please see https://cloud.google.com/functions/docs/monitoring
// The processor output will be stored in req.body.
const messageString = constructMessage(req.body);
// Send your message to operator output with res HTTP response context.
res.status(200).send(messageString);
};
function constructMessage(data) {
// Typically, your processor output should contains appPlatformMetadata & it's designed output.
// Here we will use the occupancy analytics model as an example.
const appPlatformMetadata = data.appPlatformMetadata;
const annotations = data.annotations;
const events = [];
for(const annotation of annotations) {
events.push({
"event_message": "Event message goes here",
"payload" : {
"attr_key_goes_here" : "val_goes_here"
},
"event_id" : "event_id_goes_here"
});
}
// Typically, your cloud function should return a string represent a JSON which has two fields:
// "annotations" must follow the specification of the target model.
// "events" should be of type "AppPlatformEventBody".
const messageJson = {
"annotations": annotations,
"events": events,
};
return JSON.stringify(messageJson);
}
So senden Sie den Modellausgabestream an Ihre Cloud Run-Funktion:
Console
Öffnen Sie den Tab Anwendungen des Vertex AI Vision-Dashboards.
Wählen Sie in der Liste neben dem Namen Ihrer Anwendung die Option
App ansehen aus.Klicken Sie auf das unterstützte Modell, um die Seitenleiste mit den Modelldetails zu öffnen.
Wählen Sie im Bereich Ereignisbenachrichtigung in der Liste Nachbearbeitung eine vorhandene Cloud Run-Funktion aus oder erstellen Sie eine neue.
Benachrichtigungen zu Modellereignissen mit Pub/Sub aktivieren
Nachdem Sie Cloud Run-Funktionen eingerichtet haben, um die Modellausgabe zu verarbeiten und Ereignisse zu generieren, können Sie Ereignisbenachrichtigungen mit Pub/Sub einrichten. Wenn Sie Nachrichten von einem Thema lesen möchten, müssen Sie außerdem ein Pub/Sub-Abo auswählen und erstellen.
Console
Öffnen Sie den Tab Anwendungen des Vertex AI Vision-Dashboards.
Wählen Sie in der Liste neben dem Namen Ihrer Anwendung die Option
App ansehen aus.Klicken Sie auf das unterstützte Modell, um die Seitenleiste mit den Modelldetails zu öffnen.
Wählen Sie im Abschnitt Ereignisbenachrichtigung die Option Ereignisbenachrichtigung einrichten aus.
Wählen Sie im Optionsfenster Pub/Sub für Ereignisbenachrichtigungen einrichten ein vorhandenes Pub/Sub-Thema aus oder erstellen Sie ein neues.
Legen Sie im Feld Häufigkeit einen Ganzzahlwert in Sekunden fest, nach dem eine Benachrichtigung für denselben Ereignistyp gesendet werden kann.
Klicken Sie auf Einrichten.
Nächste Schritte
- Eine Anleitung zum Bereitstellen Ihrer App zum Testen von Benachrichtigungen zu Modellereignissen finden Sie unter Anwendung bereitstellen und Bereitstellung aufheben.
- Sehen Sie sich das Codelab Vertex AI Vision-App für Belegungseinblicke mit Ereignisverwaltung an.
- Weitere Informationen zu Pub/Sub- und Cloud Run-Funktionen finden Sie unter Was ist Pub/Sub? und Cloud Run-Funktionen – Übersicht.