Script python permettant de traduire un long texte
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

35 lines
1.4 KiB

import json
from collections import defaultdict
# Chemin vers ton fichier d'entrée et de sortie
input_file = "Paires-de-phrases-en-ukrainien-francais-2026-01-06.tsv" # Remplace par ton chemin
output_file = "paires.json" # Fichier de sortie
# Dictionnaire pour stocker les paires uniques (clé = phrase ukrainienne, valeur = liste de traductions)
unique_pairs = defaultdict(list)
# Lire le fichier d'entrée
with open(input_file, "r", encoding="utf-8") as f:
for line in f:
# Diviser la ligne en colonnes (séparateur = tabulation)
parts = line.strip().split("\t")
if len(parts) >= 3:
uk_text = parts[1] # Texte ukrainien
fr_text = parts[3] # Traduction française
# Ajouter la paire au dictionnaire (évite les doublons)
if fr_text not in unique_pairs[uk_text]:
unique_pairs[uk_text].append(fr_text)
# Écrire le fichier JSONL de sortie
with open(output_file, "w", encoding="utf-8") as f_out:
for uk_text, fr_translations in unique_pairs.items():
# Prendre la première traduction (ou toutes si tu préfères)
for fr_text in fr_translations:
# Créer une entrée JSONL
entry = {
"text": uk_text,
"translation": fr_text
}
f_out.write(json.dumps(entry, ensure_ascii=False) + "\n")
print(f"Fichier JSONL généré : {output_file}")