Passar para o conteúdo principal

Executar Simulações para Procedimentos Fin

Aprenda a usar Simulações para validar Procedimentos Fin, ganhar confiança e detectar problemas antes que afetem os clientes.

Escrito por Dawn

As Simulações permitem validar Procedimentos Fin, aumentar a confiança em sua automação e detectar problemas antes que afetem seus clientes. Ao modelar conversas completas, as simulações ajudam sua equipe a lidar com cenários de alto volume ou complexos, como cancelamentos e reembolsos, com certeza.

Projetadas para substituir verificações manuais demoradas, as simulações ajudam a identificar problemas ou mudanças graduais no comportamento de Fin à medida que sua lógica de negócios evolui.


Acessando simulações

As simulações estão localizadas no painel de testes de um Procedimento. Para acessá-las:

  1. Abra o Procedimento que deseja testar.

  2. Clique em Test no canto superior direito da tela.

  3. Selecione a guia Simulations no painel direito

Nota: Acessar Simulations requer as seguintes permissões:

  • "Can manage workspace data",

  • "Can access lead and user profile pages" and

  • "Can access lists of people, companies, and accounts".

Se o botão Simulations não estiver respondendo, verifique com o administrador do workspace se essas permissões estão habilitadas para você em Settings > Workspace > Teammates.

As simulações ignoram o reconhecimento de intenção. Ao contrário do Preview ou de conversas ao vivo, as simulações não verificam suas instruções 'When to use this Procedure', elas assumem que o Procedimento já foi acionado e o executam diretamente. Isso torna as simulações ideais para testar a lógica de execução isoladamente.

Important:

  • Preview mostra a experiência completa voltada ao cliente; usá-lo enquanto seu procedimento estiver ativo pode expor mensagens a clientes reais.

  • Simulations executam o procedimento em segundo plano sem saída voltada ao cliente, tornando-as a maneira mais segura de validar a lógica antes de publicar. Use Preview para verificações rápidas; use Simulations antes de cada publicação.


Criando uma simulação

Você pode criar uma simulação de duas maneiras: usando sugestões geradas por IA para um início rápido, ou definindo manualmente o cenário para controle total.

  • Simulações geradas por IA: Use-as para cobrir rapidamente cenários comuns ou esperados de clientes com base em suas instruções. Fin AI gera testes iniciais "prontos para uso" para economizar seu tempo.

  • Simulações manuais: Use-as quando precisar de controle preciso sobre dados, casos de borda específicos ou ramificações particulares em sua lógica.

Simulações geradas por IA

Com base em suas instruções, Fin AI gerará testes iniciais para ajudá-lo a criar rapidamente simulações "prontas para uso".

  1. Abra a guia Simulations no painel direito do seu Procedimento.

  2. Em Suggested for these instructions, revise a lista de cenários propostos (por exemplo, "Full cancellation request").

  3. Clique no ícone de Play ao lado de uma sugestão para executá-la instantaneamente.

  4. Depois que uma simulação for criada ou aceita nas sugestões, ela aparecerá em sua lista. Você pode então clicar em Run all para executar todas as simulações salvas de uma vez.

Simulações criadas manualmente

Você também pode criar uma simulação do zero para testar casos de borda específicos com base nas instruções do Procedimento.

  1. Na guia Simulations, clique em + New.

  2. Simulation name: Dê um título claro à sua simulação.

  3. Simulate as: Escolha um usuário ou marca específica para testar a personalização. Você pode selecionar a partir de uma lista suspensa de users reais em seu workspace.

  4. Customer's opening message: Insira a primeira mensagem enviada pelo cliente (por exemplo, "I need help with my order"). Você também pode anexar uma imagem, como uma captura de tela de um erro, para testar como Fin lida com contexto visual.

  5. Additional details: Forneça orientações sobre a situação do cliente ou ações específicas que ele tenha tomado.

Selecione um canal

As simulações permitem selecionar o canal que Fin usará para esta simulação, para que você possa testar como Fin se comporta. Use o menu de canal para alternar entre Messenger e Email antes de executar sua simulação.

Note: Fin se comporta de maneira diferente dependendo do canal. No Email, Fin agrega várias informações em uma única resposta em vez de enviar várias mensagens. Guidance e Content targeting também podem ser configurados por canal - por exemplo, respostas por Email podem usar um tom mais formal ou incluir uma introdução específica.

Defina os dados disponíveis

A seção Customer data available to Fin permite definir os dados aos quais Fin tem acesso durante o teste. Isso garante que você esteja testando contra valores de dados precisos em vez de depender de descrições vagas.

  • Simulation time: Use isso para definir "quando" o cenário está ocorrendo. Definir uma data e hora específicas permite testar lógica sensível ao tempo, como verificar se um cliente está dentro de uma janela de reembolso de 30 dias.

  • Attributes and Data Connectors: Esta seção pré-popula com os atributos referenciados em seu Procedimento. Atualize esses valores (por exemplo, defina People.Plan para "Pro") para testar diferentes resultados de ramificação.

Note: Para garantir que sua simulação seja executada com precisão, coloque os dados com base em quando Fin deve "saber" os dados:

  • Use Attributes: Se Fin supostamente já souber a informação no início da conversa (por exemplo, o Plan atual do cliente ou a data de inscrição).

  • Use Additional details: Se a informação deve ser fornecida pelo cliente durante a conversa (por exemplo, o cliente fornece seu "Order ID" em uma resposta subsequente). Isso permite testar se Fin captura e armazena corretamente esses dados em um atributo.

Note:

  • Os Data Connectors não usam dados de users reais nas simulações. Em vez de chamar seu sistema externo, Fin usa os valores de teste que você define na seção Customer data available to Fin. Certifique-se de ter preenchido os campos do seu Data Connector com os valores que deseja que Fin use durante o teste — caso contrário, o conector retornará resultados vazios.

  • A seção Customer data available to Fin mostra e retém apenas atributos explicitamente referenciados nas instruções do seu Procedimento ou em um bloco de código. Se você adicionar manualmente um atributo usando o botão + Add attribute mas esse atributo não for referenciado em nenhum lugar do Procedimento, o sistema não o salvará — ele desaparece após salvar porque não tem efeito na simulação. Para adicionar um valor personalizado que persista, certifique-se de que o atributo seja usado primeiro no próprio Procedimento.

Avaliar o comportamento de Fin

Defina os critérios que devem ser verdadeiros para o teste passar. Clique em + Add criteria e selecione:

  • Fin reply: Especifique o que Fin deve (ou não deve) dizer durante a conversa.

  • Attributes: Verifique se um atributo foi definido, não foi definido, era igual a, ou não era igual a um valor específico.

  • Data connector: Verifique se um conector foi acionado, não foi acionado, ou foi acionado exatamente X vezes.

  • Instruction outcome: Verifique se a conversa atingiu uma conclusão específica, como finalizar, ser transferida para um colega, ou outros resultados como mudar para um Procedimento diferente.

Depois de configurado, clique em Save.

Note: Ao clicar em Save, Fin usa AI para revisar seu formulário de simulação. Se as instruções estiverem confusas ou os critérios de sucesso inconsistentes, você verá recomendações sobre como melhorar o teste para obter resultados mais precisos.


Melhores práticas para cobertura de simulação

Para aproveitar ao máximo as simulações, estruture sua suíte de testes em torno destes princípios:

  • Teste um ramo por simulação. Se seu Procedimento tiver Condições ou subprocedimentos com múltiplos caminhos, crie uma simulação separada para cada ramo. Isso cria uma rede de segurança de regressão — se uma edição futura quebrar um caminho específico, você o detectará imediatamente.

  • Cubra tanto os caminhos de sucesso quanto os de falha para Data Connectors. Execute uma simulação onde seu conector retorna dados válidos, e outra onde não retorna nada ou falha. Isso verifica se sua lógica de fallback (por exemplo, um passo @Condition lidando com uma resposta vazia) funciona corretamente.

  • Execute todas as simulações antes de publicar alterações. Após editar um Procedimento, clique em Run all para reexecutar sua suíte completa antes de entrar em produção. Qualquer simulação que falhar recentemente sinaliza uma regressão introduzida pela sua edição.

  • Use nomes descritivos para as simulações. Nomeie cada simulação de acordo com o cenário que representa (por exemplo, "Reembolso completo — dentro de 30 dias" ou "Cancelamento — pedido não encontrado"). Isso facilita identificar qual teste cobre qual caminho ao revisar os resultados.

Estratégia de testes: caminho feliz, caminho de risco e casos de borda

Uma suíte de simulação equilibrada cobre três tipos de cenários. Juntos, eles dão confiança de que seu Procedimento funciona corretamente em condições normais, lida com falhas de forma adequada e não quebra quando os clientes se comportam de maneira inesperada.

  • Happy path

    O happy path representa o fluxo ideal e ininterrupto — um cliente que fornece exatamente as informações corretas e atende a todas as condições para que Fin complete o Procedimento com sucesso. Comece sempre por aqui. Se o happy path falhar, depurar caminhos mais complexos fica muito mais difícil.

    Exemplo: Um cliente solicita um reembolso dentro da janela de 30 dias, possui um ID de pedido válido, e o Data Connector retorna os detalhes do pedido. Fin processa o reembolso e o confirma em uma única passagem.

  • Risk path

    Os caminhos de risco testam os cenários mais propensos a dar errado em produção — tipicamente onde dados externos estão ausentes, condições não são atendidas, ou um ramo de fallback deve ser acionado. Esses são os testes que impedem que seus clientes vejam respostas incorretas ou incompletas.

    Exemplos: O Data Connector não retorna nenhum pedido (teste que Fin pede ao cliente pelo ID do pedido). O cliente está fora da janela de reembolso (teste que Fin comunica a política correta e oferece a transferência adequada). Um atributo está vazio quando um passo Condition o avalia (teste que o caminho de fallback do Fin é acionado corretamente).

  • Edge cases

    Os casos de borda cobrem entradas incomuns ou de condição-limite que são tecnicamente válidas, mas incomuns. Esses testes são especialmente importantes para Procedimentos com lógica sensível ao tempo, limites numéricos ou entradas de texto livre dos clientes.

    Exemplos: Um cliente solicita um reembolso exatamente no dia 30 (o limite da janela). Um cliente envia uma mensagem inicial ambígua que pode corresponder a múltiplas intenções. Um cliente fornece seu ID de pedido em um formato inesperado ou inclui texto extra junto com ele.

Dica: Use nomes descritivos para as simulações para indicar a qual categoria cada teste pertence — por exemplo, "Reembolso — happy path", "Reembolso — nenhum pedido encontrado (risk)", ou "Reembolso — dia limite 30 (edge)". Isso facilita visualizar lacunas na sua cobertura rapidamente.


Execução e revisão de resultados

Depois de executar um teste, ele aparece no painel Tests no lado direito com um indicador de status:

  • Running: O teste está sendo executado ativamente.

  • Passed: O teste foi executado e atendeu com sucesso a todos os critérios de sucesso definidos.

  • Failed: O teste foi executado, mas não atendeu aos critérios de sucesso definidos.

  • Queued: O teste foi iniciado, mas está aguardando a simulação anterior terminar antes de executar.

Para investigar um resultado, clique em See conversation. Isso abre a transcrição completa do diálogo entre o cliente simulado e Fin, facilitando ver exatamente como o fluxo ocorreu e por que um teste passou ou falhou.


Depuração de uma Simulation com falha

Quando uma simulação é marcada como Failed, a transcrição disponível via See conversation contém tudo que você precisa para identificar a causa raiz. Veja como lê-la efetivamente:

  • Fin's thoughts

    Em cada passo da conversa, expanda o raciocínio do Fin para ver como ele interpretou a mensagem do cliente, qual passo do Procedimento estava executando e qual decisão tomou. Se Fin seguiu um caminho inesperado, Fin's thoughts geralmente mostrará exatamente onde sua interpretação divergiu da sua intenção. Procure passos onde a interpretação de um atributo ou condição pelo Fin não coincide com o que você esperava.

  • Conversation events

    Eventos de conversa aparecem inline na transcrição e mostram ações de baixo nível, como atualizações de atributos, chamadas de Data Connector e gatilhos de handoff. Use-os para verificar se os conectores corretos foram acionados no momento certo e se os atributos foram definidos com os valores esperados antes de cada passo de ramificação.

  • Pinpointing the failure

    Faça referência cruzada do que você vê em Fin's thoughts e nos conversation events com seus critérios de sucesso definidos. Um padrão comum é um passo Condition avaliando para o ramo errado — tipicamente porque um atributo estava vazio ou tinha um valor inesperado. Verifique sua configuração Customer data available to Fin para garantir que todos os atributos necessários foram populados antes da simulação rodar.

Tip: Depois de identificar a causa, ajuste seu Procedimento ou a configuração da simulação e clique em Run na mesma simulação para re-testar imediatamente. Você não precisa criar uma nova simulação — a existente mantém sua configuração.


Limites de uso de simulação

Há um limite para o número de simulações que você pode executar a cada mês. Esse limite é aplicado no nível do workspace e reinicia no primeiro dia de cada mês do calendário.

Cada workspace recebe uma cota mensal de execuções de Simulation. A cota é baseada no segmento de volume de conversas do seu workspace, com clientes maiores recebendo cotas maiores.

A cota de Simulation é baseada no volume de conversas do seu workspace no Intercom.

  • Atribuímos seu workspace a um segmento usando o número de conversas no último mês do calendário.

  • Seu segmento é reavaliado mensalmente e sua cota refletirá o volume de conversas do seu mês mais recente.

  • Se seu volume de conversas aumentar ou diminuir, sua cota de Simulation pode mudar no próximo ciclo mensal.

Conversation Volume Segment

Simulation Limit per month

Under 1K

250

1K–15K

1.000

15K–100K

1.750

100K–1M

5.000

1M+

12.500

Monitoramento do seu uso

Para ajudar você a gerenciar seus testes, Fin fornece indicadores visuais na aba Simulations:

Aviso de uso

Quando seu workspace atingir 80% do limite mensal, um banner amarelo de aviso aparecerá. Ele mostra seu uso atual (por exemplo, "85/100") e lembra quando o limite será reiniciado.

Limite atingido

Quando você atingir 100% do seu limite mensal, uma mensagem de erro vermelha aparecerá. Você não poderá executar mais simulações até o início do mês seguinte.

Observação: Se você atingir o limite, ainda poderá revisar resultados e transcrições de simulações anteriores clicando em See conversation, mas os botões Run e Run all serão desativados.


Perguntas frequentes

As simulações interagem com minhas APIs ao vivo ou dados externos?

Não. Ao contrário da ferramenta Preview, as simulações não acessam APIs ou sistemas externos reais (como Shopify ou Stripe). Não é possível ler ou alterar dados em uma API externa durante uma simulação. Isso garante que você possa testar a lógica com segurança sem impactar dados do mundo real.

Por que usar Simulations em vez de testes manuais?

As simulações permitem validar Procedures em escala e garantir que Fin funcione de forma confiável em cenários complexos e de alto risco — ao contrário dos testes manuais, que são mais adequados para verificações rápidas ou revisões de configuração. Executar Simulations antes de cada lançamento ajuda a detectar comportamentos inesperados cedo.

O que acontece se uma Simulation falhar?

Uma Simulation que falha pode ser revisada na íntegra — abra a conversa simulada para entender por que Fin não se comportou como esperado, ajuste sua Procedure e execute a Simulation novamente sem impactar clientes.

Por que minha simulation está marcada como "Failed" mesmo que Fin tenha resolvido o problema?

Uma Simulation marcada como "Failed" apesar de Fin resolver o problema geralmente significa que seus Success Criteria são muito rígidos. Por exemplo, se você exigir que Fin "Ask for an Order ID", mas Fin for capaz de encontrar o ID automaticamente, o teste falhará porque Fin pulou a pergunta. Atualize seus critérios para focar no resultado final (por exemplo, "Procedure finished") em vez de exigir etapas intermediárias específicas.

Fin para no meio da simulação. Por que está travando?

Fin frequentemente para se atingir um "beco sem saída" em suas instruções, como verificar uma variável que está vazia (por exemplo, People.signed_up). Se você não disse ao Fin o que fazer quando os dados estiverem ausentes, ele parará. Garanta que suas instruções tenham um plano de "fallback", por exemplo: "Verifique se a variável tem um valor. Se estiver vazia, peça ao cliente a data."

Onde devo inserir dados de teste como "Sign up dates" ou "Order history"?

Dados de teste como datas de inscrição ou histórico de pedidos devem ser inseridos na seção Customer data available to Fin da configuração de simulação — não na mensagem inicial do Customer ou nos campos Additional details, pois o Fin pode não detectá-los. Insira valores exatos (por exemplo, 2024-06-01) nos Attributes ou Variables específicos que você está testando.

Minha ferramenta funciona na vida real, mas falha na simulação. Por quê?

As simulações não buscam dados reais de sistemas externos, então seu Data Connector não retornará resultados ao vivo como em uma conversa real. Se seu conector funciona em conversas ao vivo mas falha na simulação, provavelmente é porque os valores de retorno esperados não foram definidos na seção Customer data available to Fin. Adicione os dados que seu conector normalmente retornaria como valores de teste lá e execute a simulação novamente.

As Simulations são cobradas separadamente dos Procedures?

As Simulations estão incluídas nos Procedures e não são cobradas como linha separada. Você não terá cobranças adicionais por executar simulações.

Por que devo testar meu Procedure por Email?

Testar seu Procedure por Email valida o comportamento específico do canal que difere do Messenger. No Email, o Fin agrega várias informações em um único e-mail em vez de enviar várias mensagens. Guidance e Content também podem ser direcionados a canais específicos — por exemplo, respostas por Email podem ser configuradas para usar um tom mais formal ou incluir uma introdução específica. Simular conversas por Email permite validar esse comportamento e implantar no Email com confiança.

Por que existe um limite nas execuções de Simulation?

Cada execução de simulação requer recursos para gerar previsões de IA precisas. Fornecemos uma cota mensal para garantir que você possa testar seus Procedures livremente para casos de uso padrão enquanto evitamos que uso extremo gere custos descontrolados.

Posso simular um sub-procedure independentemente?

Não. Sub-procedures não têm um painel de simulação próprio e não podem ser executados isoladamente. Para testar um sub-procedure, execute uma simulação no Procedure pai e configure o cenário para que o caminho de execução alcance o sub-procedure — definindo a mensagem do customer, atributos e detalhes adicionais para acionar o ramo específico que o chama.

Se você tiver vários sub-procedures dentro do mesmo pai, crie uma simulação separada para cada um, cobrindo o cenário que leva à chamada daquele sub-procedure.

Meu Data Connector retorna resultados vazios na simulação. O que devo fazer?

Resultados vazios do Data Connector em uma simulação geralmente são causados por dados de teste ausentes. As simulações não buscam dados ao vivo de sistemas externos — você precisa definir os valores que seu Data Connector deve retornar na seção Customer data available to Fin da configuração da simulação. Verifique se você populou os campos relevantes do Data Connector com os valores de teste que deseja que o Fin use.

Se você está intencionalmente testando o caminho 'connector returns nothing', esse é o comportamento esperado — e exatamente o que você deve testar. Certifique-se de que seu Procedure tenha um passo @Condition de fallback que trate respostas vazias do conector:

Se o conector retorna vazio mesmo para um usuário com dados reais, verifique se seu contato de teste tem um external_id válido que corresponde ao identificador do cliente no seu sistema externo.

Quantas simulações posso executar por mês?

Sua cota mensal de execuções de Simulation depende do volume de conversas do seu workspace no Intercom durante o mês calendário anterior. O limite aplica-se ao nível do workspace e reinicia no primeiro dia de cada mês:

Segmento de Volume de Conversas

Limite de Simulations por mês

Under 1K

250

1K–15K

1.000

15K–100K

1.750

100K–1M

5.000

1M+

12.500

Quando meu limite de simulação é renovado?

Sua cota de Simulação é renovada no primeiro dia de cada mês do calendário, independentemente de quando você entrou ou de quantas simulações usou. Execuções não utilizadas não são acumuladas — sua cota começa do zero a cada mês.

Posso aumentar meu limite de simulação?

Os limites de simulação são definidos automaticamente com base no volume de conversas do seu workspace e reavaliados no início de cada mês. Se o volume de conversas crescer, sua cota aumentará no próximo ciclo mensal — não há opção para comprar execuções adicionais nem aumentar seu limite fora desse sistema de níveis. Se você atingir seu limite mensal antes da data de renovação, ainda poderá revisar resultados e transcrições de simulações anteriores, mas os botões Run e Run all serão desativados até a renovação da sua cota.

Respondeu à sua pergunta?