mirror of
https://github.com/yihong0618/bilingual_book_maker.git
synced 2025-06-06 11:35:49 +00:00
chore: setup default backoff for tranlate method (#387)
* chore: setup default backoff for tranlate method Signed-off-by: Zhou Zhiqiang <im@strrl.dev>
This commit is contained in:
parent
95bdd1bf6b
commit
37808e044f
@ -1,5 +1,10 @@
|
|||||||
import re
|
import re
|
||||||
from copy import copy
|
from copy import copy
|
||||||
|
import backoff
|
||||||
|
import logging
|
||||||
|
|
||||||
|
logging.basicConfig(level=logging.WARNING)
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
class EPUBBookLoaderHelper:
|
class EPUBBookLoaderHelper:
|
||||||
@ -27,13 +32,20 @@ class EPUBBookLoaderHelper:
|
|||||||
if single_translate:
|
if single_translate:
|
||||||
p.extract()
|
p.extract()
|
||||||
|
|
||||||
|
@backoff.on_exception(
|
||||||
|
backoff.expo,
|
||||||
|
Exception,
|
||||||
|
on_backoff=lambda details: logger.warning(f"retry backoff: {details}"),
|
||||||
|
on_giveup=lambda details: logger.warning(f"retry abort: {details}"),
|
||||||
|
)
|
||||||
|
def translate_with_backoff(self, **kwargs):
|
||||||
|
return self.translate_model.translate(**kwargs)
|
||||||
|
|
||||||
def deal_new(self, p, wait_p_list, single_translate=False):
|
def deal_new(self, p, wait_p_list, single_translate=False):
|
||||||
self.deal_old(wait_p_list, single_translate, self.context_flag)
|
self.deal_old(wait_p_list, single_translate, self.context_flag)
|
||||||
self.insert_trans(
|
self.insert_trans(
|
||||||
p,
|
p,
|
||||||
shorter_result_link(
|
shorter_result_link(self.translate_with_backoff(p.text, self.context_flag)),
|
||||||
self.translate_model.translate(p.text, self.context_flag)
|
|
||||||
),
|
|
||||||
self.translation_style,
|
self.translation_style,
|
||||||
single_translate,
|
single_translate,
|
||||||
)
|
)
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
-e .
|
-e .
|
||||||
mkdocs
|
mkdocs
|
||||||
mkdocs-material
|
mkdocs-material
|
||||||
|
backoff
|
||||||
|
Loading…
x
Reference in New Issue
Block a user