Agente de Preços Competitivos Jitterbit
Visão Geral
A Jitterbit oferece o Agente de Preços Competitivos aos clientes através do Jitterbit Marketplace. Este agente utiliza IA para analisar os preços dos concorrentes em diferentes marketplaces, ajudando as organizações a tomar decisões de preços baseadas em dados e a se manterem competitivas.
O agente aproveita dados de mercado em tempo real do Google Shopping para comparar os preços dos produtos entre os concorrentes. Usando uma análise impulsionada por IA, ele avalia estratégias de preços e recomenda preços ideais com base em regras de negócios configuráveis e metas de posicionamento no mercado.
O agente se integra ao Azure OpenAI para realizar análises de preços inteligentes. O agente pode ser configurado para funcionar com ou sem o App Builder, dependendo das suas necessidades. O agente realiza as seguintes tarefas:
- (Opcional) Conecta-se ao SAP ECC para recuperar dados de produtos (materiais) em tempo real usando o Jitterbit Studio. Os produtos também podem ser fornecidos diretamente por meio de chamadas de API.
- (Opcional) Armazena os produtos recuperados no Jitterbit App Builder para gerenciamento e configuração de dados.
- Consulta a API do Google Shopping usando o SKU do produto para recuperar informações de preços dos concorrentes sobre todos os produtos armazenados.
- Processa produtos individuais sob demanda usando uma API personalizada do Jitterbit.
- Cria prompts dinâmicos com base na estratégia de negócios configurável (armazenada no App Builder ou em variáveis de projeto) para orientar as recomendações de preços.
- Integra-se ao Azure OpenAI para analisar os preços dos concorrentes e gerar recomendações.
- Armazena os resultados da análise de preços (no App Builder, se utilizado) e envia notificações pelo Slack para produtos sinalizados.
Este documento explica como configurar e operar este agente de IA. Ele cobre arquitetura e pré-requisitos, exemplos de consultas de API que mostram o que o agente pode fazer, e etapas para instalar, configurar e operar o agente de IA.
Arquitetura do agente de IA
Este agente de IA analisa os preços dos concorrentes e recomenda preços ideais com base em dados de mercado e estratégia de negócios. Um fluxo de trabalho típico segue estas etapas:
- Você executa o agente em um cronograma ou manualmente, e o agente recupera produtos do SAP ECC ou do App Builder.
- Para cada produto, o agente consulta a API do Google Shopping para coletar dados de preços dos concorrentes, incluindo preços mínimo, médio e máximo.
- O agente cria um prompt dinâmico com base em regras de negócios configuráveis armazenadas no App Builder (como intenção de posicionamento de mercado e estratégia de ancoragem de preços) ou em variáveis de projeto.
- O Azure OpenAI analisa os dados de mercado usando o prompt dinâmico e retorna recomendações de preços, incluindo preço sugerido, pontuação de confiança e faixas de preços dos concorrentes.
- O agente armazena os resultados da análise no App Builder, retorna resultados via API para produtos individuais ou envia notificações pelo Slack, dependendo da sua configuração.
- Produtos com a flag de notificação ativada acionam alertas no Slack quando os preços mudam, recomendações são geradas ou quando você executa qualquer um dos fluxos de trabalho disponíveis.
- Você pode acionar a análise de produtos individuais por meio de uma chamada de API personalizada na interface do App Builder ou executar processamento em lote para todos os produtos. Ambas as abordagens funcionam com ou sem o App Builder.
Diagramas de fluxo de trabalho
Os diagramas a seguir representam os principais fluxos de trabalho para esta integração. Dependendo de você usar o App Builder para armazenamento de dados e configuração, os fluxos de trabalho diferem na forma como recuperam dados de produtos e retornam resultados.
Fluxos de trabalho ao usar o App Builder
Ao usar o App Builder, o agente armazena dados de produtos e resultados de análise nas tabelas do App Builder.
Análise de preços em lote
Você pode executar o agente em um cronograma ou manualmente para analisar todos os produtos. Ao usar uma conexão ERP, você pode opcionalmente armazenar produtos no App Builder imediatamente após consultar o sistema ERP, e então recuperá-los do App Builder para continuar o fluxo de trabalho do Agente de Preços Competitivos Jitterbit.
Jitterbit Competitive
Pricing Agent" } SAP[fas:fa-database
SAP ECC] GS[fab:fa-google
Google Shopping API] AZR[Azure OpenAI REST call] AZM@{ shape: hex, label: "Azure OpenAI model" } STR@{ shape: hex, label: "
App Builder" } SAP -->|1. Query products| JSP JSP -->|2. Product details| GS GS -->|3. Competitor prices| JSP JSP -->|4. Market data + prompt| AZR AZR --> AZM AZM --> AZR AZR -->|5. Pricing recommendations| JSP JSP -->|6. Store results| STR
Análise de preços sob demanda
Os usuários acionam a análise para produtos individuais através da interface do App Builder:
Jitterbit Competitive
Pricing Agent" } STR@{ shape: hex, label: "
App Builder" } JCA@{ shape: hex, label: "
Jitterbit API Manager
custom API" } UI[fas:fa-desktop
App Builder UI] GS[fab:fa-google
Google Shopping API] AZR[Azure OpenAI REST call] AZM@{ shape: hex, label: "Azure OpenAI model" } UI -->|1. Trigger analysis| JCA JCA -->|2. Product request| JSP JSP -->|3. Fetch configuration| STR JSP -->|4. Product details| GS GS -->|5. Competitor prices| JSP JSP -->|6. Market data + prompt| AZR AZR --> AZM AZM --> AZR AZR -->|7. Pricing recommendations| JSP JSP -->|8. Update results| STR STR -->|9. Return updated data| UI
Fluxos de trabalho ao não usar o App Builder
Ao não usar o App Builder, o agente recupera produtos diretamente dos sistemas ERP e retorna resultados por meio de respostas da API e notificações no Slack.
Análise de preços em lote a partir do ERP
Uma API aciona o agente para recuperar produtos do ERP e realizar a análise de preços:
Jitterbit Competitive
Pricing Agent" } JCA@{ shape: hex, label: "
Jitterbit API Manager
custom API" } SAP[fas:fa-database
SAP ECC] GS[fab:fa-google
Google Shopping API] AZR[Azure OpenAI REST call] AZM@{ shape: hex, label: "Azure OpenAI model" } SLK[fab:fa-slack
Slack] JCA -->|1. Trigger batch processing| JSP SAP -->|2. Query products| JSP JSP -->|3. Product details| GS GS -->|4. Competitor prices| JSP JSP -->|5. Market data + prompt| AZR AZR --> AZM AZM --> AZR AZR -->|6. Pricing recommendations| JSP JSP -->|7. Send results| SLK
Análise de preços de produto único via API
Os usuários acionam a análise para produtos individuais através de chamadas diretas à API com carga útil JSON:
Jitterbit Competitive
Pricing Agent" } JCA@{ shape: hex, label: "
Jitterbit API Manager
custom API" } GS[fab:fa-google
Google Shopping API] AZR[Azure OpenAI REST call] AZM@{ shape: hex, label: "Azure OpenAI model" } SLK[fab:fa-slack
Slack] USER[fas:fa-user
API Client] USER -->|1. Product JSON| JCA JCA -->|2. Product request| JSP JSP -->|3. Product details| GS GS -->|4. Competitor prices| JSP JSP -->|5. Market data + prompt| AZR AZR --> AZM AZM --> AZR AZR -->|6. Pricing recommendations| JSP JSP -->|7. API response| JCA JCA -->|8. Results| USER JSP -.->|9. Notifications if flagged| SLK
Pré-requisitos
Você precisa dos seguintes componentes para usar este agente de IA.
Componentes do Harmony
É necessário ter uma licença do Jitterbit Harmony com acesso aos seguintes componentes:
- Jitterbit Studio
- Jitterbit API Manager
- Jitterbit App Builder versão 4.55.1 com um banco de dados PostgreSQL (opcional, para gerenciamento e configuração de dados)
- Agente de Preços Competitivos Jitterbit adquirido como um complemento de licença
Endpoints suportados
O agente de IA incorpora os seguintes endpoints. É possível acomodar outros sistemas modificando as configurações de endpoint e fluxos de trabalho do projeto.
Modelo de linguagem grande (LLM)
O agente de IA utiliza Azure OpenAI como o provedor de LLM para análise de preços. Para usar o Azure OpenAI, é necessário ter uma assinatura do Microsoft Azure com permissões para criar um recurso Azure OpenAI com um modelo gpt-4o implantado.
Dica
Para informações sobre preços, consulte a página de preços do Azure OpenAI.
Fonte de dados
O agente de IA pode recuperar dados de produtos do SAP ECC ou de outros sistemas ERP, ou você pode fornecer dados de produtos diretamente por meio de chamadas de API. Se optar por usar o App Builder, ele armazena e exibe informações sobre produtos e resultados de análise de preços. Sem o App Builder, o agente retorna resultados diretamente por meio de respostas de API e notificações do Slack.
Dados do Google Shopping
O agente de IA utiliza SerpApi para acessar dados do Google Shopping. Você deve ter uma conta SerpApi para usar a API do Google Shopping. Este serviço é externo ao Google e ao Jitterbit. A SerpApi oferece planos gratuitos e pagos.
Serviço de notificação
O agente de IA utiliza Slack para enviar notificações para produtos com a flag de notificação ativada quando um registro de produto muda. Você pode substituir o Slack por qualquer outro endpoint de notificação modificando as configurações de endpoint do projeto e adaptando os fluxos de trabalho aos esquemas exigidos pelo serviço escolhido. Se estiver usando o Slack, você deve criar um aplicativo Slack (usando o arquivo slack_app_manifest.json fornecido no download de personalizações) e obter os tokens de autenticação necessários.
Exemplos de consultas de API
Os seguintes exemplos mostram como chamar a API personalizada do Jitterbit para realizar análise de preços.
Chamadas de API com App Builder
Esses exemplos demonstram chamadas de API ao usar o App Builder para armazenamento e gerenciamento de dados.
Análise de preços de um único produto
A API aceita detalhes do produto do App Builder. O App Builder fornece a solicitação JSON de acordo com a regra criada no App Builder. A resposta inclui os dados originais do produto mais a análise de preços gerada pela IA: preços mínimos, médios e máximos dos concorrentes, preço recomendado e pontuação de confiança.
-
Endpoint:
POST https://JBExample123456.jitterbit.net/defaultUrlPrefix/2.1/aiAgentPricingAgentApi/suggestedprice -
Request:
{ "productID": "391fd871-cc9a-4e93-af27-a6f2e11237ee", "brand": "Apple", "SKU": "iPhone 14 Pro Max 256 Gb", "description": "Smartphone Apple iPhone 14 Pro Max", "basePrice": 350, "category": "Smartphone", "AICompetitorMinimum": "", "AICompetitorAverage": "", "AICompetitorMaximum": "", "AIPriceRecommendation": "", "AIConfidenceScore": "", "flagNotification": 1 } -
Response:
{ "productID": "391fd871-cc9a-4e93-af27-a6f2e11237ee", "brand": "Apple", "SKU": "iPhone 14 Pro Max 256 Gb", "description": "Smartphone Apple iPhone 14 Pro Max", "basePrice": 350, "category": "Smartphone", "AICompetitorMinimum": "$415.00", "AICompetitorAverage": "$537.06", "AICompetitorMaximum": "$879.00", "AIPriceRecommendation": "$626.53", "AIConfidenceScore": "75", "flagNotification": 1 }
Análise de preços em lote para todos os produtos
A API aciona o processamento em lote de todos os produtos armazenados no App Builder. O processo em lote é executado em segundo plano para evitar o tempo limite da API.
-
Endpoint:
POST https://JBExample123456.jitterbit.net/defaultUrlPrefix/2.1/aiAgentPricingAgentApi/AppBuilderAllProductsSuggestedPrice -
Request: Nenhuma necessária.
-
Response:
{ "status": "Success", "message": "The integration will run but it will take some time. Please verify that the data is updated after some time" }
Chamadas de API sem App Builder
Estes exemplos demonstram chamadas de API ao realizar análise de preços sem usar o App Builder para armazenamento de dados.
Processamento em lote a partir do ERP
A API aciona o processamento em lote de todos os produtos do sistema ERP. O processo em lote é executado em segundo plano para evitar o tempo limite da API.
-
Endpoint:
POST https://JBExample123456.jitterbit.net/defaultUrlPrefix/2.1/aiAgentPricingAgentApi/ERPProductsSuggestedPrice -
Request: Nenhuma necessária.
-
Response:
{ "status": "Success", "message": "The integration will run but it will take some time. Please verify that the data is sent to your instant message application" }
Análise de preços de um único produto
A API permite a análise de preços sem usar o App Builder para armazenamento de dados. O agente retorna os resultados na resposta da API e os envia via notificações do Slack.
-
Endpoint:
POST https://JBExample123456.jitterbit.net/defaultUrlPrefix/2.1/aiAgentPricingAgentApi/GenericProductSuggestedPrice -
Request:
{ "productID": "112233", "brand": "Apple", "SKU": "iPhone 14 Pro Max 256 Gb", "description": "Smartphone Apple iPhone 15 Pro Max", "basePrice": 345, "category": "Smartphone Apple", "AICompetitorMinimum": "", "AICompetitorAverage": "", "AICompetitorMaximum": "", "AIPriceRecommendation": "", "AIConfidenceScore": "", "flagNotification": 1 } -
Response:
{ "productID": "112233", "brand": "Apple", "SKU": "iPhone 14 Pro Max 256 Gb", "description": "Smartphone Apple iPhone 15 Pro Max", "basePrice": 345, "category": "Smartphone Apple", "AICompetitorMinimum": "$359.99", "AICompetitorAverage": "$494.53", "AICompetitorMaximum": "$1080.00", "AIPriceRecommendation": "$419.76", "AIConfidenceScore": "75", "flagNotification": 1 }
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
- Criar recursos do Microsoft Azure
- Criar o aplicativo Slack
- Configurar variáveis do projeto
- Testar conexões
- Implantar o projeto
- Criar a API personalizada do Jitterbit
- Instalar o aplicativo App Builder (opcional, apenas para usuários do App Builder)
- Revisar fluxos de trabalho do projeto
- Acionar os fluxos de trabalho do projeto
Para orientações de solução de problemas, consulte 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 para o agente de IA:
-
Faça login no portal Harmony em https://login.jitterbit.com e abra o Marketplace.
-
Localize o agente de IA chamado Jitterbit Competitive Pricing Agent. Para localizar o agente, você pode usar a barra de pesquisa ou, no painel Filtros sob Tipo, selecionar Agente de IA para limitar a exibição a agentes de IA.
-
Clique no link Documentação do agente de IA para abrir sua documentação em uma nova aba. Mantenha a aba aberta para consultar depois de 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 comprou o agente de IA, Obter este agente será exibido em vez disso. Clique nele para abrir um diálogo informativo e, 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, o seguinte arquivo é fornecido para facilitar a configuração do aplicativo Slack. Selecione o arquivo e clique em Baixar Arquivos:
- Arquivo de manifesto do aplicativo Slack:
slack_app_manifest.json
- Arquivo de manifesto do aplicativo Slack:
-
Clique em Próximo.
-
Na etapa de configuração 2, Criar um Novo Projeto, selecione um ambiente onde o projeto do Studio será criado e clique em Criar Projeto.
-
Um diálogo de progresso é exibido. Assim que 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 através do portal Azure AI Foundry.
Mantenha o nome da implantação, a URL do endpoint Azure OpenAI e a chave da API. Você irá inserir esses valores nas variáveis do projeto Azure OpenAI quando você configurar as variáveis do projeto na próxima etapa.
Para encontrar esses valores, siga estas etapas:
-
No portal Azure AI Foundry, abra o recurso OpenAI específico.
-
Na página inicial do recurso, copie a URL do endpoint (você usará isso para a variável do projeto
azure_openai_base_url) e a chave da API (você usará isso para a variávelazure_openai_api_key). -
No menu de navegação sob Recursos compartilhados, selecione Implantações. Copie o nome da implantação (você usará isso para a variável
azure_deployment_id).
Criar o aplicativo Slack
Para receber notificações do Slack sobre mudanças de preços, 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 Slack}}O nome que você deseja que seu bot Slack tenha, conforme exibido para os usuários. Substitua este valor em dois lugares no manifesto. {{Substitua pela URL da API Jitterbit}}A URL do serviço da API personalizada Jitterbit que você criou em Criar a API personalizada 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 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.
Configurar variáveis de projeto
No projeto do Studio instalado anteriormente a partir do Marketplace, você deve definir valores para as seguintes variáveis de projeto.
Para configurar variáveis de projeto, use o menu de ações do projeto para selecionar Variáveis de Projeto e abrir um painel na parte inferior da página onde você pode revisar e definir os valores.
Slack
| Nome da variável | Descrição |
|---|---|
slack_channel_name |
Canal do Slack onde as notificações são enviadas com a análise de preços dos produtos. |
slack_bot_oauth_user_token |
O token do bot do Slack obtido após criar o aplicativo do Slack, usado para o campo Token OAuth do Usuário Bot da conexão do Slack. |
SAP
| Nome da variável | Descrição |
|---|---|
SAP_Username |
Nome de usuário de integração para a instância SAP. |
SAP_System_Number |
Número do sistema para conectar à instância SAP. |
SAP_Password |
Senha para a instância SAP. |
SAP_Language |
Código do idioma, como EN para inglês. |
SAP_Host |
URL do servidor SAP. Exemplo: ecc489.example.com. |
SAP_Client |
Cada cliente possui seus próprios dados, personalizações e configurações. O número do cliente identifica exclusivamente cada cliente dentro de um sistema SAP. |
SAP_Last_Modified_Date |
Data de ponto de partida para recuperar materiais SAP. Use o formato YYYYMMDD. |
Google Shopping
| Nome da variável | Descrição |
|---|---|
Google_Location |
Filtrar resultados por país ou região. |
Google_Key |
Chave da API para o Google Shopping. Crie uma conta em https://serpapi.com. |
Google_Engine |
Tipo de mecanismo que o Google usa para buscar dados. Use google_shopping_light por padrão. |
Notificações por email
| Nome da variável | Descrição |
|---|---|
Email_Summary |
Defina como true para habilitar o envio de notificações por email de resumo. |
Email_SMTP_Servers |
Lista separada por vírgulas de servidores SMTP usados para enviar notificações por email. |
Email_Sender_Password |
Senha da conta de email usada para enviar notificações por email. |
Email_Sender_Account |
Conta de email usada para enviar notificações por email. |
Email_Recipients |
Lista separada por vírgulas de contas de email que receberão notificações por email. |
Email_Enabled |
Defina como true para habilitar o envio de notificações por email. |
Email_Display_Name |
Conta de email usada no campo "de" das notificações por email. |
Email_Data_Error |
Defina como true para habilitar o envio de notificações por email de falha. |
Azure OpenAI
| Nome da variável | Descrição |
|---|---|
azure_openai_top_p |
Controla quanto da massa de probabilidade o modelo considera ao gerar texto. Valores baixos (como 0.1–0.3) são muito focados. Valores altos (como 0.9–1.0) são mais diversos e criativos. Defina como 0.95. |
azure_openai_temperature |
Controla a aleatoriedade da saída do modelo. Valores mais baixos (como 0.0–0.3) tornam as respostas mais focadas e determinísticas, enquanto valores mais altos (como 0.8–1.0) aumentam a criatividade e diversidade. Defina como 0.2 para respostas determinísticas. |
azure_deployment_id |
O nome da implantação do Azure OpenAI usada para acessar o modelo. Defina como gpt-4o. |
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 usada para autenticar solicitações ao serviço Azure OpenAI. |
App Builder
Nota
Você deve preencher os valores para essas variáveis após Instalar o aplicativo App Builder. Você pode deixar essas variáveis em branco por enquanto.
| Nome da variável | Descrição |
|---|---|
app_builder_base_url |
A URL base da sua instância do App Builder (por exemplo, https://development.appbuilder.jitterbit.com). Você obtém esse valor após concluir a seção de Integração da API do App Builder. |
app_builder_api_key |
Chave de autenticação da API REST para a chamada da API. Você obtém esse valor após concluir a seção de Integração da API do App Builder. Para instruções detalhadas sobre como obter esse valor, consulte Publicar aplicativo App Builder como um endpoint da API REST. |
app_builder_endpoint_url |
O caminho do endpoint que vem após a URL base. Valor padrão: rest/v1/PricingAIAgentApp. Esse valor não precisa ser modificado pelo usuário. |
Parâmetros de prompt dinâmico
Essas variáveis controlam o comportamento da IA ao construir recomendações de preços.
Nota
Se você estiver usando o App Builder, a única variável de projeto que precisa configurar é ai_Use_PV_Configuration_Values. Você pode deixar o restante com seus valores padrão.
| Nome da variável | Descrição |
|---|---|
ai_Use_PV_Configuration_Values |
Defina como true para usar o aplicativo App Builder para configuração. Defina como false para usar os valores das variáveis de projeto em vez disso. |
ai_System_Prompt |
Parte estática das instruções fornecidas à IA. Define o papel da IA como um especialista em compras e análise de preços competitivos. Consulte Valores padrão do prompt para o texto padrão necessário. Não modifique, a menos que seja necessário. |
ai_Premium_Discount_Percentage |
Percentual aplicado de acordo com a intenção de posicionamento. Valores positivos aumentam o preço (premium), valores negativos diminuem o preço (desconto). |
ai_Positioning_Intent |
Estratégia de posicionamento no mercado. Opções: Match market, Premium ou Undercut market. |
ai_Outlier_Exclusion |
Defina como true para remover preços extremos de concorrentes (valores >2x ou <0.5x da mediana) antes de calcular estatísticas. |
ai_Minimum_Competitor_Sample_Size |
Número mínimo de concorrentes válidos necessários para recomendações confiáveis. Se abaixo desse limite, a IA aciona um comportamento de fallback. |
ai_Max_Price_Increase |
Percentual máximo que a IA pode recomendar acima do preço base ou do preço influenciado por âncoras. |
ai_Max_Price_Decrease |
Percentual máximo que a IA pode recomendar abaixo do preço base ou do preço influenciado por âncoras. |
ai_Market_Price_Anchor |
Ponto de referência para decisões de preços. Opções: Average, Lowest competitor, Median ou Top quartile. |
ai_Base_Price_Weighting |
Percentual que controla quão fortemente o preço base influencia a recomendação final em relação à âncora de mercado. Defina como 0 para ignorar o preço base, 100 para ignorar a âncora de mercado ou 50 para misturar ambos igualmente. |
ai_Dynamic_Prompt |
Parte variável do prompt do sistema que incorpora valores de configuração. Contém instruções sobre como a IA deve analisar dados de preços e gerar recomendações. Consulte Valores padrão do prompt para o texto padrão necessário. Não modifique, a menos que seja necessário. |
Valores padrão do prompt
Os seguintes valores padrão devem ser mantidos para as variáveis ai_System_Prompt e ai_Dynamic_Prompt. Modificar esses valores pode causar problemas na execução da IA.
Valor padrão de ai_System_Prompt
Você é um especialista em compras e análise de preços competitivos.\n Você receberá um documento JSON contendo itens de concorrentes com preços.\n Você deve analisar SOMENTE os dados JSON fornecidos.\nSuas responsabilidades:\n - Identificar todos os preços válidos dos concorrentes.\n - Calcular o preço mínimo dos concorrentes.\n - Calcular o preço máximo dos concorrentes.\n - Calcular o preço médio dos concorrentes.\n - Contar o número de concorrentes válidos.\n - Calcular uma pontuação de confiança com base na contagem de concorrentes, variação de preços e consistência dos dados.\n Você NÃO inventa dados.\n Você NÃO usa fontes externas.\n Você NÃO modifica os limites de preços definidos pelo sistema.\n Ao recomendar um preço:\n - Você deve recomendar um preço estritamente dentro do limite inferior e superior de preços fornecidos.\n - Você deve alinhar a recomendação com a estratégia de preços e o âncora de mercado fornecidos.\n - Você deve aplicar um comportamento de fallback quando a confiança estiver abaixo do limite necessário.\n A resposta deve sempre seguir exatamente a estrutura de saída definida.\n
Valor padrão de ai_Dynamic_Prompt
\n'Configuração da estratégia de preços:\n\n- Tipo de âncora de mercado: ||marketAnchor|| \n\n- Intenção de posicionamento: ||positioningIntent||\n\n- Peso do preço base: ||basePriceWeighting||%\n Isso controla quão fortemente o preço base influencia a recomendação final em relação à âncora de mercado. 0% ignora o preço base, 100% ignora a âncora de mercado, 50% mistura ambos igualmente. Valor atual: ||basePriceWeighting||%\n\n- Percentual de prêmio/desconto: ||premiumDiscountPercentage||%\n Este percentual é aplicado de acordo com a intenção de posicionamento. Valores positivos aumentam o preço (prêmio), valores negativos diminuem o preço (desconto). Valor atual: ' + premiumDiscountPercentage + '%\n\n- Aumento máximo de preço permitido: ||maxPriceIncrease||%\n A IA não deve recomendar um preço mais do que essa porcentagem acima do preço base ou do preço influenciado pela âncora. Valor atual: ||maxPriceIncrease||%\n\n- Redução máxima de preço permitida: ||maxPriceDecrease||%\n A IA não deve recomendar um preço mais do que essa porcentagem abaixo do preço base ou do preço influenciado pela âncora. Valor atual: ||maxPriceDecrease||%\n\n- Tamanho mínimo da amostra de concorrentes: ||minimumCompetitorSampleSize||\n Se o número de concorrentes válidos estiver abaixo desse limite, a IA deve acionar um comportamento de fallback para evitar recomendações não confiáveis. Valor atual: ||minimumCompetitorSampleSize||\n\n- Exclusão de outliers: ||outlierExclusion||\n Se a exclusão de outliers estiver habilitada, remova preços extremos de concorrentes antes de calcular o mínimo, máximo e médio. Extremo é definido como valores >2x ou <0.5x a mediana. Valor atual: ||outlierExclusion||\n\nInstruções:\n\n1. A partir do JSON fornecido, identifique todos os preços válidos dos concorrentes.\n2. Remova outliers se a exclusão de outliers estiver habilitada.\n3. Calcule:\n - Preço mínimo dos concorrentes como AICompetitorMinimum\n - Preço máximo dos concorrentes como AICompetitorMaximum\n - Preço médio dos concorrentes como AICompetitorAverage\n4. Formate todos os preços calculados como moeda com um prefixo "$" e exatamente duas casas decimais.\n5. Calcule uma pontuação de confiança de 0 a 100 com base na contagem de concorrentes, variação de preços e consistência dos dados como AIConfidenceScore.\n6. Recomende um preço final que:\n - Alinhe-se com a âncora de mercado selecionada e a intenção de posicionamento\n - Aplique o peso do preço base e o percentual de prêmio/desconto\n - Respeite os limites máximos de aumento/redução de preço\n - Permaneça estritamente dentro do limite inferior e superior de preços definidos pelo sistema\n - Armazene o preço final recomendado como AIPriceRecomendation\n7. Se a confiança < limite ou contagem de concorrentes < ||minimumCompetitorSampleSize||, aplique comportamento de fallback.\n8. Atualize apenas os campos que estão vazios ("").\n9. Retorne apenas JSON válido, começando com "{" e terminando com "}".\n\nCertifique-se de usar as tags de abertura e fechamento prescritas. Não retorne a resposta em markdown ou em qualquer formato de código, apenas o texto simples.\nRemova qualquer ```json no início ou no final. A resposta deve SER APENAS um JSON válido que começa com { e termina com }.\nNão envie valores vazios\nESTRUTURA DE SAÍDA (use exatamente esta estrutura):\n
Testar conexões
Testar 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
Criar uma API personalizada para múltiplos serviços para acionar diferentes operações usando o API Manager.
Escolha o conjunto apropriado de serviços abaixo com base em você usar o App Builder ou chamadas diretas de API, em seguida, configure e publique a API personalizada.
Serviços para App Builder
Configure esses serviços se estiver usando a abordagem do App Builder. Após configurar os serviços, publique a API personalizada.
-
Serviço 1: Obter Preço Sugerido por IA
Configuração Valor Nome do serviço Obter Preço Sugerido por IAOperação Carga de Dados Inicial - Execução da APICaminho /suggestedpriceMétodo POSTTipo de Resposta Variável do Sistema -
Serviço 2: Obter Preço Sugerido de Todos os Produtos por IA
Configuração Valor Nome do serviço Obter Preço Sugerido de Todos os Produtos por IAOperação Manipulador de Solicitação da API de Produtos do App BuilderCaminho /AppBuilderAllProductsSuggestedPriceMétodo POSTTipo de Resposta Variável do Sistema
Importante
Salve as URLs dos serviços da API da API publicada. Você usará essas URLs na seção Integração da API do App Builder para configurar a conexão entre o App Builder e a API personalizada do Jitterbit.
Serviços para chamadas de API (não App Builder)
Configure esses serviços se você usar chamadas de API sem o App Builder. Após configurar os serviços, publique a API personalizada.
-
Serviço 1: Carregamento Inicial de Dados de Produtos
Configuração Valor Nome do serviço Carregamento Inicial de Dados de ProdutosOperação Carregamento Inicial de Dados de ProdutosCaminho /ERPProductsSuggestedPriceMétodo POSTTipo de Resposta Variável do Sistema -
Serviço 2: Obter Preço Sugerido pela IA
Configuração Valor Nome do serviço Obter Preço Sugerido pela IAOperação Carregamento Inicial - Execução de API GenéricaCaminho /GenericProductSuggestedPriceMétodo POSTTipo de Resposta Variável do Sistema
Importante
Salve as URLs dos serviços da API da API publicada para uso ao fazer solicitações de API. Para encontrar as URLs dos serviços, vá até o painel de detalhes da API na aba Serviços, passe o mouse sobre a coluna Ações de cada serviço e clique em Copiar URL do serviço da API.
Instale o aplicativo App Builder
Essas instruções são necessárias apenas se você estiver usando o App Builder para gerenciamento e configuração de dados. Se estiver usando o agente de IA sem o App Builder, pule esta seção e configure o agente usando variáveis de projeto, conforme descrito em Parâmetros dinâmicos de prompt.
Nota
Este agente de IA utiliza comunicação bidirecional de API com o App Builder:
- O agente de IA chama as APIs do App Builder para armazenar informações do produto.
- O App Builder chama a API personalizada do Jitterbit para realizar a análise de preços.
Você configurará as URLs da API tanto nas variáveis do projeto do Studio quanto no App Builder durante as etapas abaixo.
Para instalar e configurar o aplicativo App Builder, entre em contato com o suporte do Jitterbit para obter o arquivo de instalação do App Builder (.lp file).
Importante
Se estiver usando o pacote de lançamento do App Builder, sua instância do App Builder deve estar na versão 4.55.1 e usar um banco de dados PostgreSQL.
Instalar o arquivo LP
Instale o pacote de lançamento na sua instância do App Builder:
-
Faça login no App Builder.
-
Vá para o IDE.
-
Em Deploy, clique em Instalar Lançamento.
-
Clique em + Pacote e depois clique em Procurar.
-
Selecione o arquivo LP fornecido pelo suporte do Jitterbit.
-
Clique em Salvar. O painel Release à direita exibe as informações do pacote.
-
Feche o diálogo Pacote.
-
Confirme que os detalhes estão corretos e clique em Instalar.
Integração da API do App Builder
As etapas nesta seção configuram a comunicação bidirecional da API entre o App Builder e a API personalizada do Jitterbit:
- Inbound: Permitir que o Jitterbit chame as APIs do App Builder para armazenar informações do produto.
- Outbound: Permitir que o App Builder chame a API personalizada do Jitterbit para acionar a análise de preços.
Configurar autenticação da API para chamadas de entrada
Configure a autenticação API Key no App Builder para permitir que o Jitterbit armazene dados do produto. Você precisa de um provedor de segurança API Key e API Keys específicas para usuários.
Nota
-
Se você tiver um provedor de segurança API Key existente: Configure as API Keys para os usuários específicos que precisam de acesso.
-
Se você não tiver um provedor de segurança API Key: Crie o provedor de segurança API Key e configure as API Keys para usuários específicos. Não configure ou publique endpoints.
Para instruções detalhadas, veja Publicar aplicativo do App Builder como um endpoint de API REST.
Configurar o servidor de dados para chamadas de saída
Configure o App Builder para chamar a API personalizada do Jitterbit quando os usuários clicarem no botão Enviar dados para IA. Isso aciona o fluxo de trabalho Tool - Read AppBuilder Pricing Request.
-
Vá para IDE > Servidores de Dados e localize o servidor de dados AI Pricing Agent API Source.
-
Clique em Abrir registro e depois clique em Editar.
-
No campo URL, insira a URL da API personalizada do Jitterbit que você salvou ao criar a API personalizada do Jitterbit.
-
Clique em Salvar.
Atualizar variáveis do projeto do Studio
Agora que você completou a integração da API do App Builder, insira os valores para as variáveis do projeto do App Builder.
Atualizar tabelas do App Builder usando APIs
O projeto do Studio utiliza as variáveis de projeto app_builder_base_url e app_builder_endpoint_url para chamar os seguintes endpoints do App Builder:
- Upsert Tabela de Produtos:
/products/[appBuilderProductID](POST) - Criar dados históricos do App Builder:
/aiSearchLog(POST)
Nenhuma configuração adicional é necessária. Esses endpoints são utilizados automaticamente pelos fluxos de trabalho do projeto.
Obter dados do App Builder usando APIs
Para recuperar dados do App Builder usando a API REST nativa do App Builder, as seguintes requisições são utilizadas:
- Obter informações do produto:
GET - https://development.appbuilder.jitterbit.com/rest/v1/PricingAIAgentApp/products -
Obter valores de configuração:
GET - https://development.appbuilder.jitterbit.com/rest/v1/PricingAIAgentApp/configurationControlGET - https://development.appbuilder.jitterbit.com/rest/v1/PricingAIAgentApp/marketPriceAnchorGET - https://development.appbuilder.jitterbit.com/rest/v1/PricingAIAgentApp/positioningIntent
Tabelas do App Builder
A aplicação App Builder armazena e exibe as seguintes informações em diferentes tabelas.
As seguintes tabelas são utilizadas pela aplicação App Builder. Para informações detalhadas sobre os tipos de dados do App Builder e suas especificações, consulte a documentação sobre Tipos de dados de coluna.
-
AISearchLog: Esta tabela armazena dados históricos para cada execução de IA.
Nome da coluna Tipo de dado Descrição AISearchLogIDUUID Identificador único dateDateTime Carimbo de data da execução da IA productInformationNVarchar(5000) Informações do produto com valores gerados pela IA configurationNVarchar(5000) Esquema de configuração utilizado na análise -
ConfigurationControlValues: Esta tabela armazena a estratégia de análise utilizada para criar o prompt dinâmico para os resultados da análise de preços.
Nome da coluna Tipo de dado Descrição ConfigurationControlValueIDUUID Identificador único marketPriceAnchorValueIDUUID Referência ao valor âncora de preço de mercado positioningIntentIDUUID Referência ao valor de intenção de posicionamento basePriceWeightingTinyInt Percentual que controla a influência do preço base premiumDiscountPercentageTinyInt Percentual aplicado de acordo com a intenção de posicionamento maxPriceDecreaseTinyInt Percentual máximo para redução de preço maxPriceIncreaseTinyInt Percentual máximo para aumento de preço minimumCompetitorSampleSizeNVarchar(50) Mínimo de concorrentes necessários para recomendações confiáveis outlierExclusionBit Flag booleano para habilitar a exclusão de outliers dynamicPromptTextNVarchar(5000) Parte variável do prompt que incorpora valores de configuração staticPromptTextNVarchar(5000) Parte estática das instruções da IA -
marketPriceAnchorValues: Esta tabela armazena os valores do dropdown usados na configuração da análise.
Nome da coluna Tipo de dado Descrição marketPriceAnchorValueIDUUID Identificador único marketPriceAnchorValueNVarchar(50) A opção de valor âncora: Média,Menor concorrente,MedianaouQuartil superiorscriptNVarchar(5000) Script associado ao valor âncora -
positioningIntentValues: Esta tabela armazena os valores do dropdown usados na configuração da análise.
Nome da coluna Tipo de dado Descrição positioningIntentIDUUID Identificador único positioningIntentValueNVarchar(50) A opção de intenção de posicionamento: Combinar com o mercado,PremiumouAbaixo do mercadoscriptNVarchar(5000) Script associado à intenção de posicionamento -
Products: Esta tabela armazena informações sobre produtos. Preencha esta tabela manualmente ou use o Tool - Get ERP Products with App Builder para importar produtos automaticamente do SAP ECC.
Nome da coluna Tipo de dado Descrição ProductIDUUID Identificador único do produto BrandNVarchar(50) Marca do produto SKUNVarchar(50) Unidade de Manutenção de Estoque VinylAuditRefIdUUID Identificador de referência de auditoria de vinil DescriptionNVarchar(100) Descrição do produto BasePriceNumeric(15,2) Preço base do produto CategoryNVarchar(50) Categoria do produto AICompetitorMinimumNVarchar(50) Preço mínimo do concorrente gerado por IA AICompetitorAverageNVarchar(50) Preço médio do concorrente gerado por IA AICompetitorMaximumNVarchar(50) Preço máximo do concorrente gerado por IA AIPriceRecommendationNVarchar(50) Preço recomendado gerado por IA AIConfidenceScoreNVarchar(50) Pontuação de confiança da IA para a recomendação SourceIDNVarchar(50) Identificador do sistema de origem SourceNameNVarchar(50) Nome do sistema de origem flagNotificationBit Flag booleano para habilitar notificações no Slack
Revisar fluxos de trabalho do projeto
O projeto Studio contém 12 fluxos de trabalho que implementam a funcionalidade do agente de precificação de IA. Cada fluxo de trabalho serve a um propósito específico no processo de análise de preços. Compreender esses fluxos de trabalho ajuda a determinar quais configurar e executar com base na sua abordagem de implementação.
| Fluxo de Trabalho | Tipo de Gatilho | App Builder | Non-App Builder |
|---|---|---|---|
| Tool - Read AppBuilder Pricing Request | API | ||
| Tool - Read Products From AppBuilder Table | Manual/Programado | ||
| Tool - Build Prompt Configuration | Chamado por outros fluxos | ||
| Utility - Search Products in Google Shopping | Chamado por outros fluxos | ||
| Main - AI Agent Tools Logic | Chamado por outros fluxos | ||
| Tool - Get ERP Products with App Builder | Manual/Programado | ||
| Tool - Get ERP Products | API | ||
| Utility - Store to App Builder | Chamado por outros fluxos | ||
| Utility - AppBuilder Logging | Chamado por outros fluxos | ||
| Main Entry - Slack API Request Handler | Chamado por outros fluxos | ||
| Main Entry - Sync App Builder Products API Request Handler | API | ||
| Main Entry - Generic Single Pricing API Request Handler | API |
Fluxos de Trabalho ao Usar o App Builder
Ferramenta - Ler Solicitação de Preços do AppBuilder
Este fluxo de trabalho recebe informações sobre produtos por meio de solicitações da API do App Builder e chama a API do Google Shopping, configuração de prompt, Azure OpenAI, notificações e fluxos de trabalho de registro para realizar a análise de preços. O fluxo de trabalho retorna informações de preços atualizadas para as tabelas do App Builder.
Entrada Principal - Manipulador de Solicitações da API de Produtos do App Builder
Este fluxo de trabalho chama Ferramenta - Ler Produtos da Tabela do AppBuilder para processar todos os produtos sob demanda, em vez de esperar por uma execução programada. Você pode acionar este fluxo de trabalho usando uma API configurada no App Builder ou executá-lo fora do App Builder.
Entrada Principal - Manipulador de Solicitações da API do Slack
Este fluxo de trabalho envia resultados de IA e um resumo do processamento para um canal do Slack quando o campo flagNotification de um produto está marcado como verdadeiro. Você pode personalizar este fluxo de trabalho para outros canais de comunicação criando um novo conector e operação.
Ferramenta - Obter Produtos ERP com App Builder
Este fluxo de trabalho conecta-se ao SAP ou a outros sistemas ERP para recuperar produtos e armazená-los nas tabelas do App Builder em um formato genérico. Ao conectar-se ao SAP ECC, RFC_READ_TABLE chama a tabela MARA para obter a lista de materiais, e BAPI_MATERIAL_GETALL é usado para obter os detalhes de cada material. O fluxo de trabalho contém a operação Obter Materiais SAP. O fluxo de trabalho é executado de forma programada ou manualmente.
Ferramenta - Ler Produtos da Tabela do AppBuilder
Este fluxo de trabalho processa todos os produtos da tabela do App Builder. O fluxo de trabalho contém a operação Carga Inicial de Dados que chama a API do Google Shopping, configuração de prompt, Azure OpenAI, notificações e fluxos de trabalho de registro para realizar a análise de preços. O fluxo de trabalho é executado de forma programada ou manualmente.
Utility - Store to App Builder
Este fluxo de trabalho verifica se um produto existe na tabela do App Builder. O fluxo de trabalho atualiza o produto se ele existir ou cria um novo registro se não existir.
Utility - AppBuilder Logging
Este fluxo de trabalho armazena informações de execução na tabela AISearchLog do App Builder quando Tool - Read AppBuilder Pricing Request e Tool - Read Products From AppBuilder Table são executados. O fluxo de trabalho registra o esquema do produto com valores de IA e o esquema de configuração usado em cada execução.
Workflows quando não utilizando o App Builder
Tool - Get ERP Products
Este fluxo de trabalho recebe solicitações de API para recuperar materiais do SAP ou de outros sistemas ERP, realiza análise de preços usando o Google Shopping e o LLM, e retorna resultados por meio de notificações no Slack. Ao conectar-se ao SAP ECC, RFC_READ_TABLE chama a tabela MARA para obter a lista de materiais, e BAPI_MATERIAL_GETALL é usado para obter os detalhes de cada material. A chamada da API requer um parâmetro obrigatório startingDate na URL (por exemplo, https://JBExample123456.jitterbit.net/defaultUrlPrefix/2.1/aiAgentPricingAgentApi/ERPProductsSuggestedPrice?startingDate=20250101) para restringir a busca por produtos. Sem esse parâmetro, a integração mostrará um erro. Este fluxo de trabalho é semelhante ao Tool - Read Products From AppBuilder Table, mas não armazena dados no App Builder.
Main Entry - Generic Single Pricing API Request Handler
Este fluxo de trabalho recebe solicitações de API com informações do produto em formato JSON e realiza análise de preços sem exigir SAP ECC ou App Builder. Você fornece dados completos do produto no corpo da solicitação da API, e o fluxo de trabalho retorna o produto com informações de IA atualizadas na resposta da API. O fluxo de trabalho envia notificações no Slack se o campo flagNotification estiver marcado como verdadeiro.
Main Entry - Slack API Request Handler
Este fluxo de trabalho envia resultados de IA e um resumo do processamento para um canal do Slack quando o campo flagNotification de um produto na solicitação da API está marcado como verdadeiro. Você pode personalizar este fluxo de trabalho para outros canais de comunicação criando um novo conector e operação.
Fluxos de trabalho compartilhados
Os seguintes fluxos de trabalho são utilizados tanto por abordagens do App Builder quanto por abordagens não relacionadas ao App Builder. Esses fluxos de trabalho são executados automaticamente como parte de outros fluxos de trabalho e não são destinados à execução direta.
Ferramenta - Configuração de Prompt de Construção
Este fluxo de trabalho cria prompts dinâmicos para análise de preços impulsionada por IA. O fluxo de trabalho busca configurações armazenadas em tabelas do App Builder ao usar o App Builder ou cria prompts a partir de variáveis de projeto quando não está usando o App Builder.
Utilitário - Buscar Produtos no Google Shopping
Este fluxo de trabalho chama a API do Google Shopping para recuperar informações de preços de mercado para produtos. O fluxo de trabalho usa o SKU do produto como filtro de consulta para buscar e recuperar dados de preços de concorrentes do Google Shopping.
Principal - Lógica de Ferramentas do Agente de IA
Este fluxo de trabalho chama o LLM (Azure OpenAI) para realizar análise de preços com base nas informações do produto e dados de mercado.
Acionar os fluxos de trabalho do projeto
Ao usar o App Builder
Se estiver usando uma conexão ERP, execute a operação Obter Materiais SAP no fluxo de trabalho Ferramenta - Obter Produtos ERP com App Builder para carregar materiais nos bancos de dados do App Builder. Alternativamente, você pode fornecer dados de produtos diretamente via API sem uma conexão ERP.
Para executar uma operação, passe o mouse sobre o nome da operação e selecione a opção Executar. Execute as operações novamente no futuro quando seus dados forem atualizados.
Dica
Você pode agendar essas operações para obter dados atualizados regularmente. Para configurar um agendamento, abra o menu de ações da operação e selecione Configurações > Agendamentos.
Ao não usar o App Builder
Os seguintes fluxos de trabalho são executados via chamadas de API sem exigir o App Builder. Esses fluxos de trabalho realizam análise de preços sem armazenar resultados nos bancos de dados do App Builder:
-
Ferramenta - Obter Produtos ERP: Uma API aciona este fluxo de trabalho para obter materiais do SAP ou de outro sistema, realizar análise de preços e retornar resultados via notificações do Slack. Como este fluxo de trabalho não requer o App Builder, as notificações do Slack são enviadas para mostrar os resultados da análise de preços para todos os produtos.
-
Entrada Principal - Manipulador de Solicitação de Preços Genéricos da API: Uma API aciona este fluxo de trabalho com um corpo de solicitação JSON contendo informações do produto. O fluxo de trabalho processa o produto e envia os resultados da análise de preços por meio de notificações no Slack.
-
Entrada Principal - Manipulador de Solicitação da API do Slack: Este fluxo de trabalho é acionado quando o campo
flagNotificationna solicitação da API está habilitado. O fluxo de trabalho envia os resultados da IA e o resumo do processamento para o Slack.
Solução de Problemas
Se você encontrar problemas, revise os seguintes logs para informações detalhadas de solução de problemas:
Para assistência adicional, entre em contato com o suporte do Jitterbit.