GSP367
Présentation
Dans un atelier challenge, vous devez suivre un scénario et effectuer une série de tâches. Aucune instruction détaillée n'est fournie : vous devez utiliser les compétences acquises au cours des ateliers du cours correspondant pour déterminer comment procéder par vous-même. Vous saurez si vous avez exécuté correctement les différentes tâches grâce au score calculé automatiquement (affiché sur cette page).
Lorsque vous participez à un atelier challenge, vous n'étudiez pas de nouveaux concepts Google Cloud. Vous allez approfondir les compétences précédemment acquises. Par exemple, vous devrez modifier les valeurs par défaut ou encore examiner des messages d'erreur pour corriger vous-même les problèmes.
Pour atteindre le score de 100 %, vous devez mener à bien l'ensemble des tâches dans le délai imparti.
Cet atelier est recommandé aux participants inscrits au cours associé au badge de compétence Automatiser la collecte de données à grande échelle avec Document AI. Êtes-vous prêt pour le challenge ?
Scénario du challenge
Vous êtes ingénieur de données dans une grande entreprise de gestion d'infrastructures. Vous avez été affecté à un projet interne pour le service financier de l'entreprise. L'entreprise doit toujours traiter de plus en plus de documents. Chacun nécessite d'être validé et autorisé manuellement. Cette tâche coûteuse mobilise beaucoup de personnel. L'entreprise prévoit d'utiliser les outils Google Cloud pour automatiser le processus de collecte, catégorisation et vérification des documents de manière efficace et moins laborieuse.
Votre challenge
Vous devez créer un pipeline de traitement des documents qui traitera automatiquement les documents importés dans Cloud Storage. Le pipeline consiste en une fonction Cloud Run principale qui traite les nouveaux fichiers à l'aide d'un processeur de formulaires Document AI pour extraire les données du document. Les données de formulaire détectées dans ces fichiers sont ensuite enregistrées dans BigQuery.
Vous disposez du code source d'une fonction Cloud Run qui effectuera le traitement. Vous devez déployer le pipeline de traitement de documents illustré dans l'architecture ci-dessous, en veillant à configurer correctement les composants pour votre pipeline spécifique.

Tâche 1 : Activer l'API Cloud Document AI et copier les fichiers sources de l'atelier
Dans cette tâche, vous allez activer l'API Cloud Document AI et copier vos fichiers de démarrage dans Cloud Shell.
Activer l'API Cloud Document AI
- Activez l'API Cloud Document AI.
Activer l'API Cloud Document AI
Copier les fichiers sources de l'atelier dans Cloud Shell
La fonction Cloud Run avec le code prédéfini est hébergée dans un bucket Cloud Storage distant. Copiez ces fichiers sources dans Cloud Shell. Ces fichiers incluent le code source de la fonction Cloud Run et le schéma de la table BigQuery que vous allez créer dans l'atelier.
- Dans Cloud Shell, saisissez la commande suivante pour cloner le dépôt source de l'atelier :
mkdir ./document-ai-challenge
gsutil -m cp -r gs://spls/gsp367/* \
~/document-ai-challenge/
Tâche 2 : Créer un processeur de formulaires
Créez une instance du processeur de formulaires général à l'aide du processeur Analyseur de formulaires Document AI dans la section Général (non spécialisé). Cet outil pourra traiter tous les types de documents et extraire tous les contenus textuels qu'il identifie dans un document, ainsi que les informations de formulaire qu'il déduit de la mise en page.
- Créez le processeur avec les détails de configuration suivants :
| Propriété |
Valeur |
| Type de processeur |
Analyseur de formulaires |
| Nom du processeur |
|
| Région |
États-Unis |
Remarque : Plus tard dans cet atelier, vous allez configurer une fonction Cloud Run avec le PROCESSOR_ID et l'emplacement PARSER_LOCATION de ce processeur. Ainsi, la fonction Cloud Run utilisera ce processeur spécifique pour traiter les factures. Cliquez sur le processeur créé et notez le PROCESSOR_ID. La région du processeur est l'emplacement PARSER_LOCATION.
Créer un processeur de formulaires
Tâche 3 : Créer des ressources Google Cloud
Préparez votre environnement en créant les ressources Google Cloud Storage et BigQuery requises pour votre pipeline de traitement de documents.
Créer des buckets Cloud Storage pour les entrées, les sorties et les archives
- Dans cette étape, vous devez créer les trois buckets Cloud Storage ci-dessous avec l'accès uniforme au niveau du bucket activé.
| Nom du bucket |
Objectif |
Classe de stockage |
Emplacement |
|
Pour les factures d'achat |
Standard |
|
|
Pour stocker les données traitées |
Standard |
|
|
Pour archiver les factures |
Standard |
|
Remarque : Vous pouvez créer un bucket à l'aide de l'outil gsutil avec le paramètre -mb, ainsi que les paramètres -c pour définir la classe de stockage, -l pour définir l'emplacement (régional) et le flag -b avec la valeur "on" ou "off" pour définir l'accès uniforme au niveau du bucket. Consultez la documentation de référence sur la commande mb (Make buckets) pour en savoir plus sur la création de buckets à l'aide de gsutil.
Créer un ensemble de données et des tables BigQuery
- Dans cette étape, vous devez créer un ensemble de données BigQuery et la table de sortie requise pour votre pipeline de traitement des données.
Ensemble de données
| Nom de l'ensemble de données |
Emplacement |
| invoice_parser_results |
États-Unis |
Remarque : Utilisez bq mk pour créer des ressources BigQuery. Le commutateur de ligne de commande -d permet de créer un ensemble de données, et --location permet de définir l'emplacement de la ressource. Pour en savoir plus sur la création d'ensembles de données à l'aide de l'outil de ligne de commande bq, consultez le guide de création d'ensembles de données.
Table
Le schéma de table pour les informations extraites vous a été fourni dans le fichier JSON document-ai-challenge/scripts/table-schema/doc_ai_extracted_entities.json. Utilisez ce schéma pour créer une table nommée doc_ai_extracted_entities dans l'ensemble de données invoice_parser_results.
Remarque : Utilisez bq mk pour créer des ressources BigQuery. Le commutateur de ligne de commande --table permet de créer une table. Pour en savoir plus sur la création de tables avec une définition de schéma à l'aide de l'outil de ligne de commande bq, consultez le guide "Créer et utiliser des tables".
Vous pouvez accéder à BigQuery dans la console Cloud et inspecter le schéma des tables de l'ensemble de données invoice_parser_results à l'aide de l'espace de travail SQL de BigQuery.
Créer des ressources Google Cloud
Tâche 4 : Déployer la fonction Cloud Run de traitement des documents
Pour effectuer cette tâche, vous devez déployer la fonction Cloud Run que votre pipeline de traitement des données utilise pour traiter les factures importées dans Cloud Storage. Cette fonction utilisera un processeur de formulaire générique de l'API Document AI pour extraire les données de formulaire des documents bruts.
Vous pouvez examiner le code source de la fonction Cloud Run à l'aide de l'éditeur de code ou de tout autre éditeur de votre choix. La fonction Cloud Run est stockée dans les dossiers suivants dans Cloud Shell :
- Process Invoices (Traiter les factures) :
scripts/cloud-functions/process-invoices
La fonction Cloud Run, process-invoices, doit être déclenchée lorsque des fichiers sont importés dans le bucket de stockage des fichiers d'entrée que vous avez créé précédemment.
Déployer la fonction Cloud Run pour traiter les documents importés dans Cloud Storage
Déployez une fonction Cloud Run qui utilise un processeur de formulaires Document AI pour analyser les documents de formulaire importés dans un bucket Cloud Storage
- Accédez au répertoire
scripts :
cd ~/document-ai-challenge/scripts
- Attribuez le rôle de lecteur Artifact Registry au compte de service Compute Engine :
PROJECT_ID=$(gcloud config get-value project)
PROJECT_NUMBER=$(gcloud projects list --filter="project_id:$PROJECT_ID" --format='value(project_number)')
SERVICE_ACCOUNT=$(gcloud storage service-agent --project=$PROJECT_ID)
gcloud projects add-iam-policy-binding $PROJECT_ID \
--member serviceAccount:$SERVICE_ACCOUNT \
--role roles/pubsub.publisher
- Déployez la fonction Cloud Run :
export CLOUD_FUNCTION_LOCATION={{{ project_0.default_region | "REGION" }}}
gcloud functions deploy process-invoices \
--gen2 \
--region=${CLOUD_FUNCTION_LOCATION} \
--entry-point=process_invoice \
--runtime=python313 \
--service-account=${PROJECT_ID}@appspot.gserviceaccount.com \
--source=cloud-functions/process-invoices \
--timeout=400 \
--env-vars-file=cloud-functions/process-invoices/.env.yaml \
--trigger-resource=gs://${PROJECT_ID}-input-invoices \
--trigger-event=google.storage.object.finalize\
--service-account $PROJECT_NUMBER-compute@developer.gserviceaccount.com \
--allow-unauthenticated
Remarque : Si vous obtenez une erreur d'autorisation lors du déploiement de la fonction, attendez deux ou trois minutes, puis réexécutez les commandes.
Si vous inspectez le code source de la fonction Cloud Run, vous verrez qu'elle récupère les détails du processeur Document AI par le biais de deux variables d'environnement d'exécution.
- Vous devrez reconfigurer le déploiement de la fonction Cloud Run pour que les variables d'environnement
PROCESSOR_ID et PARSER_LOCATION contiennent les valeurs correctes pour le processeur Analyseur de formulaires que vous avez déployé à l'étape précédente.
- Assurez-vous que la valeur PARSER_LOCATION
est en minuscules.
- Veillez également à mettre à jour la variable d'environnement
PROJECT_ID avec l'ID de votre projet.
Attendez que la fonction soit entièrement redéployée.
Déployer la fonction Cloud Run de traitement de documents
Tâche 5 : Tester et valider la solution de bout en bout
Pour finir, vous devez traiter correctement l'ensemble des factures disponibles dans le dossier ~/document-ai-challenge/invoices à l'aide de votre pipeline.
-
Importez ces factures dans le bucket Cloud Storage d'entrée et surveillez la progression du pipeline.
-
Surveillez les événements jusqu'à ce que vous voyiez un événement final indiquant que l'exécution de la fonction s'est terminée avec l'état OK.
Une fois que le pipeline a entièrement traité les documents, vous pouvez constater que les informations de formulaire extraites des factures par le processeur Document AI ont été écrites dans la table BigQuery.
Remarque : Pour suivre la progression, cliquez sur Journaux dans la section "Gestion" de la fonction Cloud Run.
Remarque : Vous rencontrerez peut-être des erreurs qui n'affectent pas de manière significative le traitement des documents, en particulier des erreurs d'expiration de délai. Si vous ne voyez pas que des données ont été écrites dans BigQuery, vérifiez que les paramètres définis dans l'onglet Variables et secrets de la console Cloud Run sont corrects, puis réessayez.
En particulier, assurez-vous que les variables d'ID du processeur et de l'emplacement que vous avez définies sont valides. Notez que le paramètre d'emplacement doit être en minuscules.
Notez également que la liste des événements ne s'actualise pas automatiquement.
Valider les données traitées par le pipeline
Félicitations !
Félicitations ! Dans cet atelier, vous avez créé un pipeline de traitement de documents qui traite automatiquement les documents importés dans Cloud Storage à l'aide de l'API Document AI. Vous avez créé un processeur de formulaires, déployé une fonction Cloud Run pour traiter les documents et validé la solution de bout en bout en traitant un ensemble de factures.

Formations et certifications Google Cloud
Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.
Dernière mise à jour du manuel : 14 novembre 2025
Dernier test de l'atelier : 14 novembre 2025
Copyright 2026 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.