# Multi-Armed Bandit

O elemento **Multi-Armed Bandit** envia uma notificação push para os usuários, assim como o elemento [Push](/pt/product/customer-journey/journey-elements/channels/push/). Em vez de uma única predefinição, você fornece várias variantes de conteúdo. A otimização é executada continuamente com dados ao vivo, sem reiniciar manualmente o teste ou manter uma divisão de tráfego fixa. O Pushwoosh direciona mais tráfego para a variante que é mais aberta.

<Aside type="caution" title="O Multi-Armed Bandit é um recurso experimental">
- **Variantes:** apenas predefinições de push existentes são suportadas. Variantes de conteúdo de e-mail, SMS ou in-app ainda não são suportadas.
- **Métrica de sucesso:** apenas aberturas de push contam como uma vitória no momento. A escolha de um evento personalizado como métrica de sucesso estará disponível em breve.
- **Seleção:** baseada no desempenho geral da variante em todos os usuários, não nas preferências individuais do usuário. O Pushwoosh evita enviar a mesma variante para a mesma pessoa duas vezes seguidas.

O comportamento e as configurações podem mudar à medida que este recurso se desenvolve.
</Aside>

Adicione o elemento **Multi-Armed Bandit** após o evento ou condição que deve acioná-lo e, em seguida, configure o elemento.

<img src="/journey-elements-smart-content-1.webp" alt="Elemento Multi-Armed Bandit adicionado a uma tela de jornada após um gatilho"/>

## Adicionar variantes de conteúdo

<Aside type="tip">
Para usar o Multi-Armed Bandit, primeiro crie duas ou mais predefinições de push em sua conta. [Saiba mais sobre como criar predefinições de push](/pt/product/content/push-presets/). Você precisa de pelo menos duas variantes para salvar o elemento.
</Aside>

1. Clique duas vezes no elemento **Multi-Armed Bandit** para abrir suas configurações.
2. Em **Variantes de conteúdo**, selecione pelo menos duas predefinições de push diferentes.
3. Clique em **Adicionar variante** para incluir mais predefinições. Não há limite superior.

<img src="/journey-elements-smart-content-2.webp" alt="Seção de variantes de conteúdo do Multi-Armed Bandit com duas predefinições de push selecionadas e o botão Adicionar variante"/>

## Escolher a métrica de sucesso

Na seção **Recompensa**, escolha o que conta como uma vitória para uma variante:

- **Push aberto:** uma variante ganha um envio quando o usuário abre esse push.
- **Evento ocorrido:** escolha um evento personalizado como o sinal de sucesso em vez de aberturas. Esta opção estará disponível em breve.

Defina a **Janela de recompensa** para definir quantas horas o Pushwoosh espera após o envio antes de verificar se o push foi aberto. O padrão é 2 horas.

<img src="/journey-elements-smart-content-3.webp" alt="Seção de Recompensa do Multi-Armed Bandit com Push aberto selecionado, Evento ocorrido desativado e campo Janela de recompensa"/>

<Aside type="note">
Se um usuário abrir o push após o fechamento da janela de recompensa, a abertura ainda aparecerá nas estatísticas regulares da sua mensagem. Ela não conta para a otimização do Multi-Armed Bandit. Para o aprendizado, esse envio é tratado como não aberto. Escolha uma janela longa o suficiente para capturar as aberturas que importam. Uma janela mais longa também significa que o Multi-Armed Bandit espera mais tempo antes de poder aprender com cada envio.
</Aside>

## Personalizar variantes e adicionar vouchers

<Aside type="note">
Essas configurações se aplicam a todo o elemento Multi-Armed Bandit, não a cada variante individualmente. Qualquer que seja a predefinição que o Multi-Armed Bandit acabe enviando para um usuário, as mesmas regras de personalização e o mesmo pool de vouchers preenchem seus placeholders. Se apenas algumas de suas predefinições de variantes incluírem um determinado placeholder ou a tag ``{{voucher}}``, as outras variantes simplesmente não o usam — não há como definir mapeamentos de eventos ou pools de vouchers diferentes por variante.
</Aside>

### Personalizar com Conteúdo Dinâmico

Ative **Personalizar mensagem com atributos de evento** para preencher placeholders em suas predefinições de variantes com valores de um evento, em vez de tags de dispositivo. O Multi-Armed Bandit coleta os placeholders usados em todas as suas variantes selecionadas em uma única lista, para que você mapeie cada placeholder uma vez, não importa qual predefinição acabe sendo enviada.
 
 [Saiba mais sobre personalização em jornadas](/pt/product/customer-journey/journey-elements/dynamic-content-and-liquid-templates-in-journeys/).

### Sobrescrever placeholders Liquid

Ative **Sobrescrever placeholders Liquid** e selecione um evento para alimentar seus atributos em tags Liquid em suas predefinições de variantes que correspondem pelo nome. Se você ativar tanto o Conteúdo Dinâmico quanto a personalização Liquid, o Liquid tem prioridade.

### Usar vouchers

Ative **Usar Vouchers** para anexar um código único de um pool de vouchers a qualquer variante que for enviada. Crie suas predefinições de variantes com o placeholder ``{{voucher}}`` com antecedência e, em seguida, selecione o **Pool de Vouchers** de onde os códigos serão retirados. Opcionalmente, use **Atribuir Tag** para salvar o código entregue em uma tag de usuário. 

[Saiba mais sobre vouchers](/pt/product/content/vouchers/).

## Definir o tipo de mensagem

Escolha **Mensagem de marketing** ou **Mensagem transacional**:

* **Mensagem de marketing**: Para campanhas e promoções. Todas as regras e limites se aplicam. Respeita: opt-outs, frequency capping e o período de silêncio. Exclui: os usuários do [grupo de controle global](/pt/product/audience-data-and-segmentation/global-control-group/).
* **Mensagem transacional**: Para mensagens operacionais ou de serviço. Regras e limites não se aplicam. Ignora: opt-outs, frequency capping e o período de silêncio. Enviado para: os usuários do [grupo de controle global](/pt/product/audience-data-and-segmentation/global-control-group/).

<img src="/journey-elements-smart-content-5.webp" alt="Seleção do tipo de mensagem do elemento Multi-Armed Bandit com as opções Mensagem de marketing e Mensagem transacional"/>

[Saiba como o tipo de mensagem afeta a entrega](/pt/product/messaging-channels/marketing-vs-transactional/).

## Configurar as definições de entrega de mensagens

### Definir o frequency capping

<Aside type="note">
As opções de frequency capping estão disponíveis apenas quando **Mensagem de marketing** está selecionada. Quando você escolhe **Mensagem transacional**, o frequency capping não se aplica e essas opções são desativadas.
</Aside>

Use o [**Frequency capping**](/pt/product/messaging-channels/global-frequency-capping/#enable-global-frequency-capping) para limitar a frequência com que os usuários recebem mensagens push, evitando o excesso de mensagens e reduzindo o churn. Nas configurações do elemento Multi-Armed Bandit, escolha uma das seguintes opções:

* **Usar configurações globais de frequency capping**

  Aplica os limites de todo o projeto configurados em suas [configurações globais de frequency capping](/pt/product/messaging-channels/global-frequency-capping/#enable-global-frequency-capping).

  Por exemplo, se o limite global for definido para 3 mensagens em 9 dias, mensagens adicionais que excederem esse limite serão ignoradas.

* **Ignorar o frequency capping global**

  O usuário receberá esta mensagem mesmo que tenha excedido os limites de mensagens do canal. Use esta opção com cautela para evitar o excesso de mensagens.

* **Usar frequency capping personalizado**

  Defina um limite de mensagem personalizado para esta mensagem. Se o usuário exceder esse limite personalizado, a mensagem será ignorada e o usuário prosseguirá para a próxima etapa.
  > **Importante:** O frequency capping personalizado não isola a mensagem do **Frequency capping global**. Todas as mensagens enviadas no mesmo canal, incluindo aquelas de outras jornadas ou campanhas, ainda são contadas para o limite global. Se o usuário já recebeu 3 mensagens push esta semana de outras fontes, esta mensagem ainda pode ser bloqueada, mesmo que o capping personalizado a permitisse.
  [Saiba mais](/pt/product/messaging-channels/global-frequency-capping/#customize-capping-for-specific-messages)

### Definir limites de taxa de envio

A configuração **Taxa de envio** controla a rapidez com que as mensagens são entregues ao seu público. Ajustar a taxa de envio ajuda a gerenciar a velocidade de entrega, evitar a sobrecarga do backend e melhorar a entregabilidade geral.

Escolha uma das seguintes opções:

* **Usar configurações globais de taxa de envio**
  Aplica os limites de taxa de envio configurados nas configurações de entrega de mensagens do seu projeto. Se nenhum limite for definido, todas as mensagens serão enviadas imediatamente. Use esta opção quando desejar que a velocidade de entrega siga as regras padrão do seu projeto. [Saiba mais sobre limites globais de taxa de envio](/pt/product/messaging-channels/global-frequency-capping/#set-send-rate-limits)

![Usar configurações globais de taxa de envio](/send-rate-in-journey-elements-1.webp)

* **Enviar mensagens sem taxa de envio**
  Envia mensagens o mais rápido possível, ignorando quaisquer limites globais de taxa de envio. Use com cautela para evitar sobrecarregar seu backend ou criar picos de entrega.

![Enviar mensagens sem taxa de envio](/send-rate-in-journey-elements-2.webp)

* **Usar taxa de envio personalizada**
  Substitui a taxa de envio global apenas para esta mensagem. Permite que você especifique o número de mensagens enviadas por minuto, dando-lhe controle total sobre a velocidade de entrega. As mensagens serão enviadas na taxa personalizada que você definir no elemento da mensagem.

![Usar taxa de envio personalizada](/send-rate-in-journey-elements-3.webp)

Quando terminar de configurar o elemento Multi-Armed Bandit, clique em **Salvar**.

## Como o Multi-Armed Bandit escolhe uma variante

O Multi-Armed Bandit não alterna entre as variantes de forma uniforme nem executa uma divisão fixa de 50/50 como o [A/B/n split](/pt/product/customer-journey/journey-elements/flow-controls/abn-split/). Em vez disso, ele observa continuamente qual variante é aberta com mais frequência e gradualmente envia essa variante para uma parcela maior de usuários. Ele ainda envia as outras variantes com frequência suficiente para continuar aprendendo com dados reais.

Algumas coisas a saber sobre como ele se comporta:

- Leva algum tempo e volume para que um líder claro surja. No início, as variantes são enviadas de forma quase uniforme.
- O Pushwoosh evita enviar a mesma variante para o mesmo usuário duas vezes seguidas, para que as pessoas não recebam a mesma mensagem repetidamente.
- A seleção é baseada no desempenho geral de cada variante em todos os usuários na jornada, não nas preferências de um usuário individual.

Mesmo depois que uma variante é confirmada como vencedora, o Multi-Armed Bandit continua em execução. Ao contrário de um [A/B/n split](/pt/product/customer-journey/journey-elements/flow-controls/abn-split/), ele não define o vencedor e direciona todo o tráfego para ele. A variante vencedora continua recebendo a maior parte dos envios, enquanto as outras ainda recebem uma parcela menor para que o Pushwoosh possa continuar aprendendo. Se o desempenho mudar ao longo do tempo, o Multi-Armed Bandit se adapta e pode mover o tráfego para um novo líder.


## Cenário de exemplo: Recuperando um carrinho abandonado

Use o Multi-Armed Bandit quando os usuários adicionam itens ao carrinho, mas não finalizam a compra. O exemplo abaixo inicia uma jornada em um evento de **Carrinho abandonado** e testa três variantes de push para trazer os usuários de volta.

1. **Prepare as predefinições de push.** Crie três predefinições de push em sua conta antes de construir a jornada. [Saiba mais sobre como criar predefinições de push](/pt/product/content/push-presets/). 

Para este cenário de carrinho abandonado, você pode criar predefinições como estas:

   - **Lembrete de carrinho:** "Itens estão esperando no seu carrinho"
   - **Urgência do carrinho:** "Seu carrinho expira em 1 hora"
   - **Desconto no carrinho:** "Ganhe 10% de desconto se finalizar a compra agora"

2. **Crie a jornada.** Em **Campanhas → Construtor de Jornada do Cliente**, clique em **Criar Campanha** e escolha **Construir uma Jornada do Zero**. Adicione um elemento de [Entrada baseada em gatilho](/pt/product/customer-journey/journey-elements/entry-elements/trigger-based-entry/) à tela.

3. **Defina o gatilho.** Crie ou ative um evento de **Carrinho abandonado** que é acionado quando um usuário não finaliza a compra dentro de algumas horas. No elemento **Entrada baseada em gatilho**, selecione este evento como o gatilho da jornada. [Saiba mais sobre eventos](/pt/product/audience-data-and-segmentation/events/).

4. **Adicione o elemento Multi-Armed Bandit.** Coloque o elemento **Multi-Armed Bandit** após o gatilho e, em seguida, abra suas configurações.

5. **Adicione as variantes de conteúdo.** Em **Variantes de conteúdo**, selecione as três predefinições que você criou na etapa 1.

6. **Escolha a métrica de sucesso.** Em **Recompensa**, selecione **Push aberto**. Defina a **Janela de recompensa** para 2 horas. Esta janela é longa o suficiente para capturar aberturas de usuários que não verificam o telefone imediatamente, mas curta o suficiente para continuar aprendendo rapidamente.

7. **Conclua a configuração e lance.** Configure o tipo de mensagem e as configurações de entrega, clique em **Salvar** e ative a jornada.

### Após o lançamento

O Multi-Armed Bandit pode se comportar aproximadamente assim. A divisão real do tráfego e o tempo dependem do volume de envio e de como os usuários respondem a cada variante.

Primeiro, o Pushwoosh envia todas as três variantes de forma quase uniforme, pois ainda não tem dados suficientes. À medida que as aberturas chegam, ele começa a direcionar mais tráfego para a variante que é mais aberta. Por exemplo, se "Ganhe 10% de desconto se finalizar a compra agora" consistentemente supera as outras duas, ela pode receber cerca de 60% dos envios, enquanto as outras duas dividem o restante.

O Pushwoosh continua enviando também as variantes de menor desempenho. Isso mantém o aprendizado em andamento e segue a regra de que um usuário que acabou de receber uma variante não receberá essa mesma variante novamente na próxima vez que chegar a esta etapa.

## Analisar os resultados

Depois de salvar o elemento e lançar a jornada, abra o painel de estatísticas do elemento Multi-Armed Bandit para ver o desempenho de suas variantes.

<img src="/journey-elements-smart-content-4.webp" alt="Painel de estatísticas do Multi-Armed Bandit com banner de veredito e métricas de Enviados, Abertos e Tráfego por variante"/>

Um banner no topo mostra o status atual do experimento:

- **Ainda não há dados suficientes:** O Multi-Armed Bandit não coletou envios suficientes para dizer algo significativo.
- **Ainda aprendendo:** há dados, mas nenhuma variante é um líder claro e estatisticamente significativo ainda.
- **Líder significativo:** uma variante está confirmada como superando as outras. Ela é marcada com um selo de **Vencedor**.


Para cada variante, você verá:

- **Enviados:** quantas vezes esta variante foi enviada.
- **Abertos:** a porcentagem de envios que foram abertos.
- **Tráfego:** a porcentagem atual de novos envios indo para esta variante.


## Multi-Armed Bandit vs. A/B/n split

Tanto o **Multi-Armed Bandit** quanto o [**A/B/n split**](/pt/product/customer-journey/journey-elements/flow-controls/abn-split/) otimizam suas mensagens, mas funcionam de maneira diferente. Use a tabela abaixo para decidir qual deles se encaixa no seu caso de uso.

| | **Multi-Armed Bandit** | **A/B/n Split** |
|---|---|---|
| **Mecânica** | Desloca continuamente o tráfego para a variante de melhor desempenho com base em aberturas ao vivo | Divide os usuários em ramificações de porcentagem fixa que você define antecipadamente. As ramificações podem conter fluxos downstream totalmente diferentes |
| **Variantes** | Pelo menos duas predefinições de push necessárias. Sem limite superior de variantes | Até quatro ramificações por teste |
| **Divisão de tráfego** | Começa quase uniforme, depois muda automaticamente à medida que os dados chegam | Porcentagem fixa que você define, permanece fixa até que um vencedor seja escolhido |
| **Duração** | Executa continuamente, sem fim definido | Executa até que a significância estatística seja alcançada ou você o pare manualmente |
| **Vencedor** | Nunca define um vencedor: a variante vencedora recebe mais tráfego, mas as outras ainda recebem um pouco | Define um vencedor após a escolha: as ramificações perdedoras são desativadas e todos os novos usuários são direcionados para o vencedor |
| **Melhor para** | Otimização contínua de conteúdo para uma única etapa de mensagem (apenas predefinições de push, por enquanto) | Testar fluxos ou sequências estruturalmente diferentes quando você deseja uma decisão única e definitiva |