TensorRT-LLM

TensorRT-LLM

TensorRT-LLM은 NVIDIA GPU에서 LLM 추론을 최적화하는 엔진이에요. AutoDeploy를 통해 Transformers 모델을 수정 없이 그대로 최적화된 런타임으로 변환하는 방법을 살펴볼게요.

출처: 문서

본문

TensorRT-LLM은 NVIDIA GPU에서 LLM 추론을 최적화해요. in-flight 배칭, 페이지드 KV 캐싱, 텐서 병렬화를 갖춘 TensorRT 엔진으로 모델을 컴파일해요. AutoDeploy는 변경 없이 Transformers 모델을 받아들이고, 모델을 자동으로 최적화된 런타임으로 변환해요.

build_and_run_ad.py에 Hub의 모델 id를 넘기면 Transformers 모델을 실행할 수 있어요.

cd examples/auto_deploy
python build_and_run_ad.py --model meta-llama/Llama-3.2-1B

내부적으로 AutoDeploy는 LLM 클래스를 만들어요. AutoConfig.from_pretrained()로 모델 설정을 불러오고, tp_plan에 저장된 병렬화 메타데이터를 추출해요. AutoModelForCausalLM.from_pretrained()는 설정과 함께 모델을 불러오고 Transformers 내장 텐서 병렬화를 활성화해요.

from tensorrt_llm._torch.auto_deploy import LLM

llm = LLM(model="meta-llama/Llama-3.2-1B")

TensorRT-LLM은 torch.export로 모델 그래프를 추출하고 최적화를 적용해요. Transformers attention을 TensorRT-LLM attention 커널로 교체하고, 모델을 최적화된 실행 백엔드로 컴파일해요.

리소스 (Resources)

더 알아보기 (Learn more)