arrow_back

Desarrolla apps de IA generativa con Gemini y Streamlit: Lab de desafío

Acceder Unirse
Obtén acceso a más de 700 labs y cursos

Desarrolla apps de IA generativa con Gemini y Streamlit: Lab de desafío

Lab 1 hora 30 minutos universal_currency_alt 5 créditos show_chart Intermedio
info Es posible que este lab incorpore herramientas de IA para facilitar tu aprendizaje.
Obtén acceso a más de 700 labs y cursos

GSP517

Logotipo de los labs de autoaprendizaje de Google Cloud

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 Desarrolla apps de IA generativa con Gemini y Streamlit. ¿Aceptas el desafío?

Configuración y requisitos

Antes de hacer clic en el botón Comenzar lab

Lee estas instrucciones. Los labs cuentan con un temporizador que no se puede pausar. El temporizador, que comienza a funcionar cuando haces clic en Comenzar lab, indica por cuánto tiempo tendrás a tu disposición los recursos de Google Cloud.

Este lab práctico te permitirá realizar las actividades correspondientes en un entorno de nube real, no en uno de simulación o demostración. Para ello, se te proporcionan credenciales temporales nuevas que utilizarás para acceder a Google Cloud durante todo el lab.

Para completar este lab, necesitarás lo siguiente:

  • Acceso a un navegador de Internet estándar. Se recomienda el navegador Chrome.
Nota: Usa una ventana del navegador privada o de incógnito (opción recomendada) para ejecutar el lab. Así evitarás conflictos entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.
  • Tiempo para completar el lab (recuerda que, una vez que comienzas un lab, no puedes pausarlo).
Nota: Usa solo la cuenta de estudiante para este lab. Si usas otra cuenta de Google Cloud, es posible que se apliquen cargos a esa cuenta.

Situación del desafío

Te integraste a Cymbal Health hace apenas unos meses. Cymbal Health es una red de salud establecida en el sector centro este de Minnesota que se dedica a reinventar y transformar la forma en que se puede brindar la atención médica. Cymbal Health conecta la atención y la cobertura en un plan de salud para que los pacientes puedan recibir atención de alta calidad con mayor facilidad a un costo asequible.

Como servicio de valor agregado, Cymbal Health está interesado en mejorar el bienestar y la vida saludable de los clientes, con sugerencias y consejos en sus apps. Un área en particular en la que quiere enfocarse es mejorar la nutrición de los clientes.

Logotipo de Cymbal Labs

Aprovechando el poder de Gemini, un modelo multimodal para generar texto, audio, imágenes y videos, Cymbal Health puede compilar aplicaciones que generen recomendaciones de comidas para sus clientes.

Por ejemplo, tu equipo ha estado trabajando para crear una app de chef basada en IA que genera recetas según las preferencias culinarias de los clientes, las restricciones y alergias alimentarias, y lo que suelen tener en sus casas o pueden comprar en un supermercado. Tu trabajo consiste en compilar, probar y, luego, implementar una prueba de concepto (PoC) para esta app de chef compilada con el modelo Gemini, el framework de Streamlit y Cloud Run. Como parte de esta PoC, tienen una lista de tareas que les gustaría que realizaras durante un período determinado en un entorno de zona de pruebas.

Tu desafío

Tus tareas incluyen lo siguiente:

  • Usar cURL para probar una instrucción con la API
  • Escribir código de Python para el framework de Streamlit y una instrucción para completar chef.py
  • Probar la aplicación
  • Modificar el Dockerfile y enviar la imagen de Docker a Artifact Registry
  • Implementar la aplicación en Cloud Run y probarla

Tarea 1: Usa cURL para probar una instrucción con la API

Antes de comenzar a crear la app de chef en Vertex AI, debes probar la conectividad con la API de Gemini.

  1. En el menú de navegación (Ícono del menú de navegación) de la consola de Google Cloud, haz clic en Vertex AI > Workbench.

  2. Busca la instancia y haz clic en el botón Abrir JupyterLab.

La interfaz de JupyterLab para tu instancia de Workbench se abrirá en una pestaña nueva del navegador.

Nota: Si no ves notebooks en JupyterLab, sigue estos pasos adicionales para restablecer la instancia:

1. Cierra la pestaña del navegador de JupyterLab y vuelve a la página principal de Workbench.

2. Selecciona la casilla de verificación junto al nombre de la instancia y haz clic en Restablecer.

3. Después de que se vuelva a habilitar el botón Abrir JupyterLab, espera un minuto y, luego, haz clic en Abrir JupyterLab.

  1. En el menú de la izquierda, modifica prompt.ipynb para incluir tu project_ID y la región en la celda 3. Puedes encontrar estos datos en el panel izquierdo de las instrucciones del lab.

  2. En el menú de la izquierda, modifica prompt.ipynb para usar la siguiente instrucción con cURL dentro de la celda 5. Para ello, reemplaza la instrucción existente.

    I am a Chef. I need to create Japanese recipes for customers who want low sodium meals. However, I do not want to include recipes that use ingredients associated with a peanuts food allergy. I have ahi tuna, fresh ginger, and edamame in my kitchen and other ingredients. The customer wine preference is red. Please provide some for meal recommendations. For each recommendation include preparation instructions, time to prepare and the recipe title at the beginning of the response. Then include the wine paring for each recommendation. At the end of the recommendation provide the calories associated with the meal and the nutritional facts.
  3. Ejecuta todas las celdas y observa los resultados.

  4. Guarda prompt.ipynb.

Una vez que estés conforme con los resultados, verifica el objetivo.

Para verificar este objetivo, haz clic en Revisar mi progreso. Usar cURL para probar una instrucción con la API

Tarea 2: Escribe código de Python para el framework de Streamlit y una instrucción para completar chef.py

Para esta tarea, clonarás un repo de GitHub y descargarás el archivo chef.py. Luego, agregarás el código del framework de Streamlit al archivo chef.py para la preferencia de vino, para completar la interfaz de usuario de la aplicación. También incluirás una instrucción personalizada de Gemini (similar a la de la tarea 1), pero esta incluye variables.

  1. Usa Cloud Shell para clonar el repo que aparece a continuación desde el directorio predeterminado.

    git clone https://github.com/GoogleCloudPlatform/generative-ai.git
  2. Navega al directorio gemini-streamlit-cloudrun.

    cd generative-ai/gemini/sample-apps/gemini-streamlit-cloudrun
  3. Especifica las dependencias en el archivo requirements.txt:

    google-cloud-logging Importante: Todo el trabajo de este lab de desafío debe realizarse dentro de este directorio. Si no descargas el archivo chef.py y lo modificas aquí, no se podrá acceder al framework de Streamlit. Tampoco podrás probarlo en Cloud Shell (tarea 3), compilar el contenedor de Docker (tarea 4), ni implementarlo y probarlo en Cloud Run (tarea 5).
  4. Descarga el archivo chef.py con el siguiente comando.

    gsutil cp {{{project_0.startup_script.python_file_path|Chef Python file path}}} .
  5. Abre el archivo chef.py en el editor de Cloud Shell y revisa el código.

    Nota: El archivo chef.py ya incluye el código de la interfaz de usuario del framework de Streamlit para las variables cuisine, dietary_preference, allergy, ingredient_1, ingredient_2 e ingredient_3. Revisa este código de interfaz antes de completar el siguiente paso.
  6. Para Project ID, usa , y para Location, usa .

  7. Agrega la opción del botón de selección del framework de Streamlit para la variable de vino. Incluye opciones para Tinto, Blanco y Ninguno.

  1. Guarda el archivo chef.py.

  2. Agrega la nueva instrucción de Gemini a continuación en el código de Python.

    prompt = f"""I am a Chef. I need to create {cuisine} \n recipes for customers who want {dietary_preference} meals. \n However, don't include recipes that use ingredients with the customer's {allergy} allergy. \n I have {ingredient_1}, \n {ingredient_2}, \n and {ingredient_3} \n in my kitchen and other ingredients. \n The customer's wine preference is {wine} \n Please provide some for meal recommendations. For each recommendation include preparation instructions, time to prepare and the recipe title at the beginning of the response. Then include the wine paring for each recommendation. At the end of the recommendation provide the calories associated with the meal and the nutritional facts. """
  3. Guarda el archivo chef.py.

Una vez que estés conforme con el código de la instrucción de Gemini que agregaste en chef.py, ejecuta el siguiente comando en Cloud Shell para subir el archivo al bucket -generative-ai. En la consola de Cloud, haz clic en Abrir terminal para abrir la sesión en Cloud Shell.

gcloud storage cp chef.py gs://{{{project_0.project_id|set at lab start}}}-generative-ai/

Para verificar este objetivo, haz clic en Revisar mi progreso. Escribir código de Python para el framework de Streamlit y una instrucción para completar chef.py .

Nota: Asegúrate de ejecutar el comando anterior después de realizar cualquier cambio en el archivo chef.py, de modo que el archivo chef.py actualizado esté presente en el bucket.

Tarea 3. Prueba la aplicación

Para esta tarea, usarás la terminal en Cloud Shell para ejecutar y probar tu aplicación.

Asegúrate de seguir en esta ruta: generative-ai/gemini/sample-apps/gemini-streamlit-cloudrun.

  1. Configura el entorno virtual de Python y, además, instala las dependencias:

  2. Configura las variables de entorno para PROJECT (como tu ID del proyecto) y REGION (como la región que estás utilizando en el entorno del lab).

  3. Ejecuta la aplicación chef.py y pruébala.

Una vez que hayas probado la aplicación en Cloud Shell y confirmado que funciona según lo diseñado, sin errores, verifica el objetivo.

Para verificar este objetivo, haz clic en Revisar mi progreso. Probar la aplicación

Tarea 4: Modifica el archivo Dockerfile y envía la imagen a Artifact Registry

En esta tarea, modificarás el Dockerfile de muestra para utilizar tu archivo chef.py y enviar la imagen de Docker a Artifact Registry.

Importante: Antes de completar los pasos de esta tarea, te recomendamos que establezcas variables de entorno para PROJECT (como el ID de tu proyecto) y REGION (como la región que estás utilizando en el entorno del lab), tal como lo hiciste en una tarea anterior.
  1. Usa el editor de Cloud Shell para modificar el Dockerfile para usar chef.py y, luego, guarda el archivo.

  2. En Cloud Shell, establece las siguientes variables de entorno:

    Variable Valor
    AR_REPO chef-repo
    SERVICE_NAME chef-streamlit-app
    Nota: Te recomendamos que combines este comando y los siguientes dos como uno solo, ya que el proceso para crear el repositorio de Artifact Registry y enviar la compilación a Cloud Build tarda alrededor de 8 minutos.
  3. Crea el repositorio de Artifact Registry con el comando gcloud artifacts repositories create y los siguientes parámetros:

    Parámetro Valor
    nombre del repo $AR_REPO
    ubicación $REGION
    formato del repositorio Docker
  4. Envía la compilación con el comando gcloud builds submit y los siguientes parámetros:

    Parámetro Valor
    etiqueta "$REGION-docker.pkg.dev/$PROJECT/$AR_REPO/$SERVICE_NAME"
  5. Espera a que se complete el comando.

Una vez que se complete el comando, verifica el objetivo.

Para verificar este objetivo, haz clic en Revisar mi progreso. Modificar el Dockerfile y enviar la imagen de Docker a Artifact Registry

Tarea 5: Implementa la aplicación en Cloud Run y pruébala

En esta tarea, implementarás la aplicación (como un artefacto de Docker) en Cloud Run y, luego, probarás que se ejecute desde el extremo de servicio de Cloud Run.

  1. En Cloud Shell, implementa la aplicación (como un artefacto de Docker) con el comando gcloud run deploy y los siguientes valores de parámetros:

    Parámetro Valor
    puerto 8080
    imagen "$REGION-docker.pkg.dev/$PROJECT/$AR_REPO/$SERVICE_NAME"
    marca --allow-unauthenticated
    región REGION
    plataforma managed
    proyecto PROJECT
    set-env-vars PROJECT=$PROJECT,REGION=$REGION
    Nota: Es posible que aparezca una instrucción con la pregunta “Do you want enable these APIs to continue (this will take a few minutes)” [“¿Quieres habilitar estas APIs para continuar (esto tardará algunos minutos)?”]. De ser así, selecciona Y para responder sí.

    La implementación tardará unos minutos en completarse y se te proporcionará una URL que dirige al servicio de Cloud Run. Puedes acceder a ella en el navegador para ver la aplicación de Cloud Run que acabas de implementar.

  2. Prueba la aplicación con el vínculo proporcionado.

Una vez que hayas probado que la aplicación se ejecuta correctamente en Cloud Run, verifica el objetivo.

Para verificar este objetivo, haz clic en Revisar mi progreso. Implementar la aplicación en Cloud Run y probarla

¡Felicitaciones!

Completar este lab de desafío significa que verificaste tus habilidades para desarrollar aplicaciones potenciadas por IA generativa con Gemini y aprendiste a utilizarlas en una aplicación de chef basada en IA.

Insignia de habilidad de Desarrolla apps de IA generativa con Gemini y Streamlit

Próximos pasos y más información

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.

Última actualización del manual: 28 de mayo de 2025

Prueba más reciente del lab: 28 de mayo de 2025

Copyright 2025 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.

Antes de comenzar

  1. Los labs crean un proyecto de Google Cloud y recursos por un tiempo determinado
  2. .
  3. Los labs tienen un límite de tiempo y no tienen la función de pausa. Si finalizas el lab, deberás reiniciarlo desde el principio.
  4. En la parte superior izquierda de la pantalla, haz clic en Comenzar lab para empezar

Usa la navegación privada

  1. Copia el nombre de usuario y la contraseña proporcionados para el lab
  2. Haz clic en Abrir la consola en modo privado

Accede a la consola

  1. Accede con tus credenciales del lab. Si usas otras credenciales, se generarán errores o se incurrirá en cargos.
  2. Acepta las condiciones y omite la página de recursos de recuperación
  3. No hagas clic en Finalizar lab, a menos que lo hayas terminado o quieras reiniciarlo, ya que se borrará tu trabajo y se quitará el proyecto

Este contenido no está disponible en este momento

Te enviaremos una notificación por correo electrónico cuando esté disponible

¡Genial!

Nos comunicaremos contigo por correo electrónico si está disponible

Un lab a la vez

Confirma para finalizar todos los labs existentes y comenzar este

Usa la navegación privada para ejecutar el lab

Usa una ventana de navegación privada o de Incógnito para ejecutar el lab. Así evitarás cualquier conflicto entre tu cuenta personal y la cuenta de estudiante, lo que podría generar cargos adicionales en tu cuenta personal.