
TensorRT-LLM은 NVIDIA GPU에서 LLM 모델을 TensorRT 엔진으로 최적화하여 추론 속도와 처리량을 획기적으로 향상시키는 기술입니다.



git clone https://github.com/NVIDIA/TensorRT-LLM.git
cd TensorRT-LLM/examples/llama
pip install -r requirements.txt
#### 모델의 토크나이저 및 가중치 다운로드
- Llama3 모델에 TensorRT-LLM으로 추론 최적화를 하기 위해서 해당 모델의 체크포인트가 필요합니다. 그래서 git clone https://huggingface.co/meta-llama/Meta-Llama-3.1-8B-Instruct 을 통해 Llama 3.1 8B 모델의 가중치와 토크나이저 파일을 가져옵니다.
- 한국어로 사전학습된 모델의 가중치와 토크나이저를 다운로드하고 싶으시면 https://huggingface.co/원하는Model 로 다운로드를 진행하시면 됩니다.
#### HF LLaMA 체크포인트 변환
```python
python3 ./convert_checkpoint.py \
--model_dir Llama3-Chat_Vector-kor \
--dtype bfloat16 \
--world-size 1 \
--output-model-dir llama-tensorrt
trtllm-build --checkpoint_dir llama-3-8b-ckpt \
--gemm_plugin float16 \
--output_dir ./llama-3-8b-engine
python3 ../run.py --engine_dir ./llama-3-8b-ckpt --max_output_len 1024 --tokenizer_dir ./Llama3-Chat_Vector-kor --input_text "대한민국의 수도는 어디인가요?"
# result
"<|begin_of_text|>대한민국의 수도는 어디인가요?"
Output [Text 0 Beam 0]: " 서울입니다. 서울은 대한민국의 수도이자 정치, 경제, 문화의 중심지입니다. 서울은 한강을 중심으로 남쪽은 강남, 북쪽은 강북으로 나뉘어져 있습니다. 강남은 서울의 남쪽 지역으로 고층 빌딩과 아파트가 많고, 강북은 서울의 북쪽 지역으로 오래된 건물과 주택이 많습니다. 서울은 대한민국의 수도이기 때문에 많은 사람들이 살고 있습니다. 서울의 인구는 약 1,00만 명으로 대한민국 전체 인구의 약 20%를 차지하고 있습니다. 서울은 대한민국의 정치, 경제, 문화의 중심지이기 때문에 많은 사람들이 서울로 몰려들고 있습니다. 서울은 대한민국의 수도이기 때문에 많은 사람들이 살고 있는 만큼 많은 문제점도 가지고 있습니다. 서울의 인구가 너무 많기 때문에 교통 체증, 주택난, 환경오염 등의 문제점이 발생하고 있습니다."
python3 ./convert_checkpoint.py \
--model-dir Llama3-Chat_Vector-kor \
--dtype bfloat16 \
--world-size 1 \
--output-model-dir llama-tensorrt
에서 --model_dir 형태로 언더바로 수정해야할 것 같습니다. 제가 사용한 tensorrt 0.11.0, 0.9.0에서는 --world_size 인자가 없다고 에러나는데 혹시 tp_size와 다른 인자인지 여쭤봅니다.