[Bug]: AutoDeploy logger treats verbose and internal_error as info

Open Beginner friendly
#19,491 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
82/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
backend

Research direction

Start in tensorrt_llm/_torch/auto_deploy/utils/logger.py and trace how _SEVERITY_TO_LEVEL is used by log(), set_level(), and AUTO_DEPLOY_LOG_LEVEL initialization. Add a CPU-only regression test covering verbose, internal_error, standard levels, and unknown strings, and verify the AutoDeploy-specific names resolve to DEBUG and CRITICAL consistently.

Written by the indexing model from the issue text.

Description

AutoDeploy bug
System Info
  • TensorRT-LLM main at b8e337d939cde1b7aa65feb5287e5bdefa02154b
  • Python 3.12 and 3.14
  • Reproduced on Linux and Windows
  • CPU-only; no GPU or model is involved
Who can help?

No response

Information
  • The official example scripts
  • My own modified scripts
Tasks
  • An officially supported task in the examples folder (such as GLUE/SQuAD, ...)
  • My own task or dataset (give details below)
Reproduction

ADLogger defines AutoDeploy-specific severities and maps verbose to logging.DEBUG and internal_error to logging.CRITICAL in log(). The environment-variable path and set_level() instead use getattr(logging, ...), so these same public severity names silently fall back to INFO.

import logging
from tensorrt_llm._torch.auto_deploy.utils.logger import ADLogger

logger = ADLogger()
logger.set_level("verbose")
print(logger._logger.level)  # 20 (INFO), expected 10 (DEBUG)

logger.set_level("internal_error")
print(logger._logger.level)  # 20 (INFO), expected 50 (CRITICAL)

The same mismatch occurs when AUTO_DEPLOY_LOG_LEVEL is set before importing the module. Standard levels such as warning work as expected.

Expected behavior

All public AutoDeploy severity names should resolve consistently in log(), set_level(), and AUTO_DEPLOY_LOG_LEVEL: verbose should select DEBUG and internal_error should select CRITICAL. Unknown strings can continue to fall back to INFO.

actual behavior

Both AutoDeploy-specific names resolve to INFO in set_level() and the environment-variable initialization path, so verbose logs stay hidden and internal errors lose their intended severity.

additional notes

I searched open and closed issues/PRs and did not find an exact duplicate. A minimal fix can reuse _SEVERITY_TO_LEVEL for all three paths and add a CPU-only regression test. I have reproduced the baseline/fix differential on current main and can submit the patch if this issue is approved, per the contribution policy. The behavior remains present even though AutoDeploy is being redirected toward the standalone backend.

Before submitting a new issue...
  • Make sure you already searched for relevant issues, and checked the documentation and examples for answers to frequently asked questions.
Dominant language
Python
Stars
14.7k
Forks
2.8k
Avg merge
3d 3h
Merged PRs (30d)
493

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from NVIDIA/TensorRT-LLM

All issues in NVIDIA/TensorRT-LLM

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.