Este guia explica como ajustar as configurações do Discourse para melhor acomodar os idiomas chinês, japonês e coreano (CJK) na pesquisa do site.
Nível de usuário necessário: Administrador
As configurações padrão do Discourse podem não ser ideais para os idiomas CJK (chinês, japonês, coreano). No entanto, o Discourse agora ajusta automaticamente muitas dessas configurações quando a localidade do seu site é definida como um idioma CJK (japonês, chinês simplificado ou chinês tradicional). Este guia explica o que é configurado automaticamente e o que você ainda pode precisar ajustar manualmente.
Padrões automáticos de localidade
Quando a localidade padrão do seu site é definida como ja, zh_CN ou zh_TW, as seguintes configurações são ajustadas automaticamente:
| Configuração | Padrão | Padrão de localidade CJK |
|---|---|---|
min_search_term_length |
3 | 1 (também se aplica a ko) |
min_post_length |
20 | 8 |
min_first_post_length |
20 | 8 |
min_personal_message_post_length |
10 | 3 |
body_min_entropy |
7 | 3 |
min_topic_title_length |
15 | 6 |
title_min_entropy |
10 | 3 |
min_title_similar_length |
10 | 4 |
allow_uppercase_posts |
false | true (ja apenas) |
title_prettify |
true | false |
Se o seu site usa uma dessas localidades, geralmente você não precisa alterar essas configurações — elas já estarão otimizadas para CJK.
Ajustes manuais
Localidade coreana
A localidade coreana (ko) recebe apenas um padrão de localidade automático para min_search_term_length. Se o seu site usa a localidade coreana, você deve ajustar manualmente as outras configurações listadas acima para valores semelhantes.
Sites com localidade multilíngue ou não CJK com conteúdo CJK
Se a localidade padrão do seu site não for um idioma CJK, mas você tiver usuários que falam CJK significativos, você precisará ajustar essas configurações manualmente:
- Defina
min_search_term_lengthcomo 1 ou 2 — palavras-chave CJK podem ter apenas um ou dois caracteres - Defina
min_post_lengthpara aproximadamente 8 - Defina
body_min_entropypara cerca de 3 — a reduplicação é comum e significativa nos idiomas CJK, portanto, definir este valor muito alto pode causar erros de “postagem não significativa” - Defina
min_topic_title_lengthpara aproximadamente 6 - Defina
title_min_entropypara cerca de 3 - Defina
min_title_similar_lengthpara aproximadamente 4 - Habilite
allow_uppercase_posts— o Discourse pode não reconhecer caracteres CJK ao analisar títulos de tópicos para caixa, causando erros - Desabilite
title_prettify— as regras de embelezamento de título são projetadas para scripts latinos e podem não funcionar bem com texto CJK
Tokenização de pesquisa
Para melhorar a precisão da pesquisa, o Discourse oferece configurações opcionais de tokenização específicas para CJK:
search_tokenize_chinese— habilita a segmentação de texto chinês para melhores resultados de pesquisasearch_tokenize_japanese— habilita a segmentação de texto japonês para melhores resultados de pesquisa
Essas estão desabilitadas por padrão e podem ser ativadas nas configurações de pesquisa do administrador.
Solução de problemas de pesquisa
Se você encontrar problemas com a funcionalidade de pesquisa após fazer essas alterações, talvez seja necessário reindexar seu banco de dados. Veja como fazer isso:
- Entre no diretório de instalação do Docker do Discourse.
- Execute o seguinte comando para acessar o contêiner do aplicativo:
./launcher enter app - Uma vez dentro do contêiner, execute o comando de reindexação:
rake search:reindex
Após a reindexação, você deverá conseguir pesquisar conteúdo de forma eficaz.