|
|
|
@@ -20,10 +20,8 @@ TARGET_LANGUAGE = "français" # Langue cible (ex: "français", "anglais", "alle |
|
|
|
# Récupère la date et l'heure actuelles au format AAAMMJJ-HHMM |
|
|
|
current_datetime = datetime.now().strftime("%Y%m%d-%H%M") |
|
|
|
# Ajoute la date et la langue cible au nom du fichier PDF de sortie |
|
|
|
OUTPUT_PDF_PATH = PDF_PATH.replace( |
|
|
|
".pdf", |
|
|
|
f" ({TARGET_LANGUAGE.upper()[:2]})_{current_datetime}.pdf" |
|
|
|
) |
|
|
|
# OUTPUT_PDF_PATH = PDF_PATH.replace(".pdf",f" ({TARGET_LANGUAGE.upper()[:2]})_{current_datetime}.pdf") |
|
|
|
OUTPUT_PDF_PATH = PDF_PATH.replace(".pdf",f" ({TARGET_LANGUAGE.upper()[:2]})_V2.pdf") |
|
|
|
|
|
|
|
def extract_parameters_from_template(template_str): |
|
|
|
"""Extrait les paramètres du modèle à partir du template.""" |
|
|
|
@@ -313,15 +311,27 @@ def main(): |
|
|
|
results = {} |
|
|
|
|
|
|
|
# Traitement des paragraphes complets |
|
|
|
for i, paragraph_text in enumerate(paragraphs, start=1): |
|
|
|
print(f"{15 * '-'} Traduction du paragraphe {i}/{len(paragraphs)}...") |
|
|
|
# for i, paragraph_text in enumerate(paragraphs, start=1): |
|
|
|
nb_paragraph_cumul = 7 |
|
|
|
for i in range(0, len(paragraphs), nb_paragraph_cumul): |
|
|
|
batch = paragraphs[i:i + nb_paragraph_cumul] |
|
|
|
paragraph_cumul = "\n".join(batch) # Concatène les paragraphes avec un saut de ligne |
|
|
|
|
|
|
|
start_idx = i + 1 |
|
|
|
end_idx = min(i + nb_paragraph_cumul, len(paragraphs)) |
|
|
|
print(f"{15 * '-'} Traduction des paragraphes {start_idx} à {end_idx} / {len(paragraphs)}...") |
|
|
|
|
|
|
|
try: |
|
|
|
result = send_to_ollama(paragraph_text, target_lang=TARGET_LANGUAGE) |
|
|
|
print(f"{result}.") |
|
|
|
results[i] = result |
|
|
|
result = send_to_ollama(paragraph_cumul, target_lang=TARGET_LANGUAGE) |
|
|
|
print(f"{result}") |
|
|
|
|
|
|
|
# Stocke le résultat pour chaque paragraphe du batch |
|
|
|
results[i] = result # Ou `results[idx] = f"Résultat pour {idx}"` si tu veux les séparer |
|
|
|
except Exception as e: |
|
|
|
print(f"Erreur lors du traitement du paragraphe {i} : {e}") |
|
|
|
results[i] = f"Erreur lors du traitement du paragraphe {i} : {e}" |
|
|
|
print(f"Erreur lors du traitement des paragraphes {start_idx} à {end_idx} : {e}") |
|
|
|
results[i] = f"Erreur lors du traitement des paragraphes {start_idx} à {end_idx} : {e}" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Création du PDF avec tous les résultats |
|
|
|
create_pdf_from_results(results, OUTPUT_PDF_PATH) |