Um dia na vida de um desenvolvedor do Google Cloud geralmente envolve usar vários produtos e serviços dessa infraestrutura. Com esses produtos, o profissional pode desenvolver, testar, implantar e gerenciar aplicativos na nuvem. O chat interativo, a assistência de código e as integrações incorporadas do Gemini podem ajudar a aumentar a produtividade dos desenvolvedores ao usar os produtos do Google Cloud.
Observação: a Duet AI agora é o Gemini, nosso modelo de última geração. Este laboratório foi atualizado para refletir essa mudança. Ao seguir as instruções dele, as referências à Duet AI na interface do usuário ou na documentação devem ser tratadas como referentes ao Gemini.
Observação: como uma tecnologia em estágio inicial, o Gemini pode gerar uma saída plausível, mas que é factualmente incorreta. Recomendamos que você valide todas as saídas antes de usá-las. Para mais informações, consulte Gemini para o Google Cloud e IA responsável.
Objetivos
Neste laboratório, você vai usar o Gemini para realizar as seguintes tarefas:
Usar o Gemini Code Assist no editor do Cloud Shell para criar um web app.
Implantar o aplicativo no Cloud Run.
Escrever um comando para que o Gemini explique um erro no aplicativo e sugira uma correção.
Desenvolver testes de integração para o aplicativo usando o Gemini.
Usar o Gemini Cloud Assist com o BigQuery para aprender a carregar dados em uma tabela, além de gerar e explicar uma consulta.
Usar o Gemini Cloud Assist com o Spanner para consultar dados de transações.
Acessar os registros de aplicativos com a ajuda do Gemini Cloud Assist.
Configuração
Para cada laboratório, você recebe um novo projeto do Google Cloud e um conjunto de recursos por um determinado período sem custo financeiro.
Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento.
No painel Detalhes do laboratório à esquerda, você vai encontrar o seguinte:
O botão Abrir console do Google Cloud
O tempo restante
As credenciais temporárias que você vai usar neste laboratório
Outras informações, se forem necessárias
Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.
O laboratório ativa os recursos e depois abre a página Fazer login em outra guia.
Dica: coloque as guias em janelas separadas lado a lado.
Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta.
Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.
{{{user_0.username | "Nome de usuário"}}}
Você também encontra o Nome de usuário no painel Detalhes do laboratório.
Clique em Seguinte.
Copie a Senha abaixo e cole na caixa de diálogo de boas-vindas.
{{{user_0.password | "Senha"}}}
Você também encontra a Senha no painel Detalhes do laboratório.
Clique em Seguinte.
Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud.
Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais.
Acesse as próximas páginas:
Aceite os Termos e Condições.
Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
Não se inscreva em testes gratuitos.
Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.
Observação: clique em Menu de navegação no canto superior esquerdo para acessar uma lista de produtos e serviços do Google Cloud.
Ativar o Cloud Shell
O Cloud Shell é uma máquina virtual que contém ferramentas para desenvolvedores. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece aos seus recursos do Google Cloud acesso às linhas de comando. A gcloud é a ferramenta ideal para esse tipo de operação no Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.
No painel de navegação do Console do Google Cloud, clique em Ativar o Cloud Shell ().
Clique em Continuar.
O provisionamento e a conexão do ambiente podem demorar um pouco. Quando esses processos forem concluídos, você já vai ter uma autenticação, e o projeto estará definido com seu PROJECT_ID. Por exemplo:
Ao adicionar esses papéis, o usuário pode contar com o suporte do Gemini.
Para verificar o objetivo, clique em Verificar meu progresso.
Configurar o ambiente e a conta.
Tarefa 2: criar o web app
Este laboratório usa o web app do mercado Cymbal Superstore. Nas próximas tarefas, você vai usar o Gemini para desenvolver e implantar um novo recurso nesse aplicativo. Nesta tarefa, o objetivo é criar os componentes de front-end e back-end do app.
Configurar o ambiente
Execute os comandos a seguir e conclua as duas próximas subtarefas no Cloud Shell.
Para executar o recurso de ajuda de credencial do Docker, use o seguinte comando:
gcloud auth configure-docker
Se for necessário continuar, digite Y.
Faça o download do código do aplicativo cymbal-superstore:
Para implantar o back-end como um serviço no Cloud Run, execute o seguinte comando:
gcloud run deploy inventory --image={{{project_0.startup_script.inventory_container_image_url|inventory container image url}}} --port=8000 --region={{{project_0.default_region|set at lab start}}} --set-env-vars=PROJECT_ID={{{project_0.project_id | Google Cloud Project ID}}} --allow-unauthenticated
Copie o valor do URL de serviço exibido na saída do comando gcloud run deploy.
Criar o front-end
Crie o front-end executando os comandos no terminal do Cloud Shell.
Atualize o código do front-end para se conectar ao endpoint do Cloud Run do back-end:
a. Na barra de menus do Cloud Shell, clique em Abrir editor.
b. No menu View do editor, clique em Toggle hidden files.
c. Na lista de pastas em "Explorer", selecione cymbal-superstore.
d. Abra a pasta frontend e selecione o arquivo .env.production.
e. No arquivo, substitua o valor de REACT_APP_INVENTORY_API_URL colando o valor do URL do endpoint do serviço de back-end do Cloud Run que você copiou antes.
Para criar o front-end, clique em Open Terminal e execute os seguintes comandos no Cloud Shell:
cd ~/cymbal-superstore/frontend
npm install && npm run build
Para fazer upload do app da Web do front-end no Cloud Storage, execute o seguinte comando:
Abra uma guia no navegador e acesse o seguinte URL:
http://{{{project_0.startup_script.frontend_ip|frontend IP address}}}
Observação: se você receber um pop-up indicando que o IP externo não oferece suporte a uma conexão segura, clique em Continuar para o site.
O app da Web exibe a página inicial da Cymbal Superstore.
Clique em Novidades.
Haverá uma página de front-end fictícia com produtos marcadores de posição. Isso é esperado, já que você vai implementar o código da API Inventory do back-end para disponibilizar a nova página de produtos nas próximas tarefas deste laboratório.
Para verificar o objetivo, clique em Verificar meu progresso.
Crie o web app.
Tarefa 3: modificar o back-end do web app
Agora, vamos usar o Gemini para adicionar funcionalidade ao back-end do app da Web.
Nesta tarefa, você vai escrever um comando para que o Gemini complete o código para implementar o endpoint /newproducts no aplicativo.
Desenvolver o endpoint /newproducts
No editor do Cloud Shell, abra o arquivo backend/index.ts.
No arquivo de código-fonte index.ts, role até a linha 91, onde há o comentário do marcador de posição para o endpoint /newproducts:
// Seu código para o endpoint GET /newproducts vai aqui.
Substitua o comentário do marcador de posição pelo seguinte comando para o Gemini:
// Crie um novo endpoint /newproducts que use filtros where para recuperar somente produtos que foram adicionados nos últimos sete dias e que estão em estoque.
Caso queira enviar um comando para o Gemini gerar o código da função, selecione o comentário inteiro e clique na lâmpada ().
No menu Mais ações, selecione Gemini: gerar código.
Passe o cursor sobre o código gerado e, na barra de ferramentas do Gemini, clique em Aceitar.
O Gemini preenche o código de função do endpoint /newproducts.
Observação: o Gemini pode gerar várias versões do código para seu comando. Role pela lista na barra de ferramentas para escolher uma versão específica.
No terminal do Cloud Shell, autentique o aplicativo para acessar o Firestore:
gcloud auth application-default login
Siga as instruções clicando no link para autenticar sua conta do Google Cloud e copie/cole o código de autorização quando ele for solicitado.
Para iniciar o servidor de back-end, execute os seguintes comandos:
cd ~/cymbal-superstore/backend
npm run start
O servidor da API Inventory do back-end inicia e fica pronto quando mostra o seguinte texto:
Cymbal Superstore: Inventory API running on port: 8000
Invocar o endpoint /newproducts
Na barra de menus do terminal do Cloud Shell, clique em + para abrir um novo terminal.
Para invocar o endpoint de API, execute o seguinte comando:
curl localhost:8000/newproducts
O comando responde com um erro:
curl: (52) Empty reply from server
Na janela do terminal original, confira o rastro de exceção registrado pelo back-end.
A partir do rastro, parece que a causa raiz da exceção é:
detalhes: ...'A consulta contém filtros de intervalo e desigualdade em vários campos. Consulte as práticas recomendadas da seleção de índice na documentação: https://cloud.google.com/firestore/docs/query-data/multiple-range-fields.',
Tarefa 5: corrigir o back-end com a ajuda do Gemini Code Assist
Receber ajuda do Gemini Code Assist
No editor do Cloud Shell, abra o arquivo backend/index.ts.
Para abrir a janela de chat do Gemini Code Assist, na barra de menus do editor de código, clique em Gemini Code Assist Chat.
No comando do Ask Gemini, digite o seguinte texto e clique em Enviar ():
Quero ajuda para depurar este erro do cliente do Firestore: a consulta contém filtros de intervalo e desigualdade em vários campos
O Gemini responde com a explicação do erro e sugestões para corrigir o problema. Confira parte de um exemplo de resposta:
A mensagem de erro "A consulta contém filtros de intervalo e desigualdade em vários campos" aparece no Firestore quando você tenta usar operadores de intervalo (como >, >=, <, <=) ou de desigualdade (!=) em mais de um campo em uma única consulta. As limitações de indexação do Firestore impedem que ele gerencie essas consultas de maneira eficiente.
O Gemini também oferece uma solução para corrigir o erro.
Observação: o Gemini pode gerar diferentes respostas a cada execução, então sua resposta talvez não seja igual ao exemplo mostrado.
Para corrigir esse erro, use apenas um filtro de desigualdade.
No arquivo backend/index.ts, para remover o filtro quantity, exclua o seguinte código do gerenciador /newproducts:
.where("quantity", ">", 0)
Ao excluir esse código, apenas um filtro de desigualdade verifica o carimbo de data/hora. Os produtos com quantidade igual a 0 não serão filtrados pela resposta da API.
Para remover produtos com quantidade igual a 0, agrupe o código em products.forEach() com a seguinte instrução if:
if (product.data().quantity > 0) {
}
Depois de agrupar o código com a instrução if, o código products.forEach() deve ser parecido com:
Para reiniciar o servidor da API de back-end, em um terminal, execute os seguintes comandos:
cd ~/cymbal-superstore/backend
npm run start
Alterne para o outro terminal bash e execute o comando curl de novo:
curl localhost:8000/newproducts
A API de back-end responde com uma matriz json que contém uma lista de produtos recém-adicionados.
No terminal original do Cloud Shell, pressione Control+C para sair do aplicativo.
Tarefa 6: testar o front-end
Repetir a criação e implantação do back-end
Siga as etapas anteriores para criar de novo a imagem do contêiner do serviço de back-end atualizado, enviar a imagem para o registro e implantar de novo o serviço de back-end no Cloud Run. As etapas aparecem aqui de novo para facilitar.
No Cloud Shell, abra um novo terminal ou use o terminal que já esteja aberto.
Para criar a imagem de contêiner do back-end, envie-a para o repositório e implante o serviço de back-end no Cloud Run, depois execute os seguintes comandos:
Abra uma guia no navegador e acesse o seguinte URL:
http://{{{project_0.startup_script.frontend_ip|frontend IP address}}}
O app da Web exibe a página inicial da Cymbal Superstore.
Clique em Novidades.
A página deve mostrar produtos retornados na resposta do endpoint /newproducts, que você implementou na tarefa anterior.
Tarefa 7: desenvolver testes com a ajuda do Gemini
Nesta tarefa, você vai escrever um teste para a nova API Products no back-end com a ajuda do Gemini.
Desenvolver o teste
No editor do Cloud Shell, abra o arquivo backend/index.test.ts.
Observação: este arquivo contém alguns testes simples desenvolvidos com uma ferramenta chamada Supertest, usando o framework de teste Jest.
Para abrir a janela de chat do Gemini Code Assist, na barra de menus do editor de código, clique em Gemini Code Assist Chat.
Caso queira enviar um comando para o Gemini ajudar você a escrever um teste para o endpoint GET /newproducts, digite o comando abaixo e clique em Enviar ():
Quero ajuda para escrever um teste Express.js usando o Jest, em TypeScript, para o gerenciador GET /newproducts em index.ts. O teste vai verificar se o código de resposta é 200 e se o tamanho da lista de novos produtos é 8.
O Gemini vai responder com o código de teste gerado. Copie e cole o bloco de código describe para o endpoint /newproducts no arquivo backend/index.test.ts.
Observação: copie apenas o bloco de código "describe". Não é necessário copiar as instruções "import" no exemplo.
Executar o teste
Para executar os testes, no terminal do Cloud Shell, execute os seguintes comandos:
cd ~/cymbal-superstore/backend
npm run test
Conforme indicado pela resposta ao comando test, todos os testes são executados e aprovados.
Observação: a resposta também indica que o pacote de testes não foi executado porque o ambiente do Jest foi desativado. Ignore esse erro e siga para a próxima tarefa.
Tarefa 8: usar o Gemini com o BigQuery
Nesta tarefa, você vai pedir a ajuda do Gemini para carregar dados em uma tabela no BigQuery e criar uma consulta que solicite a busca de dados a partir dessa tabela.
Enviar dados para o BigQuery
No menu de navegação () do console do Google Cloud, selecione BigQuery.
No painel Explorador do BigQuery, expanda e o conjunto de dados cymbal_sales e selecione a tabela cymbalsalestable.
Observação: o conjunto de dados e a tabela foram previamente fornecidos para este laboratório. Os dados da tabela estão em formato CSV e são armazenados em um bucket no Cloud Storage.
Para abrir a janela de chat do Gemini Cloud Assist, no menu superior do console do Google Cloud, clique em Abrir o Gemini () e, depois, em Iniciar chat.
Para o comando do Gemini, digite o texto abaixo e clique em Enviar ():
Qual comando bq pode ser usado para enviar dados CSV do Cloud Storage para o BigQuery?
Veja a resposta do Gemini. A resposta contém o comando bq load, que pode ser executado para enviar dados do Cloud Storage para o BigQuery.
No Cloud Shell, execute este comando:
bq load --source_format=CSV --autodetect cymbal_sales.cymbalsalestable gs://{{{project_0.project_id | Google Cloud Project ID}}}-cymbal-frontend/sales_bq_rawdata.csv
Observação: o comando já inclui os nomes substitutos do conjunto de dados e da tabela do BigQuery, além do caminho para o bucket do Cloud Storage que contém os dados CSV. Ele também usa a opção para detectar automaticamente o esquema da tabela.
Na UI do BigQuery, clique em Atualizar ().
Confira o esquema da tabela.
Clique em Consulta.
Substitua a consulta padrão por:
SELECT * FROM `{{{project_0.project_id | Google Cloud Project ID}}}.cymbal_sales.cymbalsalestable` LIMIT 1000;
Para executar a consulta, clique em Executar.
Na guia Resultados, confira os resultados da consulta que contém os dados da tabela. A tabela contém exemplos de dados de vendas semanais agregadas do produto obtidos pelo app da Web Cymbal Superstore.
Gerar uma consulta SQL com a ajuda do Gemini
Vamos usar o Gemini para ajudar a gerar uma consulta para os valores totais das vendas semanais.
Caso queira enviar um comando para que o Gemini gere uma consulta para as vendas na semana seguinte, de 12 de agosto, no mesmo campo Consulta abaixo da consulta inserida anteriormente, deixe uma linha em branco e clique em Gemini () no lado esquerdo dessa linha.
Na caixa de diálogo Gerar SQL com o Gemini, digite:
# Get sales for total_aug_12
Clique em Gerar.
Espere até que o Gemini gere a consulta. Em seguida, clique em Inserir.
Explicar e executar a consulta
Selecione a consulta, clique com o botão direito do mouse e selecione Explicar a seleção atual. Também é possível clicar no lápis mágico do Gemini que aparece na margem esquerda.
Uma explicação da consulta SQL aparece na janela de chat do Cloud Assist.
Para executar a consulta, clique em Executar.
Os resultados da consulta aparecem na guia Resultados, na parte de baixo da página.
Para verificar o objetivo, clique em Verificar meu progresso.
Use o Gemini com o BigQuery.
Tarefa 9: usar o Gemini com o Spanner
Para este laboratório, fornecemos previamente uma instância do Spanner e um banco de dados com exemplos de dados de transações de vendas.
Nesta tarefa, você vai usar o Gemini para gerar uma consulta SQL para buscar dados a partir do banco de dados transactions.
No menu do console do Google Cloud, em Bancos de dados, clique em Spanner.
Clique no link para abrir a instância do Spanner Cymbal Superstore Transactions.
Para abrir o banco de dados, clique em transactions-db.
No painel esquerdo, em Banco de dados, clique em Spanner Studio.
Clique para selecionar a guia Consulta sem título.
Na caixa de consulta, clique em Gerar SQL com o Gemini (), digite SELECIONAR e clique em Gerar.
Aguarde o Gemini fornecer sugestões de SQL.
Para aceitar as sugestões, clique em Inserir.
Exclua a cláusula WHERE da consulta SQL, se houver uma.
Para executar a consulta, clique em Executar.
Veja os resultados da consulta.
Tarefa 10: consultar registros com a ajuda do Gemini
É possível usar o Gemini para ajudar a operar e gerenciar seus serviços no Google Cloud. Nesta tarefa, você vai seguir as instruções do Gemini para consultar registros para o back-end do inventário que opera no Cloud Run.
Para abrir a janela de chat do Cloud Assist no console do Google Cloud, na barra de menu superior, clique em Chat do Gemini Cloud Assist ().
Para o comando do Gemini, digite o texto abaixo e clique em Enviar ():
Como posso consultar os registros do serviço do Cloud Run chamado "inventory" no console do Google Cloud?
Para consultar os registros do serviço do Cloud Run chamado inventory, siga as instruções na resposta do Gemini.
Parabéns!
Neste laboratório, você aprendeu a:
Criar, testar e implantar aplicativos usando produtos do Google Cloud e com a ajuda do Gemini.
Escrever um comando para que o Gemini Code Assist explique um erro no aplicativo e sugira uma correção.
Carregar dados em uma tabela no BigQuery, além de gerar e explicar consultas com a ajuda do Gemini Cloud Assist.
Usar o Gemini Cloud Assist com o Spanner.
Ver registros de aplicativos com a ajuda do Gemini Cloud Assist.
Finalize o laboratório
Após terminar seu laboratório, clique em End Lab. O Qwiklabs removerá os recursos usados e limpará a conta para você.
Você poderá avaliar sua experiência neste laboratório. Basta selecionar o número de estrelas, digitar um comentário e clicar em Submit.
O número de estrelas indica o seguinte:
1 estrela = muito insatisfeito
2 estrelas = insatisfeito
3 estrelas = neutro
4 estrelas = satisfeito
5 estrelas = muito satisfeito
Feche a caixa de diálogo se não quiser enviar feedback.
Para enviar seu feedback, fazer sugestões ou correções, use a guia Support.
Copyright 2024 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de empresas e produtos podem ser marcas registradas das empresas a que estão associados.
Os laboratórios criam um projeto e recursos do Google Cloud por um período fixo
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.
No canto superior esquerdo da tela, clique em Começar o laboratório
Usar a navegação anônima
Copie o nome de usuário e a senha fornecidos para o laboratório
Clique em Abrir console no modo anônimo
Fazer login no console
Faça login usando suas credenciais do laboratório. Usar outras credenciais pode causar erros ou gerar cobranças.
Aceite os termos e pule a página de recursos de recuperação
Não clique em Terminar o laboratório a menos que você tenha concluído ou queira recomeçar, porque isso vai apagar seu trabalho e remover o projeto
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.
Neste laboratório, você vai desenvolver um app e usar os serviços no Google Cloud com a ajuda das ferramentas de IA do Google.
Duração:
Configuração: 1 minutos
·
Tempo de acesso: 90 minutos
·
Tempo para conclusão: 90 minutos