automl_utils 模块

用于 AutoML 宽代码的常规用途实用工具

函数

retry_with_backoff

尝试使用指数回退将包装函数重试固定次数的函数修饰器。

用法:


   @retry_with_backoff(retries=3, delay=5, backoff=2, logger=None)
   def service_request():
       # function logic that may raise an exception, but may
       # return a successful response subsequently

上述示例将以 5 秒、10 秒、20 秒的间隔重试 service_request() 函数 3 次

目前将对引发的任何异常执行重试。 但是,根据需要,这可以很容易地扩展为仅处理一组特定的异常并传递/引发其他异常。

注意:请确保异常不包含 PII,换言之,你可以控制记录器。

参考:https://wiki.python.org/moin/PythonDecoratorLibrary#Retry

retry_with_backoff(retries: int, delay: int = 5, backoff: int = 2, raise_ex: bool = True) -> Callable[[…], Callable[[…], Any]]

参数

retries
必需

尝试的重试次数

delay
默认值: 5

以秒为单位的固定延迟开始

backoff
默认值: 2

延迟后续重试的乘数

raise_ex
默认值: True

所有重试都用尽时是否引发异常

logger
必需

用于帮助记录异常详细信息的可选记录器

返回

任意(无论包装函数返回什么内容)