Skip to content

LiamSDK/Tradutor-VN

Repository files navigation

Translate-CLI (Ren'Py + Ollama) ** Codígo feito por IA **

Ferramenta de linha de comando para traduzir Visual Novels baseadas em Ren'Py do Inglês para Português (Brasil) usando LLMs locais via Ollama.

O projeto possui dois modos de operação:

  • Quality Mode: Focado em consistência narrativa (usa contexto das frases anteriores).
  • Speed Mode: Focado em velocidade (usa processamento paralelo/multithreading).

Pré-requisitos

  1. Python 3.10+ instalado.
  2. Ollama instalado e rodando (Baixar aqui).
  3. Modelo Llama 3 (ou outro de sua preferência) baixado no Ollama.

Instalação Passo a Passo

1. Preparar o Ollama

Abra seu terminal e baixe o modelo que será utilizado, sendo de sua preferencia e se sua configuração. O padrão configurado neste projeto é o llama3:8b:

ollama pull llama3:8b

Certifique-se de manter o Ollama rodando em segundo plano digitando ollama serve se necessário.

2. Configurar o Ambiente Python (Venv)

Na pasta do projeto, crie um ambiente virtual para isolar as dependências e evitar conflitos:

Windows (PowerShell):

python -m venv venv
.\venv\Scripts\activate

Linux / Mac (Bash):

python3 -m venv venv
source venv/bin/activate

3. Instalar Dependências

Com a venv ativada, instale as bibliotecas necessárias:

pip install requests rich
  • requests: Para comunicação com a API do Ollama.
  • rich: Para a interface visual e barras de progresso no terminal.

Configuração

O projeto utiliza dois arquivos de configuração JSON separados. Edite-os conforme a necessidade do seu jogo:

  • config-q.json: Configuração para o modo Quality.
  • config-s.json: Configuração para o modo Speed.

Principais Campos para Editar:

1. Pastas de Arquivos

Defina onde estão os arquivos .rpy originais e para onde vão os traduzidos.

"paths": {
  "input_dir": "./input",  // Pasta onde estão os arquivos .rpy originais
  "output_dir": "./output"      // Pasta onde os arquivos traduzidos serão salvos
}

2. Glossário (Palavras Excluídas)

Adicione nomes de personagens, lugares ou termos técnicos que não devem ser traduzidos.

"glossary": [
  "Lyre",
  "Eldoria",
  "Status Screen",
  "High School"
]

3. Tags de Personagens

Adicione as siglas dos personagens usadas no script do Ren'Py (ex: l "Fala do personagem").

"character_tags": [
  "q", "q1", "l", "le", "mc", "e"
]

4. System Prompt (Personalidade da IA)

No campo "system_prompt_template", você define como a IA deve se comportar. Importante: Mantenha as chaves {context} e {glossary} no texto, pois o script as substitui automaticamente pelas informações reais.

Como Utilizar

Certifique-se de que seus arquivos .rpy (gerados pelo Ren'Py na opção Generate Translations) estejam na pasta definida em input_dir (padrão: ./portuguese).

Modo 1: Qualidade (Recomendado para Diálogos)

Este modo lê o arquivo sequencialmente e envia as frases anteriores para a IA. Isso ajuda a manter a coerência de gênero e tom na conversa.

Execute no terminal:

python translate-quality.py

Modo 2: Velocidade (Recomendado para Menus/Itens)

Este modo dispara múltiplas traduções ao mesmo tempo (Multithreading). Não possui memória de contexto, mas é muito mais rápido.

Execute no terminal:

python translate-speed.py

Solução de Problemas Comuns

  • Barra de progresso travada em 0% ou "Aguardando...":

  • Verifique se o ollama está rodando.

  • Verifique se o nome do modelo no arquivo .json (ex: "model": "llama3:8b") é exatamente igual ao que aparece ao digitar ollama list.

  • Erro ModuleNotFoundError:

  • Você provavelmente esqueceu de ativar a venv ou não instalou as dependências (pip install requests rich).

  • Tradução "alucinando" ou cortada:

  • Tente reduzir a temperature no JSON para 0.1.

  • Aumente o num_ctx para 4096 no modo Quality se as frases forem muito longas.

About

Tradutor de Visual Novels usando IA (Pode haver falhas)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages