Como criar agentes de IA com a Vertex AI Agent Builder

1. Antes de começar

Neste codelab autodirigido, você vai aprender a criar agentes de IA com o Vertex AI Agent Builder do Google Cloud. Cada etapa vai destacar um recurso específico do Agent Builder e explicar a finalidade dele.

Pré-requisitos

O que você vai aprender

  • Como criar um agente de IA simples usando o Vertex AI Agent Builder
  • Como embasar o agente criado anexando um repositório de dados
  • Como integrar o agente de IA ao seu site(opcional)

O que é necessário

  • Uma mente curiosa
  • Um computador em funcionamento com uma rede Wi-Fi confiável
  • Ter um projeto na nuvem do Google Cloud com o faturamento anexado.

Observação: se você ainda não tiver um projeto do Google Cloud, crie um seguindo estas instruções. Você também pode conferir os Serviços do nível sem custo financeiro do Google Cloud.

2. Como criar seu primeiro agente de IA

Agora você está pronto para criar seu próprio agente de IA. Mas antes de começar o desenvolvimento, é essencial estabelecer uma visão clara para seu agente. Faça estas perguntas importantes:

  • Que problema ele vai resolver? Ele vai automatizar tarefas, fornecer informações, oferecer entretenimento ou facilitar a exploração criativa?
  • Quais são as principais funções dele? Ele vai executar ou delegar tarefas? Ele vai gerar texto ou uma combinação de mídias diferentes?
  • Quais são as limitações? Ele vai conseguir fazer tudo de forma autônoma?
  • Qual personalidade ou persona ele deve ter? Ele será formal, informal, engraçado, útil ou informativo?
  • Quais são as métricas de sucesso? Como você vai medir a eficácia do agente?

Para acelerar o processo, confira as respostas a essas perguntas para o agente de viagens que você vai criar hoje:

  • Que problema ele vai resolver?
  • Planejar uma viagem pode ser demorado e cansativo. Esse agente de viagens vai ajudar os usuários a descobrir destinos, planejar itinerários e reservar voos e acomodações.
  • Quais são as principais funções dele?
  • O agente precisa ser capaz de
  • responder a perguntas sobre destinos, como requisitos de visto;
  • planejar itinerários que funcionem para os horários e objetivos dos usuários;
  • reservar voos e acomodações
  • Quais são as limitações?
  • O agente pode não conseguir responder a consultas complicadas por padrão
  • O agente não poderá gerar imagens visuais
  • O conhecimento do agente é limitado pelo modelo subjacente.
  • Qual personalidade ou persona ele deve ter?
  • Ele precisa ser experiente, prestativo e entusiasta sobre viagens. Ele precisa ser capaz de comunicar informações de forma clara e concisa.
  • Quais são as métricas de sucesso?
  • O sucesso desse agente pode ser medido pela satisfação dos usuários com as recomendações dele (explorar, planejar, reservar).

3. Como criar um agente de IA com o Vertex AI Agent Builder

Com o Vertex AI Agent Builder, é possível criar agentes de IA em apenas algumas etapas.

Etapa 1:

  • Acesse o Vertex AI Agent Builder.
  • A página de boas-vindas vai aparecer. 833886ce0d2645ba.png
  • Clique no botão CONTINUAR E ATIVAR A API.

Etapa 2:

  • Você será redirecionado para a página de criação de apps. f2d45cc76d62edeb.png
  • Clique no botão CRIAR UM NOVO APP.

Etapa 3

  • Escolha Agente de conversação e clique em CRIAR.

732d2cd9e10c9a79.png

Observação:

  1. Depois de clicar em CRIAR, uma nova guia de Agentes de conversação do Dialogflow será aberta.
  2. Se for solicitado que você escolha um projeto do Google Cloud, selecione o projeto associado à sua conta correta do Gmail.
  3. Se você estiver fazendo este laboratório em uma nova conta, será necessário ativar a API Dialogflow. Clique em Ativar API para fazer isso.

238281df06301db0.png

  • Se clicar no botão não funcionar, acesse diretamente a página da API para ativar manualmente.
  • Na página do Dialogflow que acabou de abrir, clique em Criar agente.

42515e46bc63506d.png

  • Agora, ele vai mostrar algumas opções para criar um agente. Escolha Crie seu.

8af6bf0853f20768.png

Etapa 4:

  • Escolha um Nome de exibição (por exemplo, Travel Buddy)
  • Em "Local", selecione global (Disponibilidade global, dados em repouso nos EUA) como Região.
  • Manter outra configuração, padrão
  • Clique no botão CRIAR.

4e0dea29e5d8acde.png

Etapa 5:

  • Escolha um Nome do playbook (por exemplo, Agente de informações).
  • Adicione um Objetivo (por exemplo, "Ajudar os clientes a responder a consultas relacionadas a viagens")
  • Defina uma instrução (por exemplo, "Cumprimente o usuário e pergunte como você pode ajudar").
  • Pressione Salvar quando tudo estiver finalizado.

f8bfd605ddd97cf8.png

Etapa 6:

  • Clique no ícone Ativar simulador 72588cbe8734f54e.png.
  • Selecione o agente que você acabou de criar (por exemplo, Agente de informações).
  • Escolha o modelo de IA generativa para seu agente (por exemplo, gemini-1.5-flash)
  • Teste o agente conversando com ele.Por exemplo, digite algo na caixa de texto "Enter User Input" (Inserir entrada do usuário).

3ac3cf54a1e2098.png

Parabéns! Você acabou de criar um agente de IA usando o Vertex AI Agent Builder.

4. Como anexar repositórios de dados ao agente

Tente perguntar ao seu agente sobre como chegar a Wakanda (por exemplo, "Qual é a melhor maneira de chegar a Wakanda?"). Você vai receber uma resposta como esta:

5baa2dbabe2941a2.png

Embora isso esteja correto, em vez de simplesmente dizer "Não posso fornecer informações" e encerrar a conversa, seria mais útil para o usuário se o agente sugerisse lugares semelhantes. Essa abordagem pode levar os usuários a reservar uma viagem pelo agente.

Para que o agente recomende lugares semelhantes, você pode fornecer mais informações a ele usando os repositórios de dados. Ela funciona como uma base de conhecimento adicional para o agente consultar se não conseguir responder às perguntas do usuário com base no conhecimento integrado.

Observação:se quiser fechar o simulador, clique no ícone de alternância do simulador novamente.

Para criar um repositório de dados, clique no botão + Repositório de dados na parte de baixo da página "Noções básicas sobre agentes".

6c3ef19fefc46af7.png

Preencha as seguintes informações:

  • Nome da ferramenta:local alternativo
  • Tipo:repositório de dados
  • Descrição:use essa ferramenta se a solicitação do usuário contiver um local que não existe.

Clique em Salvar quando terminar.

Isso cria uma ferramenta para o agente se comunicar com o repositório de dados, mas ainda é necessário criar um repositório de dados real que contenha as informações. Para fazer isso, clique em Adicionar repositórios de dados e Criar um repositório de dados.

65c790a87de8fba8.png

7648d478a6f35cf0.png

Depois de clicar em Criar novo repositório de dados, você será redirecionado para a página do Vertex AI Agent Builder, como abaixo:

Escolher uma opção do Cloud Storage

bff5455fac531509.png

Depois de concluir a etapa,

  • clique em ARQUIVO. Isso é muito importante. Caso contrário, a importação vai falhar.
  • digite ai-workshops/agents/data/wakanda.txt
  • clique em CONTINUAR

d1983baa579eb78c.png

Se você tiver curiosidade, confira o conteúdo do arquivo de texto fornecido:

Places that are similar to Wakanda

- Oribi Gorge in South Africa: The rock formations here are reminiscent of the Warrior Falls in Wakanda.

- Iguazu Falls: Located on the border of Argentina and Brazil, these massive waterfalls were a major inspiration for the Warrior Falls.

- Immerse yourself in Wakandan culture: Read the Black Panther comics, watch the movies, and explore online resources to learn more about Wakandan culture, language, and technology.

- Visit a Disney theme park: While there isn't a dedicated Wakanda land yet, you might be able to meet Black Panther at Disneyland or on a Marvel Day at Sea Disney cruise.

Na próxima página, nomeie o repositório de dados (por exemplo, Wakanda Alternative) e clique em CRIAR.

93eb71e8d019ae24.png

Como etapa final, SELECIONE a fonte de dados que você acabou de criar e clique em CRIAR. Para conferir o progresso da importação do repositório de dados,clique nele.

de1ac9256cc96f29.png

Observação:a atividade de importação leva algum tempo para ser concluída. Enquanto isso, você pode conferir mais opções de repositório de dados disponíveis para seu agente de IA da Vertex AI aqui.

9b5c4a2831728a6b.png

Se tudo correr bem, volte à guia do Dialogflow e clique em atualizar. O repositório de dados criado vai aparecer na página Repositórios de dados disponíveis.

a44373b78bd95ff0.png

Para evitar alucinações do agente, na configuração de embasamento do repositório de dados, defina a opção como Muito baixa, que aplica restrições mais rígidas para que o agente não invente coisas. Por enquanto, mantenha a configuração padrão, mas você pode testar com outras configurações quando quiser.

c1605bd076258050.png

Agora, selecione o repositório de dados adicionado, clique em Confirmar e em Salvar.

40082aebe8b82d7c.png

Agora, volte para a página Noções básicas do agente. Na parte de baixo da configuração do playbook, você vai ver que o repositório de dados recém-criado(por exemplo, "Localização alternativa") está disponível para uso. Marque o repositório de dados (por exemplo, "Localização alternativa") e clique no botão "Salvar" na parte de cima da página.

1b6b82fd7f30a598.png

e09af18697b0fd7f.png

Você está quase lá! A etapa final é incluir a ferramenta "Local alternativo" nas instruções do agente. Adicione uma linha, - Use ${TOOL: Alternative Location} se a solicitação do usuário contiver um local que não existe, às instruções do agente e clique em Salvar.

3134d9eadca34e21.png

Tudo pronto. Vamos abrir o simulador de alternância novamente e fazer as mesmas perguntas (por exemplo, "Qual é a melhor maneira de chegar a Wakanda?").

6cdee598391fc82a.png

Parabéns! Agora, seu agente recomenda lugares usando as informações fornecidas em um arquivo de texto.

Pronto! Terminamos de criar nosso próprio agente de IA do criador de agentes. Se quiser saber mais sobre como personalizar seu agente para uma experiência melhor, confira as atividades adicionais abaixo.

5. Atividades complementares: ativar seu agente de IA

Nas etapas anteriores, você desenvolveu um agente de IA e o fundamentou com dados de referência relevantes. Na seção a seguir, você vai abordar a questão crucial de como incorporar esse agente ao seu site, permitindo a interação em tempo real com os visitantes.

Há muitas maneiras de expor seu agente. Você pode exportar ou publicar diretamente. Confira a documentação para saber mais sobre as opções disponíveis.

No canto superior direito da guia do Dialogflow, clique no menu flutuante e em Publicar agente.

a1b109fa9d7cb51d.png

Mantenha toda a configuração como Padrão e clique em Ativar API não autenticada.

Observação:ativar a API não autenticada é apenas para fins de demonstração, e essa configuração não é recomendada para uso em cargas de trabalho de produção. Se você tiver interesse em publicar com segurança, confira esta documentação.

ef0f24db780a185e.png

Ao clicar, você vai ver um pequeno snippet de código CSS:

c40d12f6207bf5b4.png

Basta copiar o snippet de código. Você vai integrar esse snippet de código a um site mais tarde.

Para criar um site, você vai usar o ambiente do Cloud Editor. Confira as etapas para abrir o editor do Cloud:

  1. Abra o console do Google Cloud em outra guia.
  2. Clique no botão Ativar o Cloud Shell no canto superior direito.
  3. Clique no botão Abrir editor.

Se aparecer uma solicitação para autorizar o Cloud Shell, clique em Autorizar para continuar.

d23192eca480f00c.png

Na seção a seguir, você vai usar o Gemini Code Assist para criar um exemplo de aplicativo da Web Python Flask e integrar ao snippet do agente.

Depois que o editor do Cloud Shell for aberto, clique em Gemini Code Assist e faça login no seu projeto do Google Cloud. Se for necessário ativar a API, clique em Ativar.

93112cce3e8d963b.png

Depois disso, vamos pedir ao Gemini Code Assist para criar um app Flask e integrar o snippet de código do agente de IA a ele.

Confira um exemplo de comando que você pode usar:

Here is my Travel buddy Vertex AI agent builder agent publish code snippet,

<REPLACE IT WITH YOUR AI AGENT PUBLISH CODE SNIPPET>

can you create a sample flask app to use it

Observação:aqui pedimos um app Python Flask. Se você preferir outra linguagem de programação ou framework, use o que quiser. O Gemini Code Assist pode gerar diferentes linguagens de programação. Confira Linguagens, IDEs e interfaces compatíveis para mais detalhes.

Você vai notar que o snippet de código fornecido já está integrado ao agente de IA. Para testar se o código fornecido é válido e está funcionando conforme o esperado, siga as instruções do Gemini Code Assist sobre como executar essa seção de código da resposta.

Exemplo de snippet de código de resposta:

from flask import Flask, render_template_string

app = Flask(__name__)

# HTML template string with the provided Dialogflow Messenger code

html_template = """

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Travel Buddy Chatbot</title>

<link rel="stylesheet" href="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/themes/df-messenger-default.css">

<script src="https://www.gstatic.com/dialogflow-console/fast/df-messenger/prod/v1/df-messenger.js"></script>

<style>

df-messenger {

z-index: 999;

position: fixed;

--df-messenger-font-color: #000;

--df-messenger-font-family: Google Sans;

--df-messenger-chat-background: #f3f6fc;

--df-messenger-message-user-background: #d3e3fd;

--df-messenger-message-bot-background: #fff;

bottom: 16px;

right: 16px;

}

body {

font-family: sans-serif;

margin: 20px;

}

</style>

</head>

<body>

<h1>Welcome to Travel Buddy!</h1>

<p>Start chatting with our AI Travel buddy, in the bottom right corner.</p>

<df-messenger

project-id="<SAMPLE>"

agent-id="<SAMPLE>"

language-code="en"

max-query-length="-1">

<df-messenger-chat-bubble

chat-title="Travel Buddy">

</df-messenger-chat-bubble>

</df-messenger>

</body>

</html>

"""

@app.route("/")

def index():

"""Renders the HTML template with the Dialogflow Messenger."""

return render_template_string(html_template)

if __name__ == "__main__":

app.run(debug=True)

3dd3246c5fceb1d4.png

De acordo com as instruções fornecidas

  1. Copie o snippet de código do app Flask de exemplo fornecido.
  2. Crie um arquivo chamado app.py e salve-o.

4e58cfcf95f65d38.png

Na próxima etapa, é solicitado que você instale o Flask para executar esse snippet. Isso não é necessário por enquanto, já que o Cloud Shell tem todos os utilitários usados com frequência instalados por padrão.

b657b535710fd8f3.png

Salve o arquivo (Ctrl + S ou CMD + S) e clique em Abrir terminal, onde você vai executar o código fornecido.

No terminal, execute o comando abaixo:

python app.py

Observação:verifique se você está na pasta certa, onde o arquivo app.py está presente.

O app Python Flask será executado na porta 5000. Para conferir a prévia desse aplicativo da Web, clique no ícone Visualização da Web no Cloud Shell. Em seguida, clique em Alterar porta,insira 5000 e clique em Alterar e visualizar para salvar.

59ed7b08133b82bf.png

Um site de exemplo vai aparecer, e um agente de IA já estará disponível. Basta clicar no agente de IA e começar a conversar.

35a4b5abdd299efe.png

Teste com diferentes comandos. Você também pode pedir ao Gemini Code Assist para deixar seu site mais bonito ou adicionar mais dados de embasamento ao agente de IA para que ele seja mais útil.

Quando estiver tudo pronto, a próxima etapa será hospedar esse agente de IA no Google Cloud para que ele possa ser acessado por qualquer pessoa, em qualquer lugar. No restante deste codelab, você vai implantar esse aplicativo Flask de amostra no Cloud Run como um contêiner.

Observação:não se limita apenas ao Cloud Run. Se você não sabe o que é o Cloud Run, pode perguntar ao Gemini Code Assist para ajudar a implantar no Google Cloud ou em qualquer lugar com as práticas recomendadas. Ele também pode ajudar nessa parte.

Volte para o terminal do Cloud Shell e pressione Ctrl + C para encerrar o processo. Clique em Abrir editor novamente e peça ao Gemini Code Assist para contêinerizar o aplicativo e implantá-lo no Cloud Run.

Can you help me deploy this sample flask app to cloud run service

Ele fornece algumas instruções e comandos para hospedar nosso app no serviço do Cloud Run. Siga as instruções.

Confira um exemplo de resposta:

Etapas para implantar no Cloud Run

  1. Pré-requisitos:
  • Conta do Google Cloud:você precisa de uma conta do Google Cloud com o faturamento ativado.
  • CLI gcloud:instale e inicialize o SDK Google Cloud (CLI gcloud) na sua máquina local. Você vai usar isso para interagir com o Google Cloud no terminal.
  • Docker:instale o Docker na sua máquina local. O Cloud Run usa o Docker para conteinerizar seu aplicativo.
  • Configuração do projeto:verifique se um projeto do Google Cloud está selecionado na CLI gcloud. Você pode verificar com gcloud config list project e definir com gcloud config set project YOUR_PROJECT_ID

Observação:como estamos realizando toda essa atividade no Cloud Shell, não é necessário configurar projetos.

  1. Criar **requirements.txt****:**
  • Esse arquivo lista todos os pacotes Python de que seu app precisa. No diretório do projeto (onde main.py está), crie um arquivo chamado requirements.txt e adicione a seguinte linha:
  1. Criar **Dockerfile****:**
  • Um Dockerfile define como criar uma imagem Docker para seu aplicativo. Crie um arquivo chamado Dockerfile (sem extensão) no diretório do projeto e adicione o seguinte conteúdo:

# Use an official Python runtime as a parent imageFROM python:3.9-slim-buster

# Set the working directory to /appWORKDIR /app

# Copy the current directory contents into the container at /app

COPY . /app

# Install any needed packages specified in requirements.txt

RUN pip install --no-cache-dir -r requirements.txt

# Make port 5000 available to the world outside this container

EXPOSE 5000

# Define environment variable

ENV NAME World

# Run app.py when the container launches

CMD ["python", ".py"]

  1. Crie a imagem do Docker:
  • Abra o terminal, navegue até o diretório do projeto e execute:

gcloud builds submit –tag gcr.io/bgr-workshop-23rd/travel-buddy

  1. Implante no Cloud Run:
  • Depois que a imagem for criada e enviada, implante-a no Cloud Run com o seguinte comando:

gcloud run deploy travel-buddy --image gcr.io/bgr-workshop-23rd/travel-buddy --region us-central1

Depois de concluir essas etapas, seu aplicativo com o agente de IA integrado estará disponível para os usuários finais.

Parabéns e bom aprendizado!

6. Limpeza

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste codelab, siga estas etapas:

  1. No console do Google Cloud, acesse a página Gerenciar recursos.
  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir.
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.
  4. Ou acesse Cloud Run no console do Google Cloud, selecione o serviço que você acabou de implantar e exclua.