refactor: Optimize exception lookup using a set in LiteLLMExceptions

This commit is contained in:
Paul Gauthier (aider) 2025-02-06 09:49:40 -08:00
parent 3714f9fdbd
commit 5e4852bd32

View file

@ -51,6 +51,7 @@ EXCEPTIONS = [
class LiteLLMExceptions: class LiteLLMExceptions:
exceptions = dict() exceptions = dict()
exception_names = {exi.name for exi in EXCEPTIONS}
def __init__(self): def __init__(self):
self._load() self._load()
@ -63,11 +64,11 @@ class LiteLLMExceptions:
continue continue
ex_info = None ex_info = None
# collect these names into a set once, above ai! if var in self.exception_names:
for exi in EXCEPTIONS: for exi in EXCEPTIONS:
if var == exi.name: if var == exi.name:
ex_info = exi ex_info = exi
break break
if strict and not ex_info: if strict and not ex_info:
raise ValueError(f"{var} is in litellm but not in aider's exceptions list") raise ValueError(f"{var} is in litellm but not in aider's exceptions list")