arrow_back

Desenvolvimento de aplicativos de IA generativa com Gemini e Streamlit: laboratório com desafio

Acesse mais de 700 laboratórios e cursos

Desenvolvimento de aplicativos de IA generativa com Gemini e Streamlit: laboratório com desafio

Laboratório 1 hora 30 minutos universal_currency_alt 5 créditos show_chart Intermediário
info Este laboratório pode incorporar ferramentas de IA para ajudar no seu aprendizado.
Acesse mais de 700 laboratórios e cursos

GSP517

Visão geral

Nos laboratórios com desafio, apresentamos uma situação e um conjunto de tarefas. Para concluí-las, em vez de seguir instruções detalhadas, você usará o que aprendeu nos laboratórios do curso. Um sistema automático de pontuação (mostrado nesta página) vai avaliar seu desempenho.

Nos laboratórios com desafio, não ensinamos novos conceitos do Google Cloud. O objetivo dessas tarefas é aprimorar aquilo que você já aprendeu, como a alteração de valores padrão ou a leitura e pesquisa de mensagens para corrigir seus próprios erros.

Para alcançar a pontuação de 100%, você precisa concluir todas as tarefas no tempo definido.

Este laboratório é recomendado para estudantes que se inscreveram no curso Desenvolvimento de aplicativos de IA generativa com Gemini e Streamlit. Tudo pronto para começar o desafio?

Configuração e requisitos

Antes de clicar no botão Começar o Laboratório

Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é ativado quando você clica em Iniciar laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.

Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, e não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.

Confira os requisitos para concluir o laboratório:

  • Acesso a um navegador de Internet padrão (recomendamos o Chrome).
Observação: para executar este laboratório, use o modo de navegação anônima (recomendado) ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e de estudante, o que poderia causar cobranças extras na sua conta pessoal.
  • Tempo para concluir o laboratório: não se esqueça que, depois de começar, não será possível pausar o laboratório.
Observação: use apenas a conta de estudante neste laboratório. Se usar outra conta do Google Cloud, você poderá receber cobranças nela.

Cenário do desafio

Você começou a trabalhar na Cymbal Health há apenas alguns meses. A Cymbal Health é uma rede de saúde consagrada na região central-leste de Minnesota que tem como objetivo transformar a forma como a assistência médica é oferecida. A empresa une cuidados médicos e cobertura em um único plano de saúde para facilitar o atendimento médico de alta qualidade a um custo acessível.

Como um serviço de valor agregado, a Cymbal Health quer melhorar a qualidade de vida e o bem-estar dos clientes com dicas e conselhos nos apps. Uma área específica que a empresa quer melhorar é a nutrição dos clientes.

Aproveitando a tecnologia do Gemini, um modelo multimodal para gerar texto, áudio, imagens e vídeo, a Cymbal Health pode criar aplicativos que geram recomendações de refeições para os clientes.

Por exemplo, a equipe está trabalhando para criar um app de receitas com tecnologia de IA, que gera receitas com base nas preferências culinárias, restrições alimentares e alergias dos clientes usando os alimentos que eles costumam ter em casa ou podem comprar em um mercado. Sua tarefa é criar, testar e implantar uma prova de conceito (POC) para este app de receitas criado com o modelo Gemini, o framework Streamlit e o Cloud Run. Como parte desta prova de conceito, há uma lista de tarefas que você precisa realizar em determinado período em um ambiente de sandbox.

Seu desafio

Suas tarefas são as seguintes:

  • Usar cURL para testar um comando com a API
  • Escrever o framework Streamlit e criar um comando para gerar o código em Python e concluir o arquivo chef.py
  • Testar o aplicativo
  • Modificar o Dockerfile e enviar a imagem Docker para o Artifact Registry
  • Implantar e testar o aplicativo no Cloud Run

Tarefa 1: usar cURL para testar um comando com a API

Antes de começar a criar o app de receitas na Vertex AI, teste a conectividade com a API Gemini.

  1. No menu de navegação () do console do Google Cloud, clique em Vertex AI > Workbench.

  2. Ache a instância e clique no botão Abrir o JupyterLab.

A interface do JupyterLab para sua instância do Workbench é aberta em uma nova guia do navegador.

Observação: se você não encontrar notebooks no JupyterLab, siga estas etapas para redefinir a instância:

1. Feche a guia do JupyterLab no navegador e volte à página inicial do Workbench.

2. Marque a caixa de seleção ao lado do nome da instância e clique em Redefinir.

3. Depois que o botão Abrir o JupyterLab for ativado novamente, aguarde um minuto e clique em Abrir o JupyterLab.

  1. No menu à esquerda, modifique prompt.ipynb para incluir project_ID e region na célula 3. Essa informação está disponível no painel à esquerda das instruções do laboratório.

  2. No menu à esquerda, modifique prompt.ipynb para usar o comando a seguir com o cURL na célula 5, substituindo o comando atual.

    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. Execute todas as células e verifique os resultados.

  4. Salve prompt.ipynb.

Quando os resultados forem satisfatórios, confira o objetivo.

Para conferir o objetivo, clique em Verificar meu progresso. Usar cURL para testar um comando com a API

Tarefa 2: escrever o framework Streamlit e criar um comando para gerar o código em Python para concluir o arquivo chef.py

Nesta tarefa, você vai clonar um repositório do GitHub e fazer o download do arquivo chef.py. Em seguida, você vai adicionar o código do framework Streamlit ao arquivo chef.py para incluir a preferência por vinho, concluindo a interface do usuário do aplicativo. Você também vai incluir um comando personalizado do Gemini (parecido com o da tarefa 1), mas este tem variáveis.

  1. Use o Cloud Shell para clonar o repositório abaixo no diretório padrão.

    git clone https://github.com/GoogleCloudPlatform/generative-ai.git
  2. Navegue até o diretório gemini-streamlit-cloudrun.

    cd generative-ai/gemini/sample-apps/gemini-streamlit-cloudrun
  3. Especifique as dependências no arquivo requirements.txt:

    google-cloud-logging Importante: todas as tarefas deste laboratório com desafio precisam ser feitas neste diretório. Se você não baixar e editar o arquivo chef.py aqui, ele não poderá acessar o framework Streamlit. Também não vai ser possível testá-lo no Cloud Shell (tarefa 3), criar o contêiner do Docker (tarefa 4) e implantar e testar no Cloud Run (tarefa 5).
  4. Baixe o arquivo chef.py usando o comando a seguir:

    gsutil cp {{{project_0.startup_script.python_file_path|Chef Python file path}}} .
  5. Abra o arquivo chef.py no editor do Cloud Shell e revise o código.

    Observação: o arquivo chef.py já inclui o código da interface do usuário do framework Streamlit para as variáveis cuisine, dietary_preference, allergy, ingredient_1, ingredient_2 e ingredient_3. Revise esse código de interface antes de concluir a próxima etapa.
  6. Para o ID do projeto, use , e em "Local", use .

  7. Adicione o botão de opção do framework Streamlit para a variável wine. Inclua as opções "Red", "White" e "None".

  1. Salve o arquivo chef.py.

  2. Adicione o novo comando do Gemini a seguir no código em 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. Salve o arquivo chef.py.

Quando o resultado do código do comando do Gemini que você adicionou ao chef.py for satisfatório, faça upload do arquivo para o bucket -generative-ai executando o comando abaixo no Cloud Shell. No console do Cloud, clique em Abrir terminal para abrir a sessão no Cloud Shell.

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

Para verificar o objetivo, clique em Verificar meu progresso. Escrever o framework Streamlit e criar um comando para gerar o código em Python para concluir o arquivo chef.py

Observação: execute o comando acima depois de fazer qualquer mudança no arquivo chef.py. Dessa forma, o arquivo chef.py atualizado vai estar no bucket.

Tarefa 3: testar o aplicativo

Nesta tarefa, você vai usar o terminal no Cloud Shell para executar e testar o aplicativo.

Verifique se você ainda está neste caminho: generative-ai/gemini/sample-apps/gemini-streamlit-cloudrun.

  1. Configure o ambiente virtual de Python e instale as dependências.

  2. Defina as variáveis de ambiente para PROJECT (como o ID do projeto) e REGION (como a região que você está usando no ambiente do laboratório).

  3. Execute e teste o aplicativo chef.py.

Depois de testar o aplicativo no Cloud Shell e confirmar que ele não tem erros e está funcionando conforme o esperado, confira o objetivo.

Para conferir o objetivo, clique em Verificar meu progresso. Testar o aplicativo

Tarefa 4: modificar o Dockerfile e enviar a imagem para o Artifact Registry

Nesta tarefa, você vai modificar o exemplo de Dockerfile para usar o arquivo chef.py e enviar a imagem Docker para o Artifact Registry.

Importante: antes de concluir as etapas desta tarefa, recomendamos que você defina as variáveis de ambiente para PROJECT (como o ID do projeto) e REGION (como a região que você está usando no ambiente do laboratório), como fez na tarefa anterior.
  1. Use o editor do Cloud Shell para modificar o Dockerfile para usar o chef.py e salve o arquivo.

  2. No Cloud Shell, configure as seguintes variáveis de ambiente:

    Variável Valor
    AR_REPO chef-repo
    SERVICE_NAME chef-streamlit-app
    Observação: recomendamos que você combine esse comando e os dois comandos a seguir em um só, porque o processo para criar o Artifact Registry e enviar o build para o Cloud Build leva cerca de 8 minutos.
  3. Crie o repositório do Artifact Registry com o comando gcloud artifacts repositories create e os parâmetros a seguir:

    Parâmetro Valor
    nome do repositório $AR_REPO
    localização $REGION
    formato do repositório Docker
  4. Envie o build com o comando gcloud builds submit e os parâmetros a seguir:

    Parâmetro Valor
    tag "$REGION-docker.pkg.dev/$PROJECT/$AR_REPO/$SERVICE_NAME"
  5. Aguarde a conclusão do comando.

Verifique o objetivo após a conclusão do comando.

Para conferir o objetivo, clique em Verificar meu progresso. Modificar o Dockerfile e enviar a imagem Docker para o Artifact Registry

Tarefa 5: implantar e testar o aplicativo no Cloud Run

Nesta tarefa, você vai implantar o aplicativo (como um artefato do Docker) no Cloud Run e testá-lo como se ele estivesse sendo executado no endpoint do serviço do Cloud Run.

  1. No Cloud Shell, implante o aplicativo (como um artefato do Docker) usando o comando gcloud run deploy e os seguintes valores de parâmetros:

    Parâmetro Valor
    porta 8080
    imagem "$REGION-docker.pkg.dev/$PROJECT/$AR_REPO/$SERVICE_NAME"
    flag --allow-unauthenticated
    região REGION
    plataforma gerenciado
    projeto PROJECT
    set-env-vars PROJECT=$PROJECT,REGION=$REGION
    Observação: talvez a pergunta "Quer ativar essas APIs para continuar (isso vai levar alguns minutos)?" seja exibida. Se aparecer, selecione S para sim.

    A implantação vai levar alguns minutos, e você vai receber um URL do serviço do Cloud Run. Você pode acessá-lo no navegador para visualizar o aplicativo do Cloud Run que acabou de implantar.

  2. Teste o aplicativo com o link recebido.

Depois de testar com sucesso o aplicativo em execução no Cloud Run, confira o objetivo.

Para conferir o objetivo, clique em Verificar meu progresso. Implantar e testar o aplicativo no Cloud Run

Parabéns!

Ao concluir este laboratório com desafio, você mostrou suas habilidades de desenvolvimento de aplicativos de IA generativa com o Gemini e demonstrou como pode aplicá-las ao aplicativo de receitas com tecnologia de IA.

Próximas etapas / Saiba mais

Treinamento e certificação do Google Cloud

Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.

Manual atualizado em 28 de maio de 2025

Laboratório testado em 28 de maio de 2025

Copyright 2025 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.

Antes de começar

  1. Os laboratórios criam um projeto e recursos do Google Cloud por um período fixo
  2. Os laboratórios têm um limite de tempo e não têm o recurso de pausa. Se você encerrar o laboratório, vai precisar recomeçar do início.
  3. No canto superior esquerdo da tela, clique em Começar o laboratório

Este conteúdo não está disponível no momento

Você vai receber uma notificação por e-mail quando ele estiver disponível

Ótimo!

Vamos entrar em contato por e-mail se ele ficar disponível

Um laboratório por vez

Confirme para encerrar todos os laboratórios atuais e iniciar este

Use a navegação anônima para executar o laboratório

Para executar este laboratório, use o modo de navegação anônima ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e a conta de estudante, o que poderia causar cobranças extras na sua conta pessoal.