Jitterbit Composite Agent
Visão Geral
A Jitterbit oferece o Composite Agent a todos os clientes através do Jitterbit Marketplace. Este agente é projetado para fins de aprendizado, ajudando as organizações a adotarem a IA de forma mais fácil.
Este agente fornece uma única interface para interagir com múltiplos agentes especializados dentro da sua organização. Um agente especializado é um agente de IA projetado para lidar com tipos específicos de tarefas ou consultas em um determinado domínio. Exemplos incluem o Agente de Vendas da Jitterbit e o Agente de RH.
O Composite Agent recebe as consultas dos usuários, determina qual agente especializado pode lidar melhor com cada consulta e encaminha a solicitação para esse agente. Após a resposta do agente selecionado, o Composite Agent retorna a resposta ao usuário. Ao usar um único ponto de entrada, o Composite Agent elimina a necessidade de os usuários acessarem interfaces separadas para cada agente. Embora este agente utilize o Azure OpenAI e o Slack por padrão, você pode adaptá-lo para funcionar com outros LLMs e plataformas de chat, como Claude, Microsoft Teams, microsserviços, aplicativos SaaS como Salesforce, ou aplicações construídas usando o Jitterbit App Builder.
Este documento explica como configurar e operar este agente de IA. Ele abrange os seguintes tópicos: arquitetura e pré-requisitos, exemplos de prompts mostrando o que o agente pode fazer, e passos para instalar, configurar e operar o agente de IA.
Arquitetura do agente de IA
Este agente de IA encaminha consultas dos usuários para agentes especializados. Um fluxo de trabalho típico segue estas etapas:
- Um usuário interage com o bot do Slack e envia uma pergunta ou solicitação.
- O Composite Agent analisa a consulta e a encaminha para o agente especializado apropriado.
- O agente especializado processa a solicitação e retorna os resultados.
- O Composite Agent entrega a resposta ao usuário.
Diagrama de fluxo
O diagrama a seguir mostra como o Agente Composto processa consultas de usuários:
Jitterbit Composite Agent" } SCI[fab:fa-slack
Slack bot chat interface] JCA@{ shape: hex, label: "
Jitterbit API Manager
custom API" } AZR[Azure OpenAI REST call] AZM@{ shape: hex, label: "Azure OpenAI model" } SAG@{ shape: hex, label: "Specialized Agent" } SCI -->|1. Sends question| JCA JCA -->|2. Triggers request handler| JSP JSP -->|3. Query| AZR AZR --> AZM AZM --> AZR AZR -->|4. Routing decision| JSP JSP -->|5. Routed query| SAG SAG -->|6. Agent response| JSP JSP -->|7. Answer| SCI classDef plain fill:white, stroke:black, stroke-width:3px, rx:15px, ry:15px
Pré-requisitos
Você precisa dos seguintes componentes para usar este agente de IA.
Componentes do Harmony
Você deve ter uma licença do Jitterbit Harmony com acesso aos seguintes componentes:
Endpoints suportados
O agente de IA incorpora os seguintes endpoints. Você pode acomodar outros sistemas modificando as configurações de endpoints e fluxos de trabalho do projeto.
Modelo de linguagem grande (LLM)
O agente de IA utiliza o Azure OpenAI como provedor de LLM para análise de consultas e decisões de roteamento. Para usar o OpenAI, você deve ter uma assinatura do Microsoft Azure com permissões para criar um recurso do Azure OpenAI com um modelo gpt-4o ou gpt-4.1 implantado.
Dica
Para informações sobre preços, consulte a página de preços do Azure OpenAI.
Interface de chat
O agente de IA utiliza o Slack como a interface de chat padrão para interagir com o Agente Composto.
Se você quiser usar um aplicativo diferente como interface de chat, pode modificar os fluxos de trabalho do projeto para integrar-se à sua plataforma preferida.
Exemplos de prompts
A tabela a seguir ilustra como o Agente Composto decide se deve responder a uma consulta diretamente ou delegá-la a um agente especializado, com base na natureza da consulta e nos agentes especializados disponíveis.
| Tipo de consulta | Consulta de exemplo | Ação do Agente Composto |
|---|---|---|
| Conhecimento geral | "Qual é a capital dos EUA?" | Respondido diretamente, pois é uma pergunta de conhecimento geral que não requer roteamento para um agente especializado. |
| Conhecimento especializado (Vendas) | "Me dê os pedidos de vendas do cliente ABC Inc." | Roteado para um Agente de Vendas especializado porque a solicitação requer acesso a dados relacionados a vendas. |
Instalação, configuração e operação
Siga estas etapas para instalar, configurar e operar este agente de IA:
- Baixar personalizações e instalar o projeto do Studio.
- Criar recursos do Microsoft Azure.
- Criar o aplicativo Slack.
- Preparar o Jitterbit Cloud Datastore.
- Configurar variáveis do projeto.
- Testar conexões.
- Implantar o projeto.
- Criar a API personalizada do Jitterbit.
- Revisar fluxos de trabalho do projeto.
- Acionar os fluxos de trabalho do projeto.
- Solução de problemas.
Baixar personalizações e instalar o projeto
Siga estas etapas para baixar arquivos de personalização e instalar o projeto do Studio:
-
Faça login no portal Harmony em https://login.jitterbit.com e abra Marketplace.
-
Localize o agente de IA chamado Agente Composto Jitterbit. Para localizar o agente, você pode usar a barra de pesquisa ou, no painel Filtros sob Tipo, selecionar Agente de IA para filtrar a exibição.
-
Clique no link Documentação do agente de IA para abrir sua documentação em uma nova aba. Mantenha a aba aberta para consultar após iniciar o projeto.
-
Clique em Iniciar Projeto para abrir um diálogo de configuração em duas etapas para baixar personalizações e importar o agente de IA como um projeto do Studio.
Nota
Se você ainda não adquiriu o agente de IA, Obter este agente será exibido em vez disso. Clique nele para abrir um diálogo informativo, em seguida, clique em Enviar para que um representante entre em contato com você sobre a compra do agente de IA.
-
Na etapa de configuração 1, Baixar Personalizações, você pode usar o seguinte arquivo para criar o aplicativo Slack. Selecione o arquivo e clique em Baixar Arquivos:
- Arquivo de manifesto do aplicativo Slack:
slack_app_manifest.json
Dica
O diálogo de configuração inclui um aviso para não importar o modelo antes de aplicar as personalizações de endpoint. Esse aviso não se aplica a este agente de IA e você pode ignorá-lo. Siga a ordem recomendada de etapas nesta documentação.
- Arquivo de manifesto do aplicativo Slack:
-
Clique em Próximo.
-
Na etapa de configuração 2, Criar um Novo Projeto, selecione um ambiente onde deseja criar o projeto do Studio e, em seguida, clique em Criar Projeto.
-
Um diálogo de progresso é exibido. Depois que ele indicar que o projeto foi criado, use o link do diálogo Ir para o Studio ou abra o projeto diretamente na página de Projetos do Studio.
Criar recursos do Microsoft Azure
Crie os seguintes recursos do Microsoft Azure e mantenha as informações para configurar o agente de IA. Para criar e gerenciar esses recursos, você deve ter uma assinatura do Microsoft Azure com as permissões apropriadas.
Recurso Azure OpenAI
Você deve criar um recurso Azure OpenAI e implantar um modelo gpt-4o ou gpt-4.1 através do portal Azure AI Foundry.
Você precisa do nome da implantação, da URL do endpoint do Azure OpenAI e da chave da API para configurar as variáveis do projeto Azure OpenAI. Para encontrar esses valores, siga estas etapas:
-
No portal Azure AI Foundry, abra o recurso OpenAI específico.
-
Na página inicial do recurso, encontre os valores para a URL do endpoint (
azure_openai_base_url) e a chave da API (azure_openai_api_key). -
No menu de navegação sob Recursos Compartilhados, selecione Implantações. O nome da implantação (
Azure_OpenAI_Deployment_Name) aparece na lista.
Criar o aplicativo Slack
Para criar a interface de chat no Slack, siga estas etapas:
-
Crie um aplicativo Slack usando o arquivo de manifesto do aplicativo Slack (
slack_app_manifest.json) fornecido com os arquivos de personalização deste agente de IA. Alternativamente, crie o aplicativo do zero. -
Se você usar o arquivo de manifesto fornecido, substitua os seguintes espaços reservados pelos seus próprios valores de configuração:
Espaço Reservado Descrição {{Substitua pelo nome do bot do Slack}}O nome que você deseja que seu bot do Slack tenha, conforme exibido para os usuários. Substitua este valor em dois lugares no manifesto. {{Substitua pela URL da API do Jitterbit}}A URL do serviço da API personalizada do Jitterbit que você criou em Criar a API personalizada do Jitterbit. -
Instale o aplicativo no seu espaço de trabalho do Slack.
-
Obtenha o token do bot (para o campo Token OAuth do Usuário do Bot da conexão do Slack) e insira seu valor na variável de projeto
slack_bot_oauth_user_token. -
Configure a variável de projeto
slack_channel_namecom o canal onde as notificações devem ser enviadas. -
Insira o valor do token do bot na variável de projeto
slack_bot_oauth_user_tokene o nome do canal na variável de projetoslack_channel_name. Você configurará isso na próxima etapa.
Preparar o Jitterbit Cloud Datastore
Criar dois armazenamentos de chave no Jitterbit Cloud Datastore nomeados askjb_user_session e askjb_q_and_a. Configure os campos com os nomes e tipos listados nas tabelas a seguir.
Ao adicionar campos personalizados, use as tabelas para determinar se deve alternar cada campo para Obrigatório na interface do usuário do Cloud Datastore. Os campos AlternativeKey e Value são campos padrão que você não pode remover ou alternar.
Você pode deixar em branco os valores dos campos que o sistema preenche automaticamente ou não utiliza.
Armazenamento de sessão do usuário (askjb_user_session)
Este armazenamento de chave mantém informações de sessão para os usuários.
| Nome | Tipo | Obrigatório | Definição do valor | Descrição |
|---|---|---|---|---|
Key |
Texto | Sim | Auto-populado | O endereço de email do usuário. O sistema gera automaticamente este valor durante a execução. Nenhuma entrada manual é necessária. |
AlternativeKey |
Texto | Não | Auto-populado | A sessão do usuário. O sistema gera automaticamente este valor durante a execução. Nenhuma entrada manual é necessária. |
Value |
Texto | Não | Não utilizado | Não utilizado. |
Histórico de chat (askjb_q_and_a)
Este armazenamento de chave retém o histórico de chat do bot para fornecer contexto de conversa para o LLM. Ele armazena o histórico de perguntas e respostas. O sistema insere automaticamente todos os dados durante a execução do fluxo de trabalho.
| Nome | Tipo | Obrigatório | Definição do valor | Descrição |
|---|---|---|---|---|
Key |
Texto | Sim | Auto-populado | O identificador exclusivo que o sistema atribui a uma mensagem. |
AlternativeKey |
Texto | Não | Auto-populado | O identificador exclusivo que o sistema atribui a uma sessão de chat. |
Value |
Texto | Não | Não utilizado | Não utilizado. |
slackChannel |
Texto | Sim | Auto-populado | O ID do canal Slack de onde o usuário envia a mensagem. |
User |
Texto | Sim | Auto-populado | O nome de usuário do Slack do usuário que envia a mensagem. |
FirstName |
Texto | Não | Auto-populado | O primeiro nome do usuário que envia a mensagem. |
LastName |
Texto | Não | Auto-populado | O sobrenome do usuário que envia a mensagem. |
Email |
Texto | Sim | Auto-populado | O endereço de email do usuário que envia a mensagem. |
MessageTimestampText |
Texto | Sim | Auto-populado | O texto do timestamp da mensagem. |
UserQuestion |
Texto Grande | Sim | Auto-populado | A pergunta ou mensagem que o usuário envia ao agente de IA. |
AIAnswer |
Texto Grande | Sim | Auto-populado | A resposta que o agente de IA gera para a pergunta do usuário. |
ai_reformulate_question |
Texto Grande | Não | Auto-populado | A pergunta do usuário após a IA reformulá-la ou reescrevê-la para melhorar a compreensão. |
Configurar variáveis do projeto
No projeto do Studio, é necessário definir valores para as seguintes variáveis do projeto.
Para configurar as variáveis do projeto, utilize o menu de ações do projeto para selecionar Variáveis do Projeto. Isso abrirá um painel na parte inferior da página onde você pode revisar e definir os valores.
Cloud Datastore
| Nome da variável | Descrição |
|---|---|
Cloud_Datastore_Access_Token |
Token de acesso do Cloud Datastore para autenticação. |
Configuração de agentes especializados
As seguintes variáveis configuram o primeiro agente especializado (Agent1):
| Nome da variável | Descrição |
|---|---|
Agent1_URL |
O endpoint da URL base para comunicação com o primeiro agente especializado. O Agente Composto utiliza esta URL para enviar consultas roteadas e receber respostas. |
Agent1_API_Key_Header |
O nome do cabeçalho HTTP que o Agente Composto utiliza para enviar a chave da API ao fazer solicitações ao primeiro agente especializado. |
Agent1_API_Key |
A chave da API para o Agente Composto acessar o primeiro agente especializado, caso a autenticação seja necessária. |
Agent1_Function_Description |
Uma descrição do papel e propósito do primeiro agente especializado. O LLM utiliza essa descrição para determinar se deve rotear uma consulta de usuário para este agente. |
As variáveis a seguir configuram o segundo agente especializado (Agent2):
| Nome da variável | Descrição |
|---|---|
Agent2_URL |
O endpoint da URL base para comunicação com o segundo agente especializado. O Agente Composto usa esta URL para enviar consultas roteadas e receber respostas. |
Agent2_API_Key_Header |
O nome do cabeçalho HTTP que o Agente Composto usa para enviar a chave da API ao fazer solicitações ao segundo agente especializado. |
Agent2_API_Key |
A chave da API para o Agente Composto acessar o segundo agente especializado, caso a autenticação seja necessária. |
Agent2_Function_Description |
Uma descrição do papel e propósito do segundo agente especializado. O LLM usa essa descrição para determinar se deve rotear uma consulta do usuário para este agente. |
A variável a seguir configura o modo de teste:
| Nome da variável | Descrição |
|---|---|
Testing |
Um sinalizador Booleano que indica se o Agente Composto opera em modo de teste. Quando definido como true, o Agente Composto retorna uma resposta simulada em vez de fazer uma chamada de API para o agente real. |
Azure OpenAI
| Nome da variável | Descrição |
|---|---|
Azure_OpenAI_Deployment_Name |
O nome da implantação do Azure OpenAI que você usa para acessar o modelo. |
azure_openai_base_url |
A URL base para acessar o serviço Azure OpenAI. Exemplo: https://<seu-nome-de-recurso>.openai.azure.com. |
azure_openai_api_key |
A chave da API que você usa para autenticar solicitações ao serviço Azure OpenAI. |
ai_prompt |
O prompt do sistema para o LLM que define o comportamento de roteamento. Este prompt instrui o modelo a selecionar uma função (agente especializado) com base na consulta do usuário a partir de uma lista de funções disponíveis. Funções especiais incluem NeedClarificationFunction para consultas pouco claras e AnswerGeneralQuestion para perguntas de conhecimento geral. |
Slack
| Nome da variável | Descrição |
|---|---|
bot_oauth_user_token |
O token do bot do Slack que você obtém após criar o aplicativo Slack. Você usa esse token para o Token de acesso OAuth do usuário do Bot na conexão do Slack. |
Nota
Você cria o aplicativo Slack em uma etapa posterior. Você pode deixar essa variável em branco por enquanto.
Testar conexões
Teste as configurações de endpoint para verificar a conectividade usando os valores de variáveis de projeto definidos.
Para testar conexões, vá para a aba Endpoints e conectores do projeto no painel de componentes de design, passe o mouse sobre cada endpoint e clique em Testar.
Implantar o projeto
Implantar o projeto do Studio.
Para implantar o projeto, use o menu de ações do projeto para selecionar Implantar.
Criar a API personalizada do Jitterbit
Crie uma API personalizada para a operação Solicitação do Bot Slack no fluxo de trabalho Main - Manipulador de Solicitações da API Slack.
Para criar a API, use o menu de ações da operação para selecionar Publicar como uma API ou Publicar como uma API usando IA. Configure as seguintes definições:
| Configuração | Valor |
|---|---|
| Método | POST |
| Tipo de Resposta | Variável do Sistema |
Salve a URL do serviço da API da API publicada para uso ao criar o aplicativo Slack. Para encontrar a URL do serviço, vá até o painel de detalhes da API na aba Serviços, passe o mouse sobre a coluna Ações do serviço e clique em Copiar URL do serviço da API.
Revisar fluxos de trabalho do projeto
No projeto do Studio aberto, revise os fluxos de trabalho e as descrições na tabela a seguir para entender o que cada fluxo de trabalho faz.
| Nome do fluxo de trabalho | Tipo de gatilho | Descrição |
|---|---|---|
| Principal - Manipulador de Solicitações da API do Slack | API | Manipula solicitações de bot do Slack recebidas. |
| Principal - Lógica das Ferramentas do Agente de IA | Chamado por outros fluxos | Analisa consultas e as direciona para agentes especializados. |
| Chamada de API do Agente Especializado | Chamado por outros fluxos | Executa chamadas de API para agentes especializados. |
| Utilitário - Armazenamento em Nuvem do Chat do Bot | Chamado por outros fluxos | Armazena o histórico de chat do bot para contexto de conversa. |
Principal - Manipulador de Solicitações da API do Slack
Este fluxo de trabalho gerencia as solicitações de bot do Slack recebidas. Uma API personalizada do Jitterbit aciona o fluxo de trabalho sempre que um usuário interage com a interface de chat do bot do Slack. Para aprender como configurar a API personalizada do Jitterbit, veja Criar a API personalizada do Jitterbit.
Principal - Lógica das Ferramentas do Agente de IA
Este fluxo de trabalho lida com consultas de usuários recebidas do fluxo de trabalho Principal - Manipulador de Solicitações da API do Slack. Ele gerencia a interação com o LLM, captura a resposta e direciona a solicitação para o agente especializado apropriado.
Para adicionar ou remover agentes especializados para roteamento, faça as seguintes modificações neste fluxo de trabalho:
- Modificar chamadas de função: Edite o script
Build Routing Tools Requestdentro da operaçãoAdd Tools Callpara adicionar ou remover chamadas de função. - Atualizar o manuseio de ferramentas: Ajuste a operação
Tools Decisionpara gerenciar e lidar com a adição ou remoção de ferramentas, com base nas funções definidas no scriptBuild Routing Tools Requestdentro da operaçãoAdd Tools Call.
Chamada de API do Agente Especializado
Este fluxo de trabalho executa uma chamada de API para um agente especializado. O fluxo de trabalho Main - AI Agent Tools Logic determina a URL específica para o agente especializado. Você pode modificar a operação Agent Call neste fluxo de trabalho para corresponder aos requisitos da API do seu agente-alvo.
Utilitário - Armazenamento em Nuvem do Bot Chat
Este fluxo de trabalho armazena o histórico de chat do bot, que fornece contexto de conversa para o LLM. O fluxo de trabalho utiliza o Jitterbit Cloud Datastore para esse propósito.
Acionar os fluxos de trabalho do projeto
Para usar o Agente Composto, envie uma mensagem direta para o aplicativo Slack. Isso aciona o fluxo de trabalho Main - Slack API Request Handler através da API personalizada do Jitterbit.
Todos os outros fluxos de trabalho são executados automaticamente como parte do fluxo de trabalho principal e não estão destinados a serem executados de forma independente.
Solução de Problemas
Se você encontrar problemas, revise os seguintes logs para obter informações detalhadas de solução de problemas:
Para assistência adicional, entre em contato com o suporte do Jitterbit.