Traduza django.po, depois verifique cada linha
makemessages escreve locale/en/LC_MESSAGES/django.po com variáveis %(name)s e entradas plurais. Traduza %(name)s ou remova, e o template gera erro ou não mostra nada. KAERIS preenche cada msgstr e mantém as variáveis como o Django espera.
KAERIS traduziu esta página e verificou cada linha traduzindo-a de volta. Um falante nativo ainda não revisou. Original em inglês
%(name)s permanece exatamente onde estava
Cada msgid recebe seu msgstr; o cabeçalho recebe o Language e a regra de plural do destino.
msgid "Welcome back, %(name)s!"
msgstr ""
msgid "Save changes"
msgstr ""
msgid "Welcome back, %(name)s!" msgstr "Willkommen zurück, %(name)s!" msgid "Save changes" msgstr "Änderungen speichern"
O que o KAERIS faz com isso
Formas plurais por idioma
Entradas
ngettextrecebem tantas formasmsgstrquanto o destino precisa: três para russo, uma para chinês.Variáveis verificadas sem IA
Após a tradução, uma verificação simples conta cada variável e tag comparando com o original. Uma linha que perdeu alguma é marcada e exibida no topo.
Cada linha traduzida de volta
Um modelo diferente, GPT-4o mini, traduz cada linha de volta para seu idioma, e o DeepSeek V3.2 em hosts dos EUA (DeepInfra, DigitalOcean, Google) avalia se o significado mudou. Você lê o que cada linha diz agora.
Perguntas
O que eu executo depois?
Coloque o arquivo em locale/<lang>/LC_MESSAGES/ e execute compilemessages como de costume.
msgctxt é mantido?
Sim. Entradas com o mesmo texto e contexto diferente permanecem separadas.
É gratuito?
Sim, sem conta: 10.000 caracteres por arquivo e até 8 idiomas por execução. Uma chave API gratuita eleva o limite para 50.000 caracteres. A licença vitalícia custa $79 uma vez, usando sua própria chave OpenRouter; planos mensais começam em $19. Preços
Posso rodar pelo terminal ou em CI?
Sim. pip install kaeris, depois kaeris translate com seu arquivo e --langs de,ja. Uma GitHub Action abre um pull request quando novas chaves chegam. Documentação