GSP367
Descripción general
En un lab de desafío, se le proporcionarán una situación y un conjunto de tareas. En lugar de seguir instrucciones paso a paso, deberás utilizar las habilidades aprendidas en los labs del curso para decidir cómo completar las tareas por tu cuenta. Un sistema automatizado de puntuación (en esta página) mostrará comentarios y determinará si completaste tus tareas correctamente.
En un lab de desafío, no se explican conceptos nuevos de Google Cloud, sino que se espera que amplíes las habilidades que adquiriste, como cambiar los valores predeterminados y leer o investigar los mensajes de error para corregir sus propios errores.
Debe completar correctamente todas las tareas dentro del período establecido para obtener una puntuación del 100%.
Se recomienda este lab a los estudiantes inscritos en el curso de la insignia de habilidad Automatiza la captura de datos a gran escala con Document AI. ¿Aceptas el desafío?
Situación del desafío
Eres ingeniero de datos en una gran empresa de administración de infraestructura y te asignaron a un proyecto interno con la división financiera. La empresa tiene que procesar una cantidad cada vez mayor de documentos que requieren un procesamiento manual individual para su validación y autorización, lo que es una tarea costosa que requiere mucho personal. Por lo tanto, quiere aprovechar las herramientas de Google Cloud para automatizar el proceso de recopilación, categorización y verificación de documentos de una manera eficiente y con menos trabajo.
Tu desafío
Debes crear una canalización que procese automáticamente los documentos que se suban a Cloud Storage. Esta consta de una función de Cloud Run principal que gestiona archivos nuevos con un procesador de formularios de Document AI para extraer sus datos. Luego, la función guarda en BigQuery los datos de formularios detectados en esos archivos.
Se te proporciona el código fuente de la función de Cloud Run que realizará el procesamiento, y se espera que implementes la canalización de procesamiento de documentos como se muestra en la arquitectura a continuación, asegurándote de configurar correctamente los componentes para tu caso específico.

Tarea 1: Habilita la API de Cloud Document AI y copia los archivos fuente del lab
En esta tarea, habilitarás la API de Cloud Document AI y copiarás tus archivos iniciales en Cloud Shell.
Habilita la API de Cloud Document AI
- Habilita la API de Cloud Document AI.
Habilitar la API de Cloud Document AI
Copia los archivos fuente del lab en Cloud Shell
La función de Cloud Run con código predefinido se aloja en un bucket de Cloud Storage remoto. Copia estos archivos de origen en Cloud Shell, que incluyen el código fuente de la función de Cloud Run y el esquema de la tabla de BigQuery que crearás en el lab.
- En Cloud Shell, ingresa el siguiente comando para clonar el repositorio de código fuente del lab:
mkdir ./document-ai-challenge
gsutil -m cp -r gs://spls/gsp367/* \
~/document-ai-challenge/
Tarea 2: Crea un procesador de formularios
Crea una instancia del procesador general de formularios con el procesador From Parser de Document AI en la sección General (no especializada). Esta herramienta procesará cualquier tipo de documento y extraerá todo el contenido de texto que pueda identificar, así como la información de formulario que infiera del diseño.
- Crea el procesador con los siguientes detalles de configuración:
| Propiedad |
Valor |
| Tipo de procesador |
Form Parser |
| Nombre del procesador |
|
| Región |
EE.UU. |
Nota: Configurarás una función de Cloud Run más adelante en este lab con los valores de PROCESSOR ID y PARSER LOCATION de este procesador específico para procesar facturas. Haz clic en el procesador creado y anota su ID. La región del procesador también es la de PARSER LOCATION.
Crear un procesador de formularios
Tarea 3: Crea recursos de Google Cloud
Prepara tu entorno creando los recursos de Google Cloud Storage y BigQuery que se requieren para tu canalización de procesamiento de documentos.
Crea buckets de Cloud Storage de entrada, salida y archivo
- En este paso, debes crear los tres buckets de Cloud Storage que se enumeran a continuación con el acceso uniforme a nivel de bucket habilitado.
| Nombre del bucket |
Objetivo |
Clase de almacenamiento |
Ubicación |
|
Para facturas de entrada |
Estándar |
|
|
Para almacenar datos procesados |
Estándar |
|
|
Para archivar facturas |
Estándar |
|
Nota: Se puede crear un bucket de almacenamiento con la herramienta gsutil y el parámetro -mb, junto con el parámetro -c para establecer la clase de almacenamiento, -l para establecer la ubicación (regional) y la marca -b con el valor on u off para establecer el acceso uniforme a nivel de bucket. Lee la referencia de mb - Make buckets para obtener más información sobre cómo crear buckets con gsutil.
Crea un conjunto de datos y tablas de BigQuery
- En este paso, debes crear un conjunto de datos de BigQuery y la tabla de salida que se requiere para tu canalización de procesamiento de datos.
Conjunto de datos
| Nombre del conjunto de datos |
Ubicación |
| invoice_parser_results |
EE.UU. |
Nota: Usa bq mk para crear recursos de BigQuery. El parámetro de línea de comandos -d se usa para crear un conjunto de datos y --location se usa para establecer la ubicación del recurso. Lee la guía para crear conjuntos de datos para obtener más información sobre cómo crear uno con la herramienta de línea de comandos de bq.
Tabla
El esquema de la tabla para la información extraída se te proporcionó en el archivo JSON document-ai-challenge/scripts/table-schema/doc_ai_extracted_entities.json. Usa el esquema para crear una tabla llamada doc_ai_extracted_entities en el conjunto de datos invoice_parser_results.
Nota: Usa bq mk para crear recursos de BigQuery. El parámetro de línea de comandos --table se usa para crear una tabla. Para obtener más información sobre cómo crear tablas con una definición de esquema usando la herramienta de línea de comandos de bq, lee la guía Crea y usa tablas.
Puedes navegar a BigQuery en la consola de Cloud y, con el espacio de trabajo de BigQuery SQL, inspeccionar el esquema de las tablas en el conjunto de datos invoice_parser_results.
Crear recursos de Google Cloud
Tarea 4: Implementa la función de Cloud Run de procesamiento de documentos
Para completar esta tarea, debes implementar la función de Cloud Run que tu canalización de procesamiento de datos usará para gestionar las facturas subidas a Cloud Storage. Esta función utilizará un procesador de formularios genérico de la API de Document AI para extraer datos de formularios de los documentos sin procesar.
Puedes examinar el código fuente de la función de Cloud Run con el editor de código o cualquier otro editor que elijas. La función se almacena en las siguientes carpetas en Cloud Shell:
- Process Invoices -
scripts/cloud-functions/process-invoices
La función de Cloud Run process-invoices debe activarse cuando se suban archivos al bucket de almacenamiento de entrada que creaste anteriormente.
Implementa la función de Cloud Run para procesar documentos subidos a Cloud Storage
Implementa la función de Cloud Run que usará el procesador de formularios de Document AI para analizar los documentos de formularios subidos al bucket de Cloud Storage.
- Navega al directorio
scripts:
cd ~/document-ai-challenge/scripts
- Asigna el rol de lector de Artifact Registry a la cuenta de servicio de 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
- Implementa la función de 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
Nota: Si recibes un error de permiso mientras implementas la función, espera de 2 a 3 minutos y vuelve a ejecutar los comandos.
Si inspeccionas el código fuente de la función de Cloud Run, verás que esta obtiene los detalles del procesador de Document AI a través de dos variables de entorno de ejecución.
- Deberás reconfigurar la implementación de la función para que las variables de entorno
PROCESSOR_ID y PARSER_LOCATION contengan los valores correctos para el procesador Form Parser que implementaste en un paso anterior.
- Asegúrate de que el valor de PARSER_LOCATION
esté en minúsculas.
- Asegúrate de actualizar también la variable de entorno
PROJECT_ID con el ID de tu proyecto.
Espera a que la función se vuelva a implementar por completo.
Implementar la función de Cloud Run de procesamiento de documentos
Tarea 5: Prueba y valida la solución de extremo a extremo
En tu última tarea, debes procesar correctamente con tu canalización el conjunto de facturas que están disponibles en la carpeta ~/document-ai-challenge/invoices.
-
Sube estas facturas al bucket de Cloud Storage de entrada y supervisa el progreso de la canalización.
-
Observa los eventos hasta que veas un evento final que indique que la ejecución de la función terminó con un estado OK.
Una vez que la canalización haya procesado por completo los documentos, verás que la información del formulario que el procesador de Document AI extrajo de las facturas se escribió en la tabla de BigQuery.
Nota: Para supervisar el progreso, haz clic en Registros en la sección Administración de la función de Cloud Run.
Nota: Es posible que en este lab veas algunos errores que no afectan significativamente el procesamiento de documentos, como los tiempos de espera. Si no ves que se informen datos escritos en BigQuery, vuelve a verificar que los parámetros establecidos en la pestaña Variables y secretos de la consola de Cloud Run sean correctos y vuelve a intentarlo.
En particular, asegúrate de que las variables de ID del procesador y ubicación que estableciste sean válidas, y recuerda que el parámetro de ubicación debe estar en minúsculas.
Ten en cuenta que la lista de eventos no se actualiza automáticamente.
Validar los datos procesados por la canalización
¡Felicitaciones!
¡Felicitaciones! En este lab, creaste correctamente una canalización que procesa automáticamente los documentos subidos a Cloud Storage con la API de Document AI. Creaste un procesador de formularios, implementaste una función de Cloud Run para procesar documentos y validaste la solución de extremo a extremo procesando un conjunto de facturas.

Capacitación y certificación de Google Cloud
Recibe la formación que necesitas para aprovechar al máximo las tecnologías de Google Cloud. Nuestras clases incluyen habilidades técnicas y recomendaciones para ayudarte a avanzar rápidamente y a seguir aprendiendo. Para que puedas realizar nuestros cursos cuando más te convenga, ofrecemos distintos tipos de capacitación de nivel básico a avanzado: a pedido, presenciales y virtuales. Las certificaciones te ayudan a validar y demostrar tus habilidades y tu conocimiento técnico respecto a las tecnologías de Google Cloud.
Actualización más reciente del manual: 14 de noviembre de 2025
Prueba más reciente del lab: 14 de noviembre de 2025
Copyright 2026 Google LLC. All rights reserved. Google y el logotipo de Google son marcas de Google LLC. Los demás nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que estén asociados.