virusf/nllb-renpy-rory-v2
NLLB-Renpy-Rory-v2
Modèle NLLB-200 fine-tuné pour la traduction de dialogues de jeux Ren’Py (anglais → français), optimisé pour la préservation des balises et la fluidité du texte. 🚀 Utilisation rapide
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
📂 ID ou chemin local du modèle
MODEL_ID = "./nllb-renpy-rory-v2" # ou "virusf/nllb-renpy-rory-v2" sur Hugging Face
🔹 Charger modèle et tokenizer
tokenizer = AutoTokenizer.frompretrained(MODELID, use_fast=False)
model = AutoModelForSeq2SeqLM.frompretrained(MODELID)
🔹 Définir langue source (anglais)
tokenizer.srclang = "engLatn"
🔹 Texte à traduire
text = "So nice seeing the house full like this."
🔹 Encodage
inputs = tokenizer(text, returntensors="pt", truncation=True, maxlength=512)
🔹 Génération
outputs = model.generate( **inputs, maxnewtokens=200, # augmenter à 220-320 pour longues phrases num_beams=3 # mettre 1 pour plus de vitesse )
🔹 Affichage
print(tokenizer.decode(outputs[0], skipspecialtokens=True))
💡 Conseils pratiques
Préserver les tags : passe la ligne telle quelle (ex: "Oh my....(06)...You really sure about that...?") Textes longs (intro/EULA) → augmenter maxnewtokens (220–320) Vitesse max → numbeams=1 (greedy), usefast=True et pip install protobuf 📊 Données & Prétraitement
Données extraites depuis scripts .rpy de jeux Ren’Py Nettoyage et normalisation des balises Division train/val Tokenisation NLLB officielle ⚙️ Entraînement
Base : facebook/nllb-200-distilled-600M Fine-tuning : RTX 4070, batch dynamique 3 epochs, beam search par défaut (num_beams=3) 📜 Licence
CC BY-NC 4.0
