더북(TheBook)

➊ tenacity 라이브러리의 @retry 데코레이터입니다. 함수 자체를 수정하지 않고도 재시도 기능을 추가할 수 있습니다. 설정(➋~➍)에 따라 오류 발생 시 자동으로 다시 실행합니다.

➋ 재시도할 예외를 지정합니다. 여기서는 RateLimitError(요청 제한 초과), APIError(서버 오류)가 발생할 때만 재시도합니다.

➌ 최대 3회까지 재시도합니다.

➍ 재시도 간격을 점진적으로 늘립니다. 첫 재시도는 2초 후에 수행하고, 이후에는 대기 시간을 늘리되 최대 60초를 넘지 않습니다.

➎ call_llm_api_with_retry() 함수를 호출하면 ➊에서 정의한 @retry 데코레이터가 동작해 재시도 정책이 자동으로 적용됩니다.

icon_beta 용어 데코레이터(decorator)는 함수의 동작을 변경하거나 기능을 추가하기 위해 함수 위에 선언하는 파이썬 문법입니다.