From df3680c280bc727f0848381597b73bbe56258366 Mon Sep 17 00:00:00 2001 From: Piero Toffanin Date: Mon, 3 Jun 2024 13:11:42 -0400 Subject: [PATCH] Fix alternatives unique comparison --- libretranslate/app.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libretranslate/app.py b/libretranslate/app.py index 8a2b3d0..59c05f7 100644 --- a/libretranslate/app.py +++ b/libretranslate/app.py @@ -148,8 +148,8 @@ def get_routes_limits(args, api_keys_db): return res -def unique_list(seq): - seen = set() +def unique_list(seq, extra): + seen = set({extra}) seen_add = seen.add return [x for x in seq if not (x in seen or seen_add(x))] @@ -661,7 +661,7 @@ def create_app(args): else: hypotheses = translator.hypotheses(text, num_alternatives + 1) translated_text = unescape(improve_translation_formatting(text, hypotheses[0].value)) - alternatives = unique_list([unescape(improve_translation_formatting(text, hypotheses[i].value)) for i in range(1, len(hypotheses))]) + alternatives = unique_list([unescape(improve_translation_formatting(text, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text) batch_results.append(translated_text) batch_alternatives.append(alternatives) @@ -685,7 +685,7 @@ def create_app(args): else: hypotheses = translator.hypotheses(q, num_alternatives + 1) translated_text = unescape(improve_translation_formatting(q, hypotheses[0].value)) - alternatives = unique_list([unescape(improve_translation_formatting(q, hypotheses[i].value)) for i in range(1, len(hypotheses))]) + alternatives = unique_list([unescape(improve_translation_formatting(q, hypotheses[i].value)) for i in range(1, len(hypotheses))], translated_text) result = {"translatedText": translated_text}