Inspection qualité par vision : un agent ADK, Gemini et Cloud Storage
Construire un agent ADK qui lit des photos de pièces dans un bucket Cloud Storage, classe les défauts avec Gemini en sortie structurée, publie un rapport, se mesure à une vérité terrain, puis supprimer le bucket.
Inspection qualité par vision : un agent ADK, Gemini et Cloud Storage
Sur une ligne de production, un opérateur photographie chaque rondelle métallique qui sort de la presse. Ces photos atterrissent dans un bucket. Il faut repérer les pièces rayées, fissurées, tachées ou ébréchées, décider lesquelles rejeter, et produire un rapport pour l'atelier. Ce lab construit l'agent qui fait ce travail, et surtout mesure s'il le fait bien.
Pour qui ?
Vous connaissez les bases d'ADK (agent, outils, runner) et vous voulez traiter des images de façon fiable : réponse structurée, contrôlable, évaluée, sur des données qui vivent dans Google Cloud.
Ce que vous construisez
flowchart LR P["generer_images.py (Pillow) : 6 photos fictives"] -->|"gcloud storage cp"| B["Bucket temporaire lab-inspection-qualite-... : images/"] A["Agent ADK inspecteur_qualite"] -->|"lister_images"| B A -->|"inspecter_image"| V["Gemini vision : JSON imposé (schéma Inspection)"] A -->|"publier_rapport"| R["rapports/rapport-inspection.md"] R --> B VT["verite_terrain.json (reste sur le poste)"] --> E["lancer.py : exactitude + pièces défectueuses acceptées"]
Prérequis
- Python 3.10+,
gcloudconnecté (gcloud auth application-default login), un projet avec Vertex AI et Cloud Storage activés. - Le code : files/ —
generer_images.py,agent.py,lancer.py,test_inspection.py,preparer.sh,nettoyer.sh.
Programme
| Module | Leçon | Ce que vous faites |
|---|---|---|
| 1. Cas d'usage et architecture | Inspecter des pièces avec un agent | rôles de l'agent, du modèle de vision et du code déterministe |
| 2. Construire pas à pas | Des images fictives dans un bucket temporaire | Pillow, vérité terrain, bucket privé étiqueté |
| Vision structurée et outils de l'agent | schéma Pydantic, outils Cloud Storage, rapport | |
| 3. Tester, évaluer, exploiter | Évaluer, publier, supprimer | tests sans clé, run réel, mesure, nettoyage |
En local ou sur GCP ?
| Variante locale (exercice) | Ce lab (GCP) | |
|---|---|---|
| Images | un dossier images/ | un bucket Cloud Storage privé |
| Modèle | Gemini via clé d'API | Gemini sur Vertex AI, identifiants ADC |
| Rapport | un fichier local | un objet rapports/rapport-inspection.md |
| Nettoyage | rm -r images | nettoyer.sh supprime le bucket et tout son contenu |
Recursos
- example.env.example1 KB
- pyagent.py6 KBVer
- pygenerer_images.py3 KBVer
- pylancer.py2 KBVer
- shnettoyer.sh1 KBVer
- shpreparer.sh1 KBVer
- txtrequirements.txt1 KBVer
- pytest_inspection.py3 KBVer