Introduzione
In questo articolo, esploreremo un tutorial dettagliato su come implementare un’applicazione FastAPI su Google Cloud Run, in grado di invocare modelli Gemini attraverso Vertex AI, seguendo i principi di Intelligenza Artificiale Responsabile.
Obiettivo dell’Articolo
La guida dimostra come configurare filtri di sicurezza per quattro categorie di danno: contenuti pericolosi, molestie, discorsi d’odio e contenuti sessualmente espliciti, con soglie di blocco rigorose. Utilizza Vellox come adattatore per eseguire applicazioni ASGI in Google Cloud Functions e implementa l’autenticazione con token Bearer per garantire la sicurezza.
Tecnologie Utilizzate
Cloud Run Functions
Cloud Run è ideale quando è necessario rispondere rapidamente a eventi o trigger HTTP con una configurazione minima, poiché gestisce tutta l’infrastruttura per te.
Velox
Velox è un adattatore per eseguire applicazioni ASGI su Google Cloud Functions.
HTTPBearer
HTTPBearer in FastAPI è uno strumento di sicurezza progettato per gestire l’autenticazione del token Bearer, un metodo comune per proteggere gli endpoint API.
Passaggi per l’Implementazione
Configurazione dell’Ambiente di Sviluppo
Utilizzare devcontainer per installare tutto il necessario. Configura Docker e DevContainer e, una volta estratta la codifica, sei pronto per partire.
Abilitazione dei Servizi
Per la prima volta, utilizza il comando:
gcloud init
Seguito da:
gcloud services enable artifactregistry.googleapis.com cloudbuild.googleapis.com run.googleapis.com logging.googleapis.com aiplatform.googleapis.com
Permessi IAM
In IAM, assegna il ruolo di progetto ‘roles/aiplatform.user’ al progetto corrente.
Distribuzione con Variabili di Ambiente
Utilizza il comando seguente per distribuire:
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
Questo comando distribuisce una funzione FastAPI chiamata handler dalla tua cartella locale, esegue Python 3.13 nella regione di Mumbai e imposta variabili di ambiente per i token API e l’uso di Google Vertex AI.
Walkthrough del Codice in main.py
Il codice fornito è un esempio di FastAPI su GCP, integrando la AI di Google Gemini e filtri di contenuto sicuro. Include la configurazione delle impostazioni di sicurezza per le categorie di danno e soglie di blocco, assicurando che il contenuto dannoso venga bloccato.
Il settaggio di sicurezza definito include:
- Contenuti pericolosi
- Molestie
- Discorsi d’odio
- Contenuti sessualmente espliciti
Se uno dei contenuti supera la soglia stabilita, la chiamata viene bloccata e non viene restituito alcun testo. Gemini, tramite Vertex AI, utilizza un metodo di blocco basato sulla severità, che può essere regolato in base alle necessità.
Conclusione
Questo tutorial offre una guida pratica per sviluppatori desiderosi di costruire applicazioni AI con moderazione dei contenuti e sicurezza integrate, seguendo i principi dell’Intelligenza Artificiale Responsabile.
Per ulteriori dettagli e codice sorgente, visitare il repository su GitHub.