App di chat con l'API PaLM su Cloud Run

1. Introduzione

Questo codelab mostra come creare ed eseguire il deployment di un'app di chat basata su IA su un'applicazione web come servizio Cloud Run su Google Cloud. Questa app di chat consente agli utenti di eseguire query e ottenere una risposta utilizzando il modello PaLM per Chat Bison ( text-chat).

Cosa creerai

Creerai

  • Un ambiente in Google Cloud per eseguire l'applicazione
  • Un'immagine Docker per l'applicazione
  • Un servizio Cloud Run che esegue l'applicazione

2. Requisiti

  • Un browser, ad esempio Chrome o Firefox
  • Un progetto Google Cloud con fatturazione abilitata

3. Prima di iniziare

  1. Nella pagina del selettore dei progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.
  2. Assicurati che la fatturazione sia abilitata per il tuo progetto Google Cloud. Scopri come controllare se la fatturazione è abilitata su un progetto
  3. Attiva Cloud Shell dalla console Google Cloud seguendo le istruzioni riportate qui
  4. Se il progetto non è configurato, utilizza il comando seguente per impostarlo:
gcloud config set project <YOUR_PROJECT_ID>
  1. In Cloud Shell, imposta le seguenti variabili di ambiente:
export GCP_PROJECT=<YOUR_PROJECT_ID>
export GCP_REGION=us-central1
  1. Abilita le API Google Cloud necessarie eseguendo questi comandi nel terminale Cloud Shell:
gcloud services enable cloudbuild.googleapis.com cloudfunctions.googleapis.com run.googleapis.com logging.googleapis.com storage-component.googleapis.com aiplatform.googleapis.com

4. Configura l'ambiente

  1. Per copiare il codice campione nel tuo progetto, clona il repository in Cloud Shell:
git clone https://github.com/rominirani/genai-apptemplates-googlecloud
  1. Questo comando clonerà i contenuti del repository nella cartella genai-templates-googlecloud.
  2. Vai alla cartella del progetto che ci interessa eseguendo questo comando dal terminale Cloud Shell:
cd genai-apptemplates-googlecloud/chat-flask-cloudrun
  1. Imposta le seguenti variabili di ambiente per l'inizializzazione di Vertex AI:

GCP_PROJECT : l'ID del tuo progetto Google Cloud. Ad esempio: mio_progetto.

GCP_REGION : la regione in cui vuoi eseguire il deployment della funzione Cloud Functions. Ad esempio: us-central1.

export GCP_PROJECT='YOUR_PROJECT'
export GCP_REGION='us-central1'

5. Crea un'immagine Docker

Per creare un'immagine Docker per l'applicazione ed eseguirne il push in Artifact Registry, segui questi passaggi:

  1. Imposta una variabile di ambiente per il repository Artifact Registry. I nomi possono contenere solo lettere minuscole, numeri e trattini. Devono iniziare con una lettera e terminare con una lettera o un numero. Ad esempio: my-chat-app-repo.
export AR_REPO='my-chat-app-repo'
  1. Imposta una variabile di ambiente per il nome del servizio. Ad esempio: chat-flask-app.
export SERVICE_NAME='chat-flask-app'
  1. Crea il tuo repository nel formato Docker.
gcloud artifacts repositories create "$AR_REPO" --location="$GCP_REGION" --repository-format=Docker
  1. Configura l'autenticazione Docker.
gcloud auth configure-docker "$GCP_REGION-docker.pkg.dev"
  1. Crea l'immagine.
gcloud builds submit --tag "$GCP_REGION-docker.pkg.dev/$GCP_PROJECT/$AR_REPO/$SERVICE_NAME"
  1. Per verificare se viene eseguito il push dell'immagine ad Artifact Registry, vai alla pagina di Artifact Registry. Cerca il repository che hai creato in questa pagina.

6. Esegui il deployment dell'applicazione

  1. Eseguire il deployment dell'applicazione come servizio su Cloud Run.
gcloud run deploy "$SERVICE_NAME" \ 
--port=8080 \ 
--image="$GCP_REGION-docker.pkg.dev/$GCP_PROJECT/$AR_REPO/$SERVICE_NAME" \ 
--allow-unauthenticated \ 
--region=$GCP_REGION \ 
--platform=managed  \ 
--project=$GCP_PROJECT \ 
--set-env-vars=GCP_PROJECT=$GCP_PROJECT,GCP_REGION=$GCP_REGION

Il completamento di questo passaggio potrebbe richiedere alcuni secondi.

  1. Per avviare l'applicazione di chat, fai clic sull'URL del servizio.

56c06b62e0ac95bf.png

L'applicazione di chat si apre in una nuova scheda, come mostrato nello screenshot seguente:

eebde9c35c171563.png

7. Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo post, segui questi passaggi:

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.
  2. Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic su Elimina.
  3. Nella finestra di dialogo, digita l'ID progetto, quindi fai clic su Chiudi per eliminare il progetto.
  4. Se vuoi conservare il progetto, salta i passaggi precedenti ed elimina il servizio Cloud Run andando a Cloud Run e, nell'elenco dei servizi, seleziona il servizio che vuoi eliminare e fai clic su ELIMINA.

8. Complimenti

Complimenti! Hai creato ed eseguito correttamente il deployment di un'app di chat basata su AI per un'applicazione web come servizio Cloud Run su Google Cloud. Puoi utilizzare questa app di chat per consentire agli utenti di inserire la query e questa app richiamerà il modello di chat di Vertex AI e fornirà la risposta.