C.W.K.
Stream
Lesson 01 of 05 · published

Merge & Export

~18 min · merge, export, deployment-pipeline

Level 0관찰자
0 XP0/43 lessons0/11 achievements
0/120 XP to next level120 XP to go0% complete

배포 파이프라인

  1. LoRA adapter를 베이스 모델에 merge.
  2. 배포 포맷(GGUF, GPTQ, AWQ)으로 변환.
  3. 타겟 하드웨어용으로 양자화.
  4. 선택한 플랫폼(Ollama, vLLM, TGI)으로 서빙.

왜 merge?

Merged 모델은 PEFT 런타임 오버헤드 0이고 베이스 모델이랑 byte-동일 모양. 어떤 서빙 프레임워크든 직접 사용 — 추론 시 PEFT 의존성 X. 단일 adapter 실서비스 배포엔 merge가 옳은 선택.

Code

Merge LoRA, save merged model·python
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

# Step 1: load base in full precision (so merge math is accurate)
base = AutoModelForCausalLM.from_pretrained(
    "meta-llama/Llama-3.1-8B-Instruct",
    torch_dtype=torch.float16,
    device_map="auto",
)
tok = AutoTokenizer.from_pretrained("meta-llama/Llama-3.1-8B-Instruct")

# Step 2: load LoRA adapter on top
model = PeftModel.from_pretrained(base, "./my-lora-adapter")

# Step 3: merge — adapters fold into base; PeftModel wrapper goes away
merged = model.merge_and_unload()

# Step 4: save the merged model
merged.save_pretrained("./merged-model")
tok.save_pretrained("./merged-model")
print("Merged model ready for vLLM / TGI / Ollama serving.")

External links

Exercise

학습한 LoRA adapter 가져와. Merge하고 저장. Merged 모델이랑 원래(base + adapter) 셋업 별도로 로드. 5개 테스트 프롬프트에 동일 출력 검증. Merged 모델에 PEFT 의존성 없는 거 확인.

Progress

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

댓글 0

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

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