Crie Agentes de IA no Amazon Bedrock

A pressão incessante para manter a eficiência operacional é um desafio enfrentado por empresas de todos os tamanhos. Este desafio é ainda mais amplificado pelos volumes cada vez maiores de dados, sistemas complexos e o grande número de interações com clientes que precisam ser gerenciadas. Os processos manuais tradicionais e a natureza muitas vezes desconexa das fontes de informação podem levar a gargalos significativos. Essas obstruções atrasam a tomada de decisões e impedem que as equipes dediquem seu tempo e energia a trabalhos de maior valor que realmente fazem a diferença. Os agentes de IA generativa representam uma solução transformadora. Esses agentes podem interagir automaticamente com os sistemas existentes de uma empresa, executar uma ampla gama de tarefas e fornecer insights instantâneos. Isso permite que as organizações dimensionem suas operações de forma eficaz sem um aumento correspondente na complexidade.

O Amazon Bedrock no SageMaker Unified Studio aborda diretamente esses desafios generalizados. Ele oferece um serviço unificado projetado para construir soluções baseadas em IA. Esta plataforma centraliza os dados do cliente e permite interações em linguagem natural, tornando-a intuitiva e fácil de usar. Uma vantagem fundamental é a sua integração perfeita com aplicações existentes. Ele também incorpora recursos essenciais do Amazon Bedrock, incluindo uma ampla seleção de modelos de base (FMs), recursos de engenharia de prompt, bases de conhecimento para compreensão contextual, agentes para execução de tarefas, fluxos para orquestração de fluxo de trabalho, ferramentas de avaliação para monitoramento de desempenho e barreiras de proteção para desenvolvimento responsável de IA. Os usuários podem acessar convenientemente este conjunto abrangente de recursos de IA por meio do sistema de single sign-on (SSO) de sua organização. Isso promove a colaboração entre os membros da equipe e permite o refinamento de aplicações de IA sem exigir acesso direto ao AWS Management Console.

Agentes com tecnologia de IA generativa para fluxos de trabalho automatizados

O Amazon Bedrock no SageMaker Unified Studio permite que você crie e implante agentes sofisticados de IA generativa. Esses agentes podem se integrar perfeitamente com os aplicativos, bancos de dados e até mesmo sistemas de terceiros da sua organização. Este nível de integração permite interações em linguagem natural em toda a sua pilha de tecnologia. O agente de chat atua como uma ponte crucial, conectando sistemas de informação complexos com comunicação amigável. Ao aproveitar as funções do Amazon Bedrock e as Amazon Bedrock Knowledge Bases, o agente ganha a capacidade de se conectar com diversas fontes de dados. Essas fontes podem variar de APIs JIRA para rastreamento de status de projeto em tempo real a sistemas de gerenciamento de relacionamento com o cliente (CRM) para recuperação de informações do cliente. O agente também pode atualizar tarefas do projeto, gerenciar preferências do usuário e muito mais.

Essa funcionalidade abrangente oferece benefícios significativos para várias equipes dentro de uma organização. As equipes de vendas e marketing podem obter acesso rápido às informações do cliente e seus horários de reunião preferidos. Os gerentes de projeto podem gerenciar com eficiência as tarefas e os cronogramas do JIRA, otimizando os fluxos de trabalho do projeto. Este processo simplificado, facilitado pelo agente de IA, leva ao aumento da produtividade e à melhoria das interações com o cliente em toda a organização.

Visão geral da solução

O Amazon Bedrock oferece um ambiente governado e colaborativo, tudo dentro do SageMaker Unified Studio, para construir e compartilhar aplicações de IA generativa. Vamos nos aprofundar em um exemplo de solução prática que demonstra a implementação de um agente de gerenciamento de clientes:

  • Chat Agêntico: Uma aplicação sofisticada de chat agêntico pode ser construída usando os recursos de aplicação de chat do Amazon Bedrock. Esta aplicação de chat pode ser perfeitamente integrada com funções que são facilmente construídas usando outros serviços da AWS, como AWS Lambda para computação sem servidor e Amazon API Gateway para criação e gerenciamento de APIs.
  • Gerenciamento de Dados: O SageMaker Unified Studio, em conjunto com o Amazon DataZone, oferece uma solução abrangente de gerenciamento de dados por meio de seus serviços integrados. Os administradores da organização têm controle refinado sobre o acesso dos membros aos modelos e recursos do Amazon Bedrock. Isso garante o gerenciamento seguro de identidade e o controle de acesso granular, mantendo a segurança e a conformidade dos dados.

Antes de nos aprofundarmos na implantação do agente de IA, é benéfico percorrer as etapas principais da arquitetura.

O fluxo de trabalho se desenrola da seguinte forma:

  1. Autenticação e interação do usuário: O usuário inicia o processo fazendo login no SageMaker Unified Studio usando as credenciais SSO de sua organização do AWS IAM Identity Center. Uma vez autenticado, o usuário interage com a aplicação de chat usando linguagem natural, fazendo perguntas ou solicitações.
  2. Invocação de função: A aplicação de chat do Amazon Bedrock utiliza de forma inteligente uma função predefinida para recuperar informações relevantes. Esta função pode ser projetada para buscar atualizações de status do JIRA ou informações do cliente no banco de dados. A recuperação é realizada por meio de um endpoint seguro usando o API Gateway.
  3. Acesso seguro e gatilho do Lambda: A aplicação de chat se autentica com o API Gateway para acessar com segurança o endpoint designado. Essa autenticação é obtida usando uma chave de API gerada aleatoriamente e armazenada com segurança no AWS Secrets Manager. Com base na solicitação do usuário, a função Lambda apropriada é acionada.
  4. Execução da ação: A função Lambda, agora ativada, executa as ações específicas solicitadas pelo usuário. Isso envolve chamar a API JIRA ou consultar o banco de dados com os parâmetros necessários fornecidos pelo agente. O agente é projetado para lidar com uma variedade de tarefas, incluindo:
    1. Fornecer uma visão geral concisa de um cliente específico.
    2. Listar as interações recentes com um determinado cliente.
    3. Recuperar as preferências de reunião para um cliente designado.
    4. Recuperar uma lista de tickets JIRA abertos associados a um projeto específico.
    5. Atualizar a data de vencimento de um determinado ticket JIRA.

Pré-requisitos

Para acompanhar esta implementação de solução e construir seu próprio agente de gerenciamento de clientes, você precisará dos seguintes pré-requisitos:

  • Conta da AWS: Uma conta ativa da AWS é essencial para acessar os serviços necessários.
  • Acesso ao SageMaker Unified Studio: É necessário o acesso do usuário ao Amazon Bedrock dentro do SageMaker Unified Studio.
  • Acesso ao modelo: Você precisará de acesso ao modelo Amazon Nova Pro no Amazon Bedrock. Certifique-se de que este modelo esteja disponível em uma região da AWS compatível.
  • Configuração do JIRA: Uma aplicação JIRA, seu URL JIRA correspondente e um token de API JIRA associado à sua conta são necessários para a integração com o JIRA.

Presume-se que você tenha um conhecimento básico dos conceitos fundamentais de serverless na AWS, incluindo API Gateway, funções Lambda e IAM Identity Center. Embora esta postagem não forneça definições detalhadas desses serviços, demonstraremos seus casos de uso no contexto dos novos recursos do Amazon Bedrock disponíveis no SageMaker Unified Studio.

Implantando a Solução

Para implantar a solução do agente de gerenciamento de clientes, siga estas etapas:

  1. Baixar código: Comece baixando o código necessário do repositório GitHub fornecido.
  2. Recuperar credenciais do JIRA: Obtenha os valores para JIRA_API_KEY_ARN, JIRA_URL e JIRA_USER_NAME para a função Lambda. Essas credenciais serão usadas para autenticar com sua instância JIRA.
  3. Iniciar pilha do CloudFormation: Utilize o modelo AWS CloudFormation fornecido. Consulte a documentação sobre “Criar uma pilha no console do CloudFormation” para obter instruções detalhadas sobre como iniciar a pilha em sua região da AWS preferida.
  4. URL do API Gateway: Depois que a pilha do CloudFormation for implantada com sucesso, navegue até a guia Outputs. Localize e anote o valor ApiInvokeURL. Este URL representa o endpoint para seu API Gateway.
  5. Configuração do Secrets Manager: Acesse o console do Secrets Manager. Encontre os segredos correspondentes a JIRA_API_KEY_ARN, JIRA_URL e JIRA_USER_NAME.
  6. Atualizar valores secretos: Escolha a opção Retrieve secret para cada segredo. Copie as variáveis correspondentes obtidas na Etapa 2 na string de texto simples do segredo. Isso armazenará com segurança suas credenciais do JIRA.
  7. Fazer login no SageMaker Unified Studio: Faça login no SageMaker Unified Studio usando as credenciais SSO da sua organização.

Criando um Novo Projeto

Com a infraestrutura em vigor, vamos criar um novo projeto no SageMaker Unified Studio:

  1. Criação do projeto: Na página inicial do SageMaker Unified Studio, inicie a criação de um novo projeto.
  2. Nomeação do projeto: Atribua um nome descritivo ao seu projeto (por exemplo, crm-agent).
  3. Seleção de perfil: Escolha o Generative AI application development profile e prossiga.
  4. Configurações padrão: Aceite as configurações padrão e continue.
  5. Confirmação: Revise a configuração do projeto e escolha Create project para confirmar.

Construindo a Aplicação do Agente de Chat

Agora, vamos construir o núcleo da nossa solução – a aplicação do agente de chat:

  1. Iniciação do agente de chat: Na página inicial do projeto crm-agent, localize a seção New no lado direito. Escolha Chat agent para começar a construir sua aplicação.
    Isso apresentará uma lista de configurações para sua aplicação de agente.

  2. Seleção de modelo: Na seção do modelo, selecione um modelo de base (FM) desejado suportado pelo Amazon Bedrock. Para este crm-agent, escolheremos o Amazon Nova Pro.

  3. Definição de prompt do sistema: Na seção de prompt do sistema, forneça o seguinte prompt. Este prompt guiará o comportamento e as respostas do agente. Você pode opcionalmente incluir exemplos de entrada do usuário e respostas do modelo para refinar ainda mais seu desempenho.

    Você é um agente de gerenciamento de relacionamento com o cliente encarregado de ajudar um vendedor a planejar seu trabalho com os clientes. Você recebe um endpoint de API. Este endpoint pode fornecer informações como visão geral da empresa, histórico de interação da empresa (horários e notas de reuniões), preferências de reunião da empresa (tipo de reunião, dia da semana e hora do dia). Você também pode consultar tarefas do Jira e atualizar seu cronograma. Depois de receber uma resposta, limpe-a em um formato legível. Se a saída for uma lista numerada, formate-a como tal com caracteres de nova linha e números.

  4. Criação de função: Na seção Functions, escolha Create a new function. Esta função definirá as ações que o agente pode executar.

  5. Nomeação da função: Dê à sua função um nome descritivo, como crm_agent_calling.

  6. Esquema da função: Para o Function schema, use a definição OpenAPI fornecida no repositório GitHub. Este esquema define os parâmetros de entrada e saída para sua função.

  7. Configuração de autenticação: Para Authentication method, escolha API Keys (Max. 2 Keys) e insira os seguintes detalhes:

    1. Para Key sent in, escolha Header.
    2. Para Key name, insira x-api-key.
    3. Para Key value, insira a chave de API do Secrets Manager.
  8. Endpoint do servidor de API: Na seção API servers, insira o URL do endpoint que você obteve das saídas do CloudFormation (o ApiInvokeURL).

  9. Finalização da função: Escolha Create para finalizar a criação da função.

  10. Salvamento da aplicação: Na seção Functions da aplicação do agente de chat, selecione a função que você acabou de criar e escolha Save para concluir a criação da aplicação.

Exemplos de Interações

Vamos explorar alguns exemplos práticos de como este agente de chat pode ser usado:

Caso de uso 1: Analista de CRM recuperando detalhes do cliente

Um analista de CRM pode usar linguagem natural para recuperar detalhes do cliente armazenados no banco de dados. Aqui estão algumas perguntas de exemplo que eles podem fazer:

  • “Dê-me uma breve visão geral do cliente C-jkl101112.”
  • “Liste as 2 últimas interações recentes para o cliente C-def456.”
  • “Qual método de comunicação o cliente C-mno131415 prefere?”
  • “Recomende o horário ideal e o canal de contato para entrar em contato com C-ghi789 com base em suas preferências e em nossa última interação.”

O agente, ao receber essas solicitações, consultará de forma inteligente o banco de dados e fornecerá as respostas correspondentes em um formato claro e conciso.

Caso de uso 2: Gerente de projeto gerenciando tickets JIRA

Um gerente de projeto pode usar o agente para listar e atualizar tickets JIRA. Aqui estão algumas interações de exemplo:

  • “Quais são as tarefas JIRA abertas para o ID do projeto CRM?”
  • “Por favor, atualize a tarefa JIRA CRM-3 para 1 semana.”

O agente acessará o quadro JIRA, buscará as informações relevantes do projeto e fornecerá uma lista de tarefas JIRA abertas. Ele também atualizará o cronograma de uma tarefa específica conforme solicitado pelo usuário.

Limpeza

Para evitar incorrer em custos desnecessários, execute as seguintes etapas de limpeza:

  1. Excluir pilha do CloudFormation: Exclua a pilha do CloudFormation que você implantou anteriormente.
  2. Excluir componente de função: Remova o componente de função que você criou no Amazon Bedrock.
  3. Excluir aplicação do agente de chat: Exclua a aplicação do agente de chat no Amazon Bedrock.
  4. Excluir domínios: Exclua os domínios no SageMaker Unified Studio.

Custo

O uso do Amazon Bedrock no SageMaker Unified Studio não incorre em nenhuma cobrança separada. No entanto, você será cobrado pelos serviços e recursos individuais da AWS utilizados no serviço. O Amazon Bedrock opera em um modelo de pagamento conforme o uso, o que significa que você paga apenas pelos recursos que consome, sem taxas mínimas ou compromissos antecipados.

Se você precisar de mais assistência com cálculos de preços ou tiver dúvidas sobre como otimizar os custos para seu caso de uso específico, é recomendável entrar em contato com o suporte da AWS ou consultar seu gerente de conta. Eles podem fornecer orientação personalizada com base em suas necessidades.