도배 하자 질의 응답 처리 : 한솔데코 시즌2 AI 경진대회

LLM Inference Baseline on CPU or GPU

2024.02.11 21:18 1,827 Views

## Introduction

코드 링크 : https://dacon.io/competitions/official/236216/codeshare/9690?page=1&dtype=recent

  • 본 코드는 llama cpp를 이용한 LLM 인퍼런스를 CPU 또는 GPU로 진행하는 모델입니다.
  • 본 코드는 코랩 환경에 최적화 된 모델입니다. 경로 설정 및 모델 다운로드는 개별적으로 진행해주시면 되겠습니다.


## Experiment

Generator parameters:

  • cfg_token = 128
  • cfg_batch = 4096
  • cfg_ctx = 512


CPU - 7B_q4

  • 5 tokens / sec

T4 - 7B_q4

  • 35 tokens / sec

V100 - 7B_fp16

  • 48 tokens / sec

A100 - 7B_fp16

  • 61 tokens / sec


CPU 기준 테스트 샘플 인퍼런스는 1시간 30분 이내로 소요되며, T4 기준 10분내로 처리됩니다.

  • 토큰 배율, 시간 배율이 각각 7배, 9배 차이임에도 동일한 비례를 갖지 않는 이유는 T4를 사용할 때 주어지는 CPU가 다른 것으로 추정됩니다.


## 사용 모델

https://huggingface.co/davidkim205/komt-mistral-7b-v1

  • ggml-model-q5_k_m.gguf
  • CV : 0.35 on public train set


## Etc

GPU를 사용하고자 하는 분들께

  • V100, T40, A100을 이용하여 각 퍼포먼스를 비교하는 실험을 진행하려 했으나, llama cpp와 코랩과의 호환성이 불안정하여 캐글, 로컬, 다른 Cloud PC를 이용하시는 게 좋을 것 같습니다.
The default pip install behaviour is to build llama.cpp for CPU only on Linux and Windows and use Metal on MacOS.
  • 그러므로, `CMAKE_ARGS="-DLLAMA_CUBLAS=on" pip install llama-cpp-python`. 로 설치하시면 GPU에서 정상작동 합니다.



코드 설명

  • 궁금사항이 있으시면 해당 파트 질문주시면 답변드리겠습니다. 또는 해당 파트에 대해 의견을 주시는 것도 환영합니다.



## Update History

2024.02.13

  • T4 GPU 퍼포먼스 추가
  • 코랩 환경에서 GPU 작동유무 가이드 추가

2024.02.14

  • Q8 -> Q4 벤치마크 변경
  • V100, A100 벤치마크 추가



로그인이 필요합니다
0 / 1000
도비콘
2024.02.14 18:10

👏🏻