De zéro à l’IA responsable : déployer Gemini sur Google Cloud

A blueprint

De Zéro à Vertex AI Invoke Gemini en utilisant les Principes de l’IA Responsable

Ce tutoriel présente la procédure de déploiement d’une application FastAPI sur Google Cloud Run qui invoque les modèles Gemini via Vertex AI, tout en mettant en œuvre des principes d’IA responsable.

Introduction

Dans cet article, nous allons explorer comment configurer des filtres de sécurité pour quatre catégories de préjudices : contenu dangereux, harcèlement, discours de haine et contenu sexuellement explicite, avec des seuils de blocage stricts. Nous utiliserons Vellox comme adaptateur pour exécuter des applications ASGI dans Google Cloud Functions, et nous mettrons en place une authentification par jeton Bearer pour la sécurité. Le processus complet, y compris l’activation des services nécessaires de Google Cloud, la configuration des rôles IAM, et le déploiement de la fonction avec des variables d’environnement, sera détaillé.

Ce tutoriel met l’accent sur des mises en œuvre de sécurité pratiques en montrant comment Vertex AI filtre à la fois les entrées et les sorties, renvoyant une raison de « SAFETY » avec des évaluations de sécurité détaillées lorsque du contenu nuisible est détecté. Cela le rend particulièrement utile pour les développeurs souhaitant créer des applications d’IA avec modération de contenu intégrée et sécurité dès le départ.

Technologies Utilisées

Fonctions Cloud Run :

Les fonctions Cloud Run sont idéales lorsque vous devez réagir à des événements ou des déclencheurs HTTP rapidement, avec une configuration minimale — toute l’infrastructure est gérée pour vous. Vous travaillez avec des fonctions concises plutôt qu’avec des services complets.

Vellox :

Vellox est un adaptateur pour exécuter des applications ASGI dans GCP Cloud Functions.

HTTPBearer :

HTTPBearer dans FastAPI est un utilitaire de sécurité qui gère l’authentification par jeton Bearer, une méthode courante pour sécuriser les points de terminaison d’API. Il s’occupe de la présence et de l’extraction du jeton Bearer.

Étapes de Mise en Place

Configuration de l’Environnement de Développement

Utilisez devcontainer pour installer tout ce qui est nécessaire. Mettez en place Docker et DevContainer, et une fois le code récupéré, vous êtes prêt à démarrer.

Activer les Services

Pour la première utilisation, exécutez les commandes suivantes :

gcloud init
gcloud services enable artifactregistry.googleapis.com cloudbuild.googleapis.com run.googleapis.com logging.googleapis.com aiplatform.googleapis.com

Permissions IAM

Dans IAM, donnez le rôle de projet ‘roles/aiplatform.user’ au projet en cours.

Déploiement avec Variables d’Environnement

Utilisez la commande suivante pour déployer :

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

Cette commande déploie une fonction FastAPI nommée handler depuis votre dossier local, fonctionne sur Python 3.13, dans la région Mumbai (asia-south1), avec des variables d’environnement définies pour les jetons API et l’utilisation de Google Vertex AI. Elle est accessible au public (aucune authentification requise sauf celle définie pour Bearer).

Examen de main.py

Voici un exemple de code d’une application FastAPI GCP intégrant Google Gemini AI avec des filtres de contenu de sécurité :


import httpx, os, uuid
from fastapi import Depends, FastAPI, HTTPException, status
from fastapi.security import HTTPBearer, HTTPAuthorizationCredentials
from vellox import Vellox
from pydantic import BaseModel
from typing import Optional
from google import genai
from pathlib import Path
from google.genai.types import (
GenerateContentConfig,
HarmCategory,
HarmBlockThreshold,
HttpOptions,
SafetySetting,
)

safety_settings = [
SafetySetting(
category=HarmCategory.HARM_CATEGORY_DANGEROUS_CONTENT,
threshold=HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
),
SafetySetting(
category=HarmCategory.HARM_CATEGORY_HARASSMENT,
threshold=HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
),
SafetySetting(
category=HarmCategory.HARM_CATEGORY_HATE_SPEECH,
threshold=HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
),
SafetySetting(
category=HarmCategory.HARM_CATEGORY_SEXUALLY_EXPLICIT,
threshold=HarmBlockThreshold.BLOCK_LOW_AND_ABOVE,
),
]

Dans cet exemple, safety_settings est défini comme une liste d’objets SafetySetting — chacun déclare une catégorie de préjudice et un seuil de blocage, couvrant le contenu dangereux, le harcèlement, le discours de haine et le contenu sexuellement explicite, avec un blocage strict pour tous. Ces catégories et seuils sont les mêmes que ceux documentés pour l’API Gemini ; les catégories non listées reviennent aux valeurs par défaut.

Pratiquement, ces paramètres filtrent à la fois les entrées et les sorties. Si le modèle juge que le contenu atteint ou dépasse le seuil, l’appel est bloqué (aucun texte renvoyé). Par défaut, Gemini utilise une méthode de blocage des préjudices sensible à la gravité dans Vertex AI; ce comportement peut être ajusté si nécessaire.

Pour plus de détails, consultez le code sur GitHub.

Articles

Collaboration et compétition : l’avenir de la gouvernance de l’IA

Le projet Red Cell vise à remettre en question les hypothèses et les idées reçues afin d'encourager des approches alternatives face aux défis de la politique étrangère et de sécurité nationale des...

Politique nationale de l’IA : vers un marché de 2,7 milliards de dollars au Pakistan

Le Pakistan a introduit une politique nationale ambitieuse en matière d'IA visant à créer un marché domestique de 2,7 milliards de dollars en cinq ans. Cette politique repose sur six piliers...

Gouvernance éthique de l’IA : un guide pratique pour les entreprises

Ce guide pratique souligne l'importance de la gouvernance éthique de l'IA pour les entreprises qui souhaitent intégrer l'IA de manière responsable. Il fournit des étapes concrètes pour établir un...

Stratégies IA pour transformer l’enseignement supérieur

L'intelligence artificielle transforme l'apprentissage, l'enseignement et les opérations dans l'enseignement supérieur en offrant des outils personnalisés pour le succès des étudiants et en renforçant...

Gouvernance de l’IA : Vers des normes éthiques en Afrique

L'intelligence artificielle (IA) façonne progressivement les services financiers, l'agriculture, l'éducation et même la gouvernance en Afrique. Pour réussir, les politiques organisationnelles doivent...

L’impact imminent de l’IA sur l’emploi

La transformation économique liée à l'IA a commencé, entraînant des licenciements massifs dans des entreprises comme IBM et Salesforce. Les résultats d'une enquête révèlent que les employés craignent...

Éthique du travail numérique : Qui est responsable de l’IA au sein de la main-d’œuvre ?

Le travail numérique devient de plus en plus courant sur le lieu de travail, mais peu de règles largement acceptées ont été mises en œuvre pour le régir. Les PDG doivent voir l'IA non seulement comme...

Anthropic présente Petri, l’outil d’audit automatisé pour la sécurité des IA

Anthropic a lancé Petri, un outil d'audit de sécurité AI open source conçu pour tester automatiquement les modèles de langage de grande taille (LLM) pour des comportements risqués. Cet outil utilise...

Conflit ou harmonie entre l’IA et la protection des données ?

L'IA est le mot à la mode dans le secteur juridique, et la loi sur l'IA de l'UE est un sujet d'intérêt majeur pour de nombreux professionnels du droit. Cet article examine les interactions...