Von Null zu Vertex AI Invoke Gemini unter Verwendung von verantwortungsvollen KI-Prinzipien
Diese Anleitung bietet einen umfassenden Überblick über die Implementierung einer FastAPI-Anwendung auf Google Cloud Run, die Gemini-Modelle über Vertex AI aufruft, während verantwortungsvolle KI-Prinzipien beachtet werden.
Einführung
Die Anleitung zeigt, wie Sicherheitsfilter für vier Schadenskategorien (gefährliche Inhalte, Belästigung, Hassrede und sexuell explizite Inhalte) mit strengen Blockierungsgrenzen konfiguriert werden. Mit Vellox wird ein Adapter verwendet, um ASGI-Anwendungen in Google Cloud Functions auszuführen. Zudem wird die Bearer-Token-Authentifizierung für die Sicherheit implementiert.
Technologien
Cloud Run Funktionen:
Cloud Run eignet sich für schnelle Reaktionen auf Ereignisse oder HTTP-Trigger und erfordert minimale Konfiguration, da die gesamte Infrastruktur verwaltet wird.
Velox:
Vellox ist ein Adapter für die Ausführung von ASGI-Anwendungen in GCP Cloud Functions.
HTTPBearer:
HTTPBearer in FastAPI ist ein Sicherheitswerkzeug, das zur Handhabung von Bearer-Token-Authentifizierung dient, die eine gängige Methode zur Sicherung von API-Endpunkten ist.
Schritte zur Umsetzung
Einrichten der Entwicklungsumgebung:
Verwenden Sie devcontainer, um alles zu installieren. Richten Sie Docker und DevContainer ein, und nach dem Herunterladen des Codes sind Sie bereit.
Dienste aktivieren:
Führen Sie den folgenden Befehl aus, um die benötigten Dienste zu aktivieren:
gcloud init
Gefolgt von:
gcloud services enable artifactregistry.googleapis.com cloudbuild.googleapis.com run.googleapis.com logging.googleapis.com aiplatform.googleapis.com
IAM-Berechtigungen:
Weisen Sie in IAM die Projektrolle ‚roles/aiplatform.user‘ zu.
Bereitstellung mit Umgebungsvariablen:
Führen Sie den folgenden Befehl aus, um die FastAPI-Funktion bereitzustellen:
gcloud run deploy fastapi-func --source . --function handler --base-image python313 --region asia-south1 --set-env-vars API_TOKEN="damn-long-token",GOOGLE_GENAI_USE_VERTEXAI=True,GOOGLE_CLOUD_LOCATION=global --allow-unauthenticated
Wichtigste Punkte des Codes
In der Datei main.py wird ein GCP FastAPI-Beispiel mit Google Gemini AI (mit Sicherheitsinhaltsfiltern) definiert. Sicherheitsvorkehrungen werden durch die Definition von safety_settings als Liste von SafetySetting-Objekten getroffen, die die Schadenskategorien und Blockierungsgrenzen definieren.
Endpoints:
Das Beispiel bietet einen einfachen Endpunkt für die Gesundheitsprüfung und einen weiteren, um Text zusammenzufassen. Bei der Zusammenfassung wird der eingegebene Text verarbeitet und das Ergebnis wird zurückgegeben, es sei denn, es wird als schädlich eingestuft.
Wenn der Inhalt die festgelegten Schwellenwerte überschreitet, wird der Aufruf blockiert, und es wird kein Text zurückgegeben. Diese Einstellungen sind entscheidend für die Entwicklung sicherer AI-Anwendungen.
Fazit
Diese Anleitung bietet eine wertvolle Ressource für Entwickler, die KI-Anwendungen mit integrierter Inhaltsmoderation und Sicherheit von Grund auf erstellen möchten. Die Implementierung verantwortungsvoller KI-Prinzipien ist nicht nur notwendig, sondern auch machbar durch den Einsatz moderner Technologien wie Vertex AI und FastAPI.