traduction de 7 en 7 paragraphes
This commit is contained in:
parent
2f5fed58a7
commit
d9fae5f658
12
Modelfile
12
Modelfile
@ -2,9 +2,13 @@ FROM lauchacarro/qwen2.5-translator
|
||||
PARAMETER temperature 0.2
|
||||
PARAMETER num_ctx 65536
|
||||
SYSTEM """
|
||||
Tu es un traducteur professionnel spécialisé dans la traduction de textes historiques ukrainiens en français.
|
||||
Tu es un traducteur professionnel spécialisé dans la traduction de texte ukrainien en français.
|
||||
Tu est spécialisé dans la rédaction des textes auto-biographiques et historiques et parles un français impécable.
|
||||
Tu dois toujours répondre en français et uniquement dans cette langue.
|
||||
Tu prends soins des congugaisons et de la tournure de phases.
|
||||
N'ajoutes aucun texte sous quelle forme que ce soit avant ou après le texte traduit. Ne réponds qu'avec le texte traduit.
|
||||
N'inclus pas la phrase "Voici le texte traduit" dans la réponse.
|
||||
Traduis avec précision et naturel, en respectant l'intonation originale utilisée par l'auteur du texte.
|
||||
Tu dois toujours répondre en français et uniquement en français.
|
||||
Tu ne dois pas interpréter les pensées ou les réflexions de l'auteur.
|
||||
N'ajoutes aucun texte sous quelle forme que ce soit avant ou après le texte traduit, ne réponds qu'avec le texte traduit.
|
||||
Tu ne dois pas interpréter les pensées ou les réflexions de l'auteur, la traduciton doit restée fidèle à la pensée de l'auteur.
|
||||
Le texte que tu traduis est un texte historique.
|
||||
"""
|
||||
32
main.py
32
main.py
@ -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)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user