IT

AI App 만들면서 알게된 지식들

내일은교양왕 2025. 3. 28. 08:23

mlx
 - 맥 실리콘 CPU에 최적화된 머신러닝 실행 환경을 제공하는 라이브러리
 - PyTorch나 NumPy와 비슷한 API를 제공하면서도 Metal(Apple GPU API)를 활용하여 고성능 AI 모델을 시행 가능

 

모델 파일 의미

DeepSeek-R1-Distill-Llama-8B-4bit 기준

Distill
 - Knowledge Distillation의 약자로, 큰 모델의 지식을 작은 모델로 압축 하는 기법

8B
 - 80억개 파라미터를 가진 모델

4bit 의미
 - 4bit 양자화 되었음
 - 원래 신경망의 가중치는 FP16(16bit) 또는 FP32(32-bit) 부동소수점으로 저장됨
 - 하지만 메모리와 연산량을 줄이기 위해 4-bit 정밀도로 변환

DeepSeek-R1-Distill-Llama-8B-4bit
 - 8B로 적혀있지만, 실제 Param은 1.25B임. 원본 8B에서 distillation 과정을 거쳤을 수 있음

Token
 - 문자열 자체로는 Llm이 인식 못함. 문자를 숫자로 변환해야함
 - 모델마다 짜르는 단위가 다름
 - 한글과 이모티콘이 영어보다 더 많은 토큰이 필요할 수 있음

[Sampling]
temperature sampling
 - Temperature(온도) 값을 조절하면 확률이 높은 토큰을 더 강하게 선택할지, 더 다양한 선택지를 고려할지를 결

Nucleus sampling (Top-p)
 - 상위 p% 확률 내에서만 샘플링하도록 제한하는 방식
 - top_p = 0.9 라면, 전체 확률의 90%를 차지하는 단어들만 후보로 남김
 - mat (0.5), chair (0.3), table (0.1), floor (0.07), cloud (0.03)
   - top_p = 0.9라면 mat, char, table만 남김
 - 낮을수록 더 일관된 문장 생성
 - 높을수록 더 다양한 선택지 고려

Top-k sampling
 - 확률이 높은 상위 k개 토큰만 고려하고 나머지는 버리는 방식
 - top_k = 5 라면, 확률이 가장 높은 5개의 단어 중에서만 선택


모든 샘플링에 포함된 토큰만 사용.