> For the complete documentation index, see [llms.txt](https://docs.chatlayer.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/nlp/languages/change-language-within-the-conversation.md).

# Alterar idioma durante a conversa

As duas soluções apresentadas abaixo andam de mãos dadas para determinar qual é a língua favorita do usuário para interagir.

{% hint style="info" %}
Um bot que não tem nenhuma informação sobre a língua do usuário usará automaticamente o [idioma primário](https://docs.chatlayer.ai/chatlayer-documentation-pt-br/nlp/languages/pages/98b34870afcb1c9baeee16833e9081e7982b0873#primary-vs.-extra-languages). A língua ativa dentro da conversa pode ser alterada dentro do fluxo.
{% endhint %}

{% hint style="danger" %}
Observe que o bot não consegue identificar a língua com base no que o usuário está dizendo. O que o bot pode fazer em vez disso é usar a informação do canal. No Facebook, por exemplo, o bot usará o valor que recebe da API de usuário do FB. Para o widget web, ele usará a língua do SDK.
{% endhint %}

## Ativar detecção de idioma

Você pode usar  [**Detecção de idioma**](/chatlayer-documentation-pt-br/navegacao/settings/settings.md#language-detection)  para verificar se a língua do usuário é suportada pelo seu bot. Se o seu bot não suporta a língua do usuário, redirecione a detecção de idioma para [um bloco que coleta a língua do usuário](#collect-the-users-preferred-language).

## Coletar preferredLanguage do usuário

{% hint style="warning" %}
A variável que armazena a língua preferida do usuário se chama `idiomaPreferido`. Você pode coletar e alterar essa variável de várias maneiras.
{% endhint %}

### Com botões

Para construir um fluxo com botões que coleta o `idiomaPreferido`:

1. Vá para seu canvas em [**Fluxos**](/chatlayer-documentation-pt-br/navegacao/bot-builder/flows.md).
2. Crie um [**Coletar entrada** ](/chatlayer-documentation-pt-br/buildabot/flow-logic/dialog-state/user-input-bot-dialog.md)bloco.
3. Dentro deste bloco, pergunte ao usuário em que língua ele gostaria de continuar, com botões correspondentes às línguas do seu bot.
4. Para cada botão, defina o `idiomaPreferido` **variável** com **valor** correspondente ao código da língua escolhida.

<figure><img src="/files/21a50712480441259ffccb0fe97a8f76fde44cb0" alt="" width="278"><figcaption></figcaption></figure>

5. Preencha a parte inferior com estas informações:

<figure><img src="/files/1463a9383add990536c8bfd04dbfece16bab2ee7" alt="" width="276"><figcaption></figcaption></figure>

6. Clique **Salvar**.&#x20;

### Com uma intent

{% stepper %}
{% step %}
Vá para o seu [**Entidades**](/chatlayer-documentation-pt-br/navegacao/natural-language-processing-nlp/synonym-entities.md) aba.&#x20;
{% endstep %}

{% step %}
[Crie um **Entidade contextual**](/chatlayer-documentation-pt-br/nlp/natural-language-processing-nlp/detect-information-with-entities/contextual-entities.md#add-contextual-entities) para a intent que irá acionar o fluxo para mudar a língua.

No exemplo abaixo, criamos uma entidade chamada **@language** para identificar as línguas que estão disponíveis no bot e definimos um valor para elas:

* `en` para Inglês
* `pt` para Português
* `es` para Espanhol

<figure><img src="/files/657e46d02ca0d9c59dc3b45c7466bc2e793872f2" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
[Crie um **intenção**](/chatlayer-documentation-pt-br/navegacao/natural-language-processing-nlp/intents.md#add-a-new-intent) que irá acionar o fluxo para mudar a língua.

A intent deste exemplo se chama **mudar idioma** e está usando a entidade **@language**.

<div align="left"><figure><img src="/files/a2b7d2ea946265a4c5bf3bd631ce7bb616f8d9a5" alt=""><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
[**Treinar** seu NLP](/chatlayer-documentation-pt-br/nlp/natural-language-processing-nlp/train-your-nlp.md).
{% endstep %}

{% step %}
Volte para o seu [**Fluxos**](/chatlayer-documentation-pt-br/navegacao/bot-builder/flows.md) e adicione sua **mudar idioma** intent ao canvas.
{% endstep %}

{% step %}
Faça com que a intent de mudar idioma vá para um **bloco de Condição** bloco que chamaremos **Ir para língua.**
{% endstep %}

{% step %}
Neste **bloco de Condição** bloco, construa condições para que sua `chave de idioma` variável vá para o próximo bloco com a nova língua definida como valor para a `idiomaPreferido` variável, como no exemplo abaixo:

<figure><img src="/files/7abfac81bd21fd3e1180f35ba75b98ad84ce0d8d" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}
No final, seu fluxo deverá se parecer com algo assim:

<figure><img src="/files/1a7c44ae59fadf65916a0e1b5fca3a123bbe7e70" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

## Acionar uma língua com o canal Web

No widget web você pode acionar uma língua específica do bot com base na língua da página que o usuário está visualizando. Encontre mais informações sobre isso em [aqui](/chatlayer-documentation-pt-br/channels/all-channels/web/web-v2.md#set-to-a-specific-language)[.](/chatlayer-documentation-pt-br/channels/all-channels/web/web-v2/web-v2-methods-and-options.md#change-the-language)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.chatlayer.ai/chatlayer-documentation-pt-br/nlp/languages/change-language-within-the-conversation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
