Nível de programação: avançado
Duração: 30 minutos
Tipo de projeto: função personalizada
Visão geral
Uma função personalizada de verificação de fatos para as Planilhas Google, usada como um projeto vinculado do Apps Script com tecnologia de um agente da Vertex AI e um modelo do Gemini.
Este exemplo demonstra como usar dois tipos poderosos de recursos de IA diretamente nas suas planilhas Google:
- Agentes de IA para recursos sofisticados de raciocínio com várias ferramentas e etapas usando agentes do ADK implantados no Vertex AI Agent Engine.
- Modelos de IA para recursos avançados de compreensão, geração e resumo usando modelos do Gemini da Vertex AI.
Objetivos
- Entenda o que a solução faz.
- Entenda como a solução é implementada.
- Implante o agente da Vertex AI.
- Configure o script.
- Execute o script.
Sobre esta solução
A função personalizada das Planilhas é chamada de FACT_CHECK
e funciona como uma solução
de ponta a ponta. Ele analisa uma declaração, fundamenta a resposta usando as informações mais recentes da Web e retorna o resultado no formato necessário:
- Uso:
=FACT_CHECK("Your statement here")
para uma saída concisa e resumida.=FACT_CHECK("Your statement here", "Your output formatting instructions here")
para um formato de saída específico.
- Motivo: Agente de IA do ADK do LLM Auditor (exemplo em Python).
- Formatação de saída: modelo do Gemini.
Essa solução solicita APIs REST da Vertex AI usando UrlFetchApp.
Arquitetura
O diagrama a seguir mostra a arquitetura dos recursos do Google Workspace e do Google Cloud usados pela função personalizada.
Pré-requisitos
Para usar esta amostra, você precisa atender aos seguintes pré-requisitos:
- Uma Conta do Google (as contas do Google Workspace podem exigir a aprovação do administrador).
Um navegador da Web com acesso à Internet.
Pré-requisitos do agente do ADK do LLM Auditor
- Python 3.11 ou mais recente: para instalação, siga as instruções no site oficial do Python.
- Python Poetry: para instalação, siga as instruções no site oficial do Poetry (em inglês).
- CLI do Google Cloud: para instalar, siga as instruções no site oficial do Google Cloud.
Prepare o ambiente
Nesta seção, mostramos como criar e configurar um projeto do Google Cloud.
Criar um projeto do Google Cloud
Console do Google Cloud
- No console do Google Cloud, acesse Menu > IAM e administrador > Criar um projeto.
-
No campo Nome do projeto, insira um nome descritivo.
Opcional: para editar o ID do projeto, clique em Editar. O ID não pode ser alterado após a criação do projeto. Portanto, escolha um ID que atenda às suas necessidades durante a vida útil dele.
- No campo Local, clique em Procurar para mostrar os locais possíveis para seu projeto. Em seguida, clique em Selecionar.
- Clique em Criar. O console do Google Cloud navega até a página "Painel", e seu projeto é criado em alguns minutos.
CLI da gcloud
Em um dos seguintes ambientes de desenvolvimento, acesse a CLI do Google Cloud (gcloud
):
-
Cloud Shell: para usar um terminal on-line com a CLI gcloud
já configurada, ative o Cloud Shell.
Ativar o Cloud Shell -
Shell local: para usar um ambiente de desenvolvimento local,
instale e
inicialize
a CLI gcloud.
Para criar um projeto do Cloud, use o comandogcloud projects create
: Substitua PROJECT_ID definindo o ID do projeto que você quer criar.gcloud projects create PROJECT_ID
Ativar o faturamento para o projeto do Cloud
Console do Google Cloud
- No console do Google Cloud, acesse Faturamento. Clique em Menu > Faturamento > Meus projetos.
- Em Selecionar uma organização, escolha a organização associada ao seu projeto do Google Cloud.
- Na linha do projeto, abra o menu Ações ( ), clique em Mudar faturamento e escolha a conta do Cloud Billing.
- Clique em Definir conta.
CLI da gcloud
- Para listar as contas de faturamento disponíveis, execute:
gcloud billing accounts list
- Vincule uma conta de faturamento a um projeto do Google Cloud:
gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID
Substitua:
PROJECT_ID
é o ID do projeto do projeto do Cloud em que você quer ativar o faturamento.BILLING_ACCOUNT_ID
é o ID da conta de faturamento a ser vinculado ao projeto do Google Cloud.
Ativar a API Vertex AI
Console do Google Cloud
No console do Google Cloud, ative a API Vertex AI.
Confirme se você está ativando a API Vertex AI no projeto correto do Cloud e clique em Próxima.
Confirme se você está ativando a API correta e clique em Ativar.
CLI da gcloud
Se necessário, defina o projeto atual do Cloud como aquele que você criou com o comando
gcloud config set project
:gcloud config set project PROJECT_ID
Substitua PROJECT_ID pelo ID do projeto do projeto do Cloud que você criou.
Ative a API Vertex AI com o comando
gcloud services enable
:gcloud services enable aiplatform.googleapis.com
Criar uma conta de serviço no console do Google Cloud
Crie uma conta de serviço com o papel Vertex AI User
seguindo estas etapas:
Console do Google Cloud
- No console do Google Cloud, acesse Menu > IAM e administrador > Contas de serviço.
- Clique em Criar conta de serviço.
- Preencha os detalhes da conta de serviço e clique em Criar e continuar.
- Opcional: atribua papéis à sua conta de serviço para conceder acesso aos recursos do projeto do Google Cloud. Para mais detalhes, consulte Como conceder, alterar e revogar o acesso a recursos.
- Clique em Continuar.
- Opcional: insira usuários ou grupos que podem gerenciar e realizar ações com essa conta de serviço. Para mais detalhes, consulte Como gerenciar a representação da conta de serviço.
- Clique em Concluído. Anote o endereço de e-mail da conta de serviço.
CLI da gcloud
- Crie a conta de serviço:
gcloud iam service-accounts create
SERVICE_ACCOUNT_NAME
\ --display-name="SERVICE_ACCOUNT_NAME
" - Opcional: atribua papéis à sua conta de serviço para conceder acesso aos recursos do projeto do Google Cloud. Para mais detalhes, consulte Como conceder, alterar e revogar o acesso a recursos.
A conta de serviço aparece na página de contas de serviço. Em seguida, crie uma chave privada para a conta de serviço.
Criar uma chave privada
Para criar e fazer o download de uma chave privada para a conta de serviço, siga estas etapas:
- No console do Google Cloud, acesse Menu > IAM e administrador > Contas de serviço.
- Selecione sua conta de serviço.
- Clique em Chaves > Adicionar chave > Criar nova chave.
- Selecione JSON e clique em Criar.
Seu novo par de chave pública/privada é gerado e transferido por download para sua máquina como um novo arquivo. Salve o arquivo JSON baixado como
credentials.json
no seu diretório de trabalho. Esse arquivo é a única cópia da chave. Para saber como armazenar sua chave com segurança, consulte Como gerenciar chaves de contas de serviço. - Clique em Fechar.
Para mais informações sobre contas de serviço, consulte Contas de serviço na documentação do IAM do Google Cloud.
Implantar o agente de IA do ADK do LLM Auditor
Se ainda não tiver feito isso, autentique-se com sua conta do Google Cloud e configure a CLI do Google Cloud para usar seu projeto do Google Cloud.
gcloud auth application-default login
gcloud config set project PROJECT_ID
gcloud auth application-default set-quota-project PROJECT_ID
Substitua PROJECT_ID pelo ID do projeto do Cloud que você criou.
Faça o download deste repositório do GitHub.
No ambiente de desenvolvimento local de sua preferência, extraia o arquivo baixado e abra o diretório
adk-samples/python/agents/llm-auditor
.unzip adk-samples-main.zip
cd adk-samples-main/python/agents/llm-auditor
Crie um bucket do Cloud Storage dedicado ao agente do ADK.
gcloud storage buckets create gs://CLOUD_STORAGE_BUCKET_NAME --project=PROJECT_ID --location=PROJECT_LOCATION
Substitua:
- CLOUD_STORAGE_BUCKET_NAME com um nome de bucket exclusivo que você quer usar.
- PROJECT_ID pelo ID do projeto do Cloud que você criou.
- PROJECT_LOCATION com o local do projeto do Cloud que você criou.
Configure as variáveis de ambiente a seguir:
export GOOGLE_GENAI_USE_VERTEXAI=true
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
export GOOGLE_CLOUD_LOCATION=PROJECT_LOCATION
export GOOGLE_CLOUD_STORAGE_BUCKET=CLOUD_STORAGE_BUCKET_NAME
Substitua:
- CLOUD_STORAGE_BUCKET_NAME com o nome do bucket que você criou.
- PROJECT_ID pelo ID do projeto do Cloud que você criou.
- PROJECT_LOCATION com o local do projeto do Cloud que você criou.
Instale e implante o agente do ADK no ambiente virtual.
python3 -m venv myenv
source myenv/bin/activate
poetry install --with deployment
python3 deployment/deploy.py --create
Recupere o ID do agente. Você vai precisar dele mais tarde para configurar a função personalizada.
python3 deployment/deploy.py --list
Analisar o exemplo de código
Se quiser, antes de criar a nova planilha, revise e conheça o exemplo de código hospedado no GitHub.
Criar e configurar em uma nova planilha
Clique no botão a seguir e faça uma cópia completa da planilha de exemplo do Google Sheets, incluindo o projeto do Apps Script vinculado ao contêiner.
Na planilha recém-criada, acesse Extensões > Apps Script.
No projeto do Apps Script, acesse Configurações do projeto, clique em Editar propriedades do script e em Adicionar propriedade do script para adicionar as seguintes propriedades:
LOCATION
com o local do projeto do Google Cloud criado nas etapas anteriores, comous-central1
.GEMINI_MODEL_ID
com o modelo do Gemini que você quer usar, comogemini-2.5-flash-lite
.REASONING_ENGINE_ID
com o ID do agente do ADK do LLM Auditor implantado nas etapas anteriores, como1234567890
.SERVICE_ACCOUNT_KEY
com a chave JSON da conta de serviço baixada nas etapas anteriores, como{ ... }
.
Clique em Salvar propriedades do script.
Testar a função personalizada
- Acesse a planilha recém-criada.
- Mude as declarações na coluna A.
- As fórmulas na coluna B são executadas e mostram os resultados da verificação de fatos.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste tutorial, recomendamos que você exclua o projeto do Cloud.
- No console do Google Cloud, acesse a página Gerenciar recursos. Clique em Menu > IAM e administrador > Gerenciar recursos.
- Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
- Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.