Skip to main content
PromptQuorumPromptQuorum
Home/Local LLMs/LoRA 파인튜닝 로컬 LLM 2026: Llama 3.3으로 8 GB VRAM에서 Unsloth 튜토리얼
고급 기술

LoRA 파인튜닝 로컬 LLM 2026: Llama 3.3으로 8 GB VRAM에서 Unsloth 튜토리얼

·13분 읽기·By Hans Kuepper · Founder of PromptQuorum, multi-model AI dispatch tool · PromptQuorum

파인튜닝은 LoRA(Low-Rank Adaptation)를 사용하여 사전 학습된 모델을 특정 도메인에 맞게 조정합니다 — 전체 모델을 재학습하는 대신, 소형 어댑터 레이어(전체 가중치의 0.4%)를 추가합니다. Llama 3.3 8B 파인튜닝은 Unsloth를 사용하면 8 GB VRAM과 1~2시간으로 소비자 하드웨어에서 가능합니다(표준 학습 대비 최대 2배 빠름).

파인튜닝은 LoRA(Low-Rank Adaptation)를 사용하여 사전 학습된 모델을 특정 도메인에 맞게 조정합니다 — 전체 모델을 재학습하는 대신, 소형 어댑터 레이어(전체 가중치의 0.4%)를 추가합니다. Llama 3.3 8B 파인튜닝은 Unsloth를 사용하면 8 GB VRAM과 1~2시간으로 소비자 하드웨어에서 가능합니다(표준 학습 대비 최대 2배 빠름, unsloth.ai 공식 기준). 2026년 4월 기준, LoRA와 QLoRA(4비트 양자화 LoRA)는 Ollama, LM Studio, vLLM에서 프로덕션 수준으로 지원됩니다.

Slide Deck: LoRA 파인튜닝 로컬 LLM 2026: Llama 3.3으로 8 GB VRAM에서 Unsloth 튜토리얼

아래 슬라이드 덱에서 다루는 내용: LoRA가 학습 가능한 파라미터를 전체 모델의 0.4%로 줄이는 방법, 8 GB VRAM에서 파인튜닝을 가능하게 하는 QLoRA 4비트 양자화, LoRA vs RAG 의사결정 매트릭스, Unsloth 6단계 학습 설정, 주요 하이퍼파라미터(rank, alpha, dropout), 그리고 5가지 일반적인 파인튜닝 실수. PDF를 LoRA 파인튜닝 참조 카드로 다운로드하십시오.

Browse the slides below or download as PDF for offline reference. Download Reference Card (PDF)

LoRA 파인튜닝 로컬 LLM 2026: Llama 3.3으로 8 GB VRAM에서 Unsloth 튜토리얼

Key Takeaways

  • LoRA = 사전 학습된 모델에 소형 학습 가능 레이어를 추가합니다. 모델 가중치의 1~5%만 학습 가능하여 VRAM과 시간을 크게 줄입니다.
  • 파인튜닝 요구 사항: 고품질 예제 500~1000개, VRAM 8~16 GB, 학습 시간 1~4시간.
  • 최적 도구: unsloth(가장 빠름), Hugging Face TRL, Axolotl(가장 유연함).
  • LoRA rank(r): 낮을수록(r=8) 소형이고 빠르며, 높을수록(r=64) 표현력이 강합니다. 기본값: r=16~32.
  • 2026년 4월 기준, LoRA는 추론 엔진 전반에서 프로덕션 수준으로 광범위하게 지원됩니다.

LoRA는 어떻게 작동합니까?

LoRA는 원래 모델 가중치 옆에 소형 "어댑터" 행렬을 추가합니다. 학습 중에는 어댑터만 업데이트되고 원래 가중치는 동결됩니다.

예시: 13B 모델에는 130억 개의 가중치가 있습니다. LoRA는 학습 가능한 파라미터를 5000만 개(원래의 약 0.4%)만 추가합니다. 학습은 100배 빠릅니다.

추론 시에는 어댑터 출력이 행렬 곱셈을 통해 메인 모델 출력과 병합됩니다. 속도 저하는 미미합니다(약 5%).

결과: 8 GB VRAM만으로 도메인 특화 모델을 만들 수 있습니다(26 GB 대신).

LoRA는 동결된 베이스 모델 가중치 옆에 소형 학습 가능 어댑터 행렬을 추가합니다. 13B Llama 모델 파라미터의 0.4%만 학습 중에 업데이트되어 VRAM과 시간을 100배 줄입니다.
LoRA는 동결된 베이스 모델 가중치 옆에 소형 학습 가능 어댑터 행렬을 추가합니다. 13B Llama 모델 파라미터의 0.4%만 학습 중에 업데이트되어 VRAM과 시간을 100배 줄입니다.

QLoRA(4비트 양자화 LoRA)란 무엇입니까?

QLoRA는 LoRA와 4비트 양자화를 결합합니다 — 베이스 모델은 4비트(QLoRA)로 로드하고 어댑터만 16비트로 학습합니다. 이로써 VRAM 요구 사항이 절반으로 줄어듭니다.

2026년 4월 기준, QLoRA는 소비자 하드웨어의 기본 방식입니다. 위 코드 예제에서 Unsloth의 `load_in_4bit=True` 플래그를 사용하면 QLoRA가 자동으로 활성화됩니다. 완전한 LoRA 대비 2% 품질 차이는 대부분의 도메인 적응 작업에서 무시할 수 있는 수준입니다.

QLoRA(4비트) 대신 LoRA(16비트)를 사용해야 할 때:

• 최대 정밀도가 필요한 작업(의료, 법률 계약 분석)

• VRAM이 16 GB 이상 사용 가능한 경우

• 3B 이하 소형 모델 파인튜닝(소형 크기에서는 QLoRA 절약 효과가 미미함)

Method7B Model VRAM13B Model VRAMQuality vs Full
Full fine-tuning28 GB52 GB100% (기준)
LoRA (16-bit base)16 GB30 GB~97%
QLoRA (4-bit base)8 GB14 GB~95%
7B, 13B, 70B 모델 크기별 파인튜닝 방법에 따른 VRAM 요구 사항. 완전 파인튜닝은 7B에 28 GB 이상이 필요하고, QLoRA는 8 GB로 줄입니다. 기업 사용자의 경우 QLoRA를 통해 듀얼 RTX 4090(총 ~40 GB)에서 70B 모델 파인튜닝이 가능합니다.
7B, 13B, 70B 모델 크기별 파인튜닝 방법에 따른 VRAM 요구 사항. 완전 파인튜닝은 7B에 28 GB 이상이 필요하고, QLoRA는 8 GB로 줄입니다. 기업 사용자의 경우 QLoRA를 통해 듀얼 RTX 4090(총 ~40 GB)에서 70B 모델 파인튜닝이 가능합니다.

파인튜닝을 해야 합니까, RAG를 사용해야 합니까?

의사결정 매트릭스:

LoRA 파인튜닝에 투자하기 전에 먼저 더 나은 프롬프팅으로 문제를 해결할 수 없는지 확인하십시오 — 프롬프트 엔지니어링은 더 빠르고, 되돌릴 수 있으며, 모델에 구애받지 않습니다. 전체 의사결정 프레임워크는 프롬프트 엔지니어링 vs 파인튜닝: 결정 방법을 참조하십시오.

파인튜닝은 오프라인에서 코딩 워크플로를 생산적으로 유지하는 방법 중 하나입니다. 모델, IDE, 패키지 캐시, 문서 미러 등 더 넓은 오프라인 설정에 대해서는 인터넷 없이 로컬 코딩 LLM을 참조하십시오.

CriteriaFine-TuningRAG
문서 변경 빈도연 1회 이하주 1회 이상
지식 요구 사항모델이 깊은 이해 필요검색으로 충분
훈련 데이터 가용성고품질 예제 500개 이상 필요어떤 문서든 사용 가능
비용(장기)일회성($50~200)지속적인 임베딩 비용
지연 시간빠름(검색 없음)느림(검색 + LLM)
최적 용도코드, 창작, 도메인 스타일지식 베이스, Q&A

훈련 데이터를 어떻게 준비합니까?

고품질 훈련 데이터가 파인튜닝 성공을 결정합니다. 나쁜 데이터 = 나쁜 모델.

최소: 500개 예제. 각 예제 = 입력 + 기대 출력.

최적: 1000~5000개 예제. 데이터가 많을수록 정확도가 높아집니다.

형식: JSON 또는 JSONL. 각 줄 = 하나의 훈련 예제.

json
[
  {"instruction": "Translate to French", "input": "Hello world", "output": "Bonjour le monde"},
  {"instruction": "Summarize", "input": "Long text...", "output": "Summary..."},
  {"instruction": "Code review", "input": "Python code...", "output": "Review comments..."}
]

# OR instruction-only format:
[
  {"text": "<|user|>Translate to French\nHello<|assistant|>Bonjour"},
  {"text": "<|user|>Summarize\nText<|assistant|>Summary"}
]
훈련 데이터 준비 워크플로: 도메인 특화 명령/출력 쌍 500개 이상 수집, JSONL 형식으로 저장(줄당 하나), SFTTrainer에 로드. 품질이 수량보다 중요합니다 — 고품질 예제 100개가 저품질 예제 1000개보다 우수합니다.
훈련 데이터 준비 워크플로: 도메인 특화 명령/출력 쌍 500개 이상 수집, JSONL 형식으로 저장(줄당 하나), SFTTrainer에 로드. 품질이 수량보다 중요합니다 — 고품질 예제 100개가 저품질 예제 1000개보다 우수합니다.

Unsloth를 사용한 파인튜닝 설정

Unsloth는 가장 빠른 LoRA 프레임워크입니다(표준 학습 대비 최대 2배 빠름, unsloth.ai 공식 벤치마크):

python
# Install unsloth
pip install unsloth[colab-new] xformers bitsandbytes

from unsloth import FastLanguageModel
from datasets import load_dataset

# Load base model with LoRA
model, tokenizer = FastLanguageModel.from_pretrained(
  model_name="unsloth/llama-3.1-8b-bnb-4bit",
  max_seq_length=2048,
  load_in_4bit=True,
  lora_r=16, lora_alpha=32,
  lora_dropout=0.05
)

# Load training data
dataset = load_dataset("json", data_files="training.jsonl")

# Configure trainer
from trl import SFTTrainer
trainer = SFTTrainer(
  model=model,
  tokenizer=tokenizer,
  train_dataset=dataset["train"],
  dataset_text_field="text",
  max_seq_length=2048,
  args=TrainingArguments(
    per_device_train_batch_size=4,
    num_train_epochs=3,
    learning_rate=2e-4,
    output_dir="output"
  )
)

# Train
trainer.train()

LoRA 파인튜닝의 주요 하이퍼파라미터

HyperparameterRecommended ValueTypical RangeEffect
learning_rate2e-41e-5 ~ 1e-3낮을수록 안정적이나 수렴이 느림
lora_r (rank)164 ~ 64높을수록 표현력 강하나 느림
lora_alpha328 ~ 256높을수록 LoRA 효과 강해짐
num_train_epochs31 ~ 10에포크 많을수록 과적합 위험 증가
batch_size41 ~ 32클수록 학습 빠르나 VRAM 많이 필요
warmup_steps1000 ~ 1000점진적 학습률 증가로 학습 안정화

파인튜닝된 모델을 어떻게 평가합니까?

학습 손실: 에포크가 진행될수록 감소해야 합니다. 평탄하면 학습률이 너무 낮을 수 있습니다.

검증 손실: 감소해야 하지만 학습 손실보다 높게 유지되는 것이 정상입니다. 증가하면 과적합입니다.

수동 테스트: 파인튜닝된 모델을 테스트 예제로 실행하고 출력을 기대 결과와 비교하십시오.

벤치마크 작업: 표준 벤치마크(MMLU, HumanEval)를 사용하여 개선도를 측정하십시오.

가장 일반적인 파인튜닝 실수는 무엇입니까?

  • 훈련 예제 부족. 200개 미만의 예제는 과적합으로 이어지는 경우가 많습니다. 최소 500개를 수집하십시오.
  • 너무 많은 에포크 학습. 모델이 일반화 가능한 패턴 학습 대신 데이터를 암기합니다. 최대 3~5 에포크에서 중단하십시오.
  • 미확인 데이터로 검증하지 않음. 항상 데이터를 훈련/검증(80/20)으로 분리하십시오. 과적합을 포착하기 위해 자주 검증하십시오.
  • 파인튜닝과 평가에 동일한 데이터 사용. 훈련 데이터로 평가하면 보고된 정확도는 무의미합니다.
  • 체크포인트 미저장. 학습에는 수 시간이 걸릴 수 있습니다. 충돌에서 복구할 수 있도록 매 에포크마다 저장하십시오.

LoRA 파인튜닝에 관한 자주 묻는 질문

훈련 데이터는 얼마나 필요합니까?

최소 500개, 최적 1000~5000개입니다. 수량보다 품질이 더 중요합니다. 고품질 예제 100개가 저품질 예제 1000개보다 우수합니다.

노트북에서 파인튜닝할 수 있습니까?

가능합니다. 4비트 양자화와 LoRA를 사용하십시오. 7B 모델에는 8 GB VRAM이 필요하며, 학습 시간은 CPU로 1~2시간(느림) 또는 GPU로 10~15분 정도 걸립니다.

LoRA 어댑터를 베이스 모델에 어떻게 병합합니까?

unsloth 또는 HF transformers를 사용하십시오: `model.merge_and_unload()`. 추론에 바로 사용 가능한 단일 모델 파일(7B의 경우 약 3~4 GB)이 생성됩니다.

여러 LoRA 어댑터를 결합할 수 있습니까?

제한적으로 가능합니다. 순차 적용을 위해 어댑터를 스택하거나 어댑터 컴포지션 기법(예: DoRA)을 사용하십시오.

파인튜닝된 모델 품질이 RAG보다 우수합니까?

대부분의 작업에서 그렇습니다. 파인튜닝된 모델은 도메인 개념을 깊이 이해합니다. RAG는 문서가 크고 자주 변경될 때 더 적합합니다.

LoRA와 QLoRA의 차이점은 무엇입니까?

LoRA는 베이스 모델을 16비트로 로드하고 소형 어댑터 레이어를 학습합니다. QLoRA는 베이스 모델을 4비트로 로드하고 어댑터를 16비트로 학습합니다. QLoRA는 VRAM을 약 절반 사용합니다: 7B의 경우 LoRA 16 GB 대비 8 GB. 품질 차이는 약 2% — 대부분의 작업에서 무시할 수 있는 수준입니다. Unsloth에서 `load_in_4bit=True`로 QLoRA를 활성화하십시오.

Ollama에서 LoRA 파인튜닝된 모델을 어떻게 사용합니까?

학습 후 어댑터를 베이스 모델에 병합하십시오: `model.merge_and_unload()`. llama.cpp의 `convert.py`를 사용하여 GGUF로 변환하십시오. GGUF 파일을 가리키는 Ollama Modelfile을 생성하십시오: `FROM ./my-finetuned-model.gguf` 그런 다음: `ollama create my-model -f Modelfile` 및 `ollama run my-model`. 파인튜닝된 모델은 다른 Ollama 모델과 동일하게 실행됩니다.

LoRA로 소비자 하드웨어에서 Llama 3.3 70B를 파인튜닝할 수 있습니까?

QLoRA를 사용하면 가능합니다. Llama 3.3 70B 4비트는 약 40 GB VRAM이 필요합니다 — 듀얼 RTX 4090(2×24 GB) 또는 A100 80GB에 적합합니다. 학습 시간: 1000개 예제로 4~8시간. 대부분의 사용자에게는 7B 또는 13B 모델 파인튜닝이 더 실용적이며 도메인 작업에서 70B 품질 향상의 90% 이상을 달성합니다.

출처

  • Hu, E. et al. (2021). "LoRA: Low-Rank Adaptation of Large Language Models." https://arxiv.org/abs/2106.09685 — 학습 가능한 파라미터 0.4%로 완전 파인튜닝 품질에 필적함을 보여주는 LoRA 원논문.
  • Dettmers, T. et al. (2023). "QLoRA: Efficient Finetuning of Quantized LLMs." https://arxiv.org/abs/2305.14314 — QLoRA 논문: 4비트 양자화 베이스 모델 + 16비트 LoRA 어댑터로 VRAM 요구 사항을 절반으로 줄임.
  • Unsloth. (2026). "Train LLMs up to 2× faster with 70% less VRAM (Unsloth)." https://github.com/unslothai/unsloth — 가장 빠른 LoRA 프레임워크, Llama 3.x, Qwen3, Mistral을 최대 2배 학습 가속으로 지원.
  • Hugging Face. (2025). "TRL: Transformer Reinforcement Learning." https://github.com/huggingface/trl — LoRA 어댑터 지원이 포함된 지도 파인튜닝을 위한 SFTTrainer.
  • Test PE link content
  • 파인튜닝은 기반이 탄탄할 때 가장 효과적입니다. LoRA에 시간을 투자하기 전에 베이스 프롬프트가 최적화되어 있는지 확인하십시오: 프롬프트 엔지니어링 가이드에서는 미조정 모델의 출력 품질을 향상시키는 80가지 기법을 다룹니다.

A Note on Third-Party Facts

This article references third-party AI models, benchmarks, prices, and licenses. The AI landscape changes rapidly. Benchmark scores, license terms, model names, and API prices can shift between the time of writing and the time you read this. Before making deployment or compliance decisions based on this article, verify current figures on each provider’s official source: Hugging Face model cards for licenses and benchmarks, provider websites for API pricing, and EUR-Lex for current GDPR and EU AI Act text. This article reflects publicly available information as of May 2026.

Run PromptQuorum with a local LLM, your own API keys, or both — you pick the backend.

Download the PromptQuorum Beta →

← Back to Local LLMs