C.W.K.
Stream
Lesson 06 of 08 · published

Optimum: 하드웨어별 최적화

~20 min · ops, optimum

Level 0스카우트
0 XP0/50 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

optimum 의 용도

optimum 이 HF 의 하드웨어 가속 우산. 각 subpackage 가 vendor / runtime 타겟: optimum.onnxruntime, optimum.intel (OpenVINO, Neural Compressor), optimum.habana (Gaudi), optimum.tpu, optimum.nvidia (TensorRT-LLM). 같은 Auto-class 모양 (ORTModelForCausalLM, OVModelForCausalLM 등) 이라 runtime swap 이 한 줄 import 변경.

패턴 둘

  • Export-time 최적화ORTModelForCausalLM.from_pretrained(repo, export=True) 가 최적화 graph 변환 + 저장.
  • Run-time 최적화optimum-cli onnxruntime quantize 가 INT8 dynamic 양자화 등 적용.

언제 reach

너 서빙 타겟이 “NVIDIA GPU 의 PyTorch” 외라면 optimum 이 아마 그것의 runtime 가짐. 모바일 / embedded / Intel CPU / TPU / Gaudi / TensorRT — 모두 optimum 모양에 converge. 비용은 dependency 하나 추가 + per-target export step.

Code

Optimum + Intel OpenVINO 의 CPU 인퍼런스·python
# pip install "optimum[openvino]"
from optimum.intel import OVModelForCausalLM
from transformers import AutoTokenizer

repo = "Qwen/Qwen2.5-1.5B-Instruct"
ov = OVModelForCausalLM.from_pretrained(repo, export=True)
tok = AutoTokenizer.from_pretrained(repo)

inputs = tok("Hello", return_tensors="pt")
out = ov.generate(**inputs, max_new_tokens=20)
print(tok.decode(out[0], skip_special_tokens=True))

External links

Exercise

너 하드웨어 매치 runtime 골라 (ONNX, OpenVINO, NVIDIA 면 TensorRT-LLM). 1B 모델 변환. 100 프롬프트 벤치마크. 같은 머신의 transformers + PyTorch 와 토큰별 latency 비교.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.