18
18
19
19
logger = logging .getLogger (__name__ )
20
20
21
- LOG_VERBOSITY_MAP = {
21
+ LOG_VERBOSITY_MAP : dict [ int , dict [ str , int ]] = {
22
22
0 : {
23
23
"paperqa.agents" : logging .INFO ,
24
24
"paperqa.agents.helpers" : logging .WARNING ,
28
28
"paperqa.agents.search" : logging .INFO ,
29
29
"anthropic" : logging .WARNING ,
30
30
"openai" : logging .WARNING ,
31
+ "httpcore" : logging .WARNING ,
31
32
"httpx" : logging .WARNING ,
32
33
"LiteLLM" : logging .WARNING ,
33
34
"LiteLLM Router" : logging .WARNING ,
51
52
LOG_VERBOSITY_MAP [3 ] = LOG_VERBOSITY_MAP [2 ] | {
52
53
"LiteLLM" : logging .DEBUG , # <-- every single LLM call
53
54
}
55
+ _MAX_PRESET_VERBOSITY : int = max (k for k in LOG_VERBOSITY_MAP )
54
56
55
57
_PAPERQA_PKG_ROOT_LOGGER = logging .getLogger (__name__ .split ("." , maxsplit = 1 )[0 ])
56
58
_INITIATED_FROM_CLI = False
@@ -75,12 +77,10 @@ def set_up_rich_handler(install: bool = True) -> RichHandler:
75
77
76
78
77
79
def configure_log_verbosity (verbosity : int = 0 ) -> None :
78
- max_preset_verbosity : int = max ( list ( LOG_VERBOSITY_MAP . keys ()) )
80
+ key = min ( verbosity , _MAX_PRESET_VERBOSITY )
79
81
for logger_name , logger_ in logging .Logger .manager .loggerDict .items ():
80
82
if isinstance (logger_ , logging .Logger ) and (
81
- log_level := LOG_VERBOSITY_MAP .get (
82
- min (verbosity , max_preset_verbosity ), {}
83
- ).get (logger_name )
83
+ log_level := LOG_VERBOSITY_MAP .get (key , {}).get (logger_name )
84
84
):
85
85
logger_ .setLevel (log_level )
86
86
0 commit comments