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 temperature 0.2
|
||||||
PARAMETER num_ctx 65536
|
PARAMETER num_ctx 65536
|
||||||
SYSTEM """
|
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.
|
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, la traduciton doit restée fidèle à la pensée de l'auteur.
|
||||||
Tu ne dois pas interpréter les pensées ou les réflexions de l'auteur.
|
Le texte que tu traduis est un texte historique.
|
||||||
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.
|
|
||||||
"""
|
"""
|
||||||
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
|
# Récupère la date et l'heure actuelles au format AAAMMJJ-HHMM
|
||||||
current_datetime = datetime.now().strftime("%Y%m%d-%H%M")
|
current_datetime = datetime.now().strftime("%Y%m%d-%H%M")
|
||||||
# Ajoute la date et la langue cible au nom du fichier PDF de sortie
|
# Ajoute la date et la langue cible au nom du fichier PDF de sortie
|
||||||
OUTPUT_PDF_PATH = PDF_PATH.replace(
|
# OUTPUT_PDF_PATH = PDF_PATH.replace(".pdf",f" ({TARGET_LANGUAGE.upper()[:2]})_{current_datetime}.pdf")
|
||||||
".pdf",
|
OUTPUT_PDF_PATH = PDF_PATH.replace(".pdf",f" ({TARGET_LANGUAGE.upper()[:2]})_V2.pdf")
|
||||||
f" ({TARGET_LANGUAGE.upper()[:2]})_{current_datetime}.pdf"
|
|
||||||
)
|
|
||||||
|
|
||||||
def extract_parameters_from_template(template_str):
|
def extract_parameters_from_template(template_str):
|
||||||
"""Extrait les paramètres du modèle à partir du template."""
|
"""Extrait les paramètres du modèle à partir du template."""
|
||||||
|
|
@ -313,15 +311,27 @@ def main():
|
||||||
results = {}
|
results = {}
|
||||||
|
|
||||||
# Traitement des paragraphes complets
|
# Traitement des paragraphes complets
|
||||||
for i, paragraph_text in enumerate(paragraphs, start=1):
|
# for i, paragraph_text in enumerate(paragraphs, start=1):
|
||||||
print(f"{15 * '-'} Traduction du paragraphe {i}/{len(paragraphs)}...")
|
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:
|
try:
|
||||||
result = send_to_ollama(paragraph_text, target_lang=TARGET_LANGUAGE)
|
result = send_to_ollama(paragraph_cumul, target_lang=TARGET_LANGUAGE)
|
||||||
print(f"{result}.")
|
print(f"{result}")
|
||||||
results[i] = 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:
|
except Exception as e:
|
||||||
print(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 du paragraphe {i} : {e}"
|
results[i] = f"Erreur lors du traitement des paragraphes {start_idx} à {end_idx} : {e}"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Création du PDF avec tous les résultats
|
# Création du PDF avec tous les résultats
|
||||||
create_pdf_from_results(results, OUTPUT_PDF_PATH)
|
create_pdf_from_results(results, OUTPUT_PDF_PATH)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue