#
Chat Translation
#
Visão geral
A Extensão Chat Translation permite a tradução em tempo real de mensagens de chat entre diferentes idiomas usando vários provedores de tradução. Suporta modos de tradução manual e automática.
#
Uso
Todas as maneiras de traduzir mensagens de chat:
Botão Translate Chat no menu Extensions
- Traduz todo o histórico de chat de uma vez
Botão Translate Input no menu Extensions
- Traduz apenas o texto de entrada atual
- Útil antes de enviar uma mensagem
Ícone Translate Message nas Message Actions barra de ferramentas de qualquer mensagem
- Clique para traduzir apenas essa mensagem
- Clique novamente para reverter para o texto original
Configuração de Auto-mode na gaveta Chat Translation do painel Extensions
- Traduz automaticamente entradas do usuário, respostas da IA, ou ambos
Comando slash /translate
- Use
/translate [target=language_code] textpara traduzir texto
#
Configuração
As opções de configuração estão disponíveis na gaveta Chat Translation do painel Extensions.
#
Provider
- Escolha seu
serviço de tradução preferido - Clique no ícone API Key, se aparecer, para inserir uma chave de API
- Clique no ícone Custom URL, se aparecer, para inserir uma URL de API personalizada
#
Target Language
Selecione o idioma em que você deseja escrever suas mensagens ou ler as respostas da IA.
#
Auto-mode
Configure o comportamento de tradução automática.
- None: Sem tradução automática
- Translate responses: Traduz automaticamente as respostas da IA para o idioma de destino
- Translate inputs: Traduz automaticamente as entradas do usuário para inglês
- Translate both: Traduz tanto entradas do usuário quanto respostas da IA
#
Clear Translations
O botão Clear Translations remove todas as traduções de mensagens no chat atual. As mensagens originais são preservadas.
#
Exemplo de Configuração: Conversando de Chinês para Inglês
Para configurar um fluxo de trabalho onde um usuário falante de chinês pode conversar em chinês com uma IA que opera em inglês:
- Defina Auto-mode como "Translate both"
- Defina Target Language como "Chinese (Simplified)" ou "Chinese (Traditional)"
- Escolha um provedor de tradução com boa detecção automática de idioma (por exemplo, Google ou DeepL)
Esta configuração irá:
- Traduzir a entrada em chinês do usuário para inglês para a IA
- Traduzir as respostas em inglês da IA de volta para chinês para o usuário
Esta configuração depende de detecção automática de idioma para entrada. Para controle mais preciso, atualizações futuras podem incluir seleção explícita de idioma de origem.
#
Provedores de tradução
Baseado em nuvem Local, URL personalizada Requer chave de API
#
Configuração específica do DeepL
- Níveis de formalidade disponíveis para alemão, francês, italiano, espanhol, holandês, japonês e russo
- Configure via
deepl.formalityem config.yaml
#
Comandos Slash
Use o comando /translate para traduções rápidas. Sintaxe: /translate [target=language_code] text. Se o idioma de destino não for fornecido, o valor das configurações da extensão será usado.
#
Uso básico
Traduzir texto para o idioma de destino atual e mostrá-lo em um popup:
/translate Welcome to the Tavern | /echo
Traduzir texto para espanhol e adicioná-lo ao chat:
/translate target=es Hello world | /send
#
Teste, tradução em pipeline, localização
Solicitar ao usuário uma mensagem e um idioma, traduzir a mensagem para esse idioma, depois re-traduzir para o
idioma de destino configurado e mostrar ambas as traduções em um popup. Este exemplo usa os comandos /input e /buttons para coletar entrada do usuário:
/input default="Hello, world!" <span data-i18n="Test Message">Sample text</span> |
/let key=input ||
/buttons labels=["zh-CN", "zh-TW", "es", "hu", "en"] <span data-i18n="UI Language">Language</span> |
/let key=lang ||
/translate target={{var::lang}} {{var::input}} | /let key=tx_target |
/translate | /let key=tx_orig ||
/echo escapeHtml=false cssClass=wider_dialogue_popup
<b data-i18n="Test Message">Test message</b>: {{var::input}} <br/>
<b data-i18n="Output">Output</b> ({{var::lang}}): {{var::tx_target}} <br/>
<b data-i18n="Output">Output</b> (<span data-i18n="ext_translate_target_lang">target language</span>): {{var::tx_orig}} <br/>
Isso é útil para verificar a qualidade de uma tradução para um idioma que você não fala, antes de escrevê-la em algum lugar importante.
Os controles de UI são mostrados no idioma atual, independentemente do idioma de destino configurado.
A detecção de idioma de entrada é relativamente eficaz nos seguintes exemplos:
#
Notas Técnicas
- Codificação UTF-8, caracteres especiais e emojis são suportados
- Lida com mensagens grandes dividindo em pedaços quando necessário
- Preserva formatação e imagens incorporadas em mensagens
- Armazena traduções em cache para evitar chamadas de API redundantes
#
Idioma de entrada da IA
internal_language controla o idioma para o qual as mensagens do usuário são auto-traduzidas antes de serem enviadas à IA. Está fixado como 'en' nas configurações padrão e não pode ser alterado pela UI. Assim, o idioma de destino de tradução para mensagens para a IA é sempre inglês. Testes anteriores mostraram que o desempenho da IA era melhor ao receber mensagens em inglês, mas isso pode mudar à medida que mais LLMs estão sendo treinados em dados de idiomas mais variados. Suponho que se poderia alterar internal_language em settings.json e descobrir.
#
Tratamento de variantes do chinês
A extensão suporta chinês simplificado e tradicional, mas nem todos os provedores de tradução suportam. A UI apresenta estes como 'Chinese (Simplified)' e 'Chinese (Traditional)' respectivamente, com códigos de idioma 'zh-CN' e 'zh-TW'. Eles são mapeados para os seguintes códigos de idioma para provedores de tradução:
- Libre Translate: 'zh-CN' para 'zh' e 'zh-TW' para 'zt'.
- DeepL e DeepLX: ambas as variantes para 'ZH'.
- Bing: 'zh-CN' para 'zh-Hans', 'zh-TW' como está.
- Outros provedores usam 'zh-CN' e 'zh-TW' como fornecidos.
#
Limites de comprimento de texto
Alguns provedores têm limites de caracteres por solicitação:
- Yandex: 5000 caracteres
- DeepLX: 1500 caracteres
- Bing: 1000 caracteres
- Google: 5000 caracteres
Textos mais longos são automaticamente divididos em pedaços para tradução.

