Files
privacy-counsel-ko-8b/README.md
ModelHub XC d751d4565d 初始化项目,由ModelHub XC社区提供模型
Model: cywellai/privacy-counsel-ko-8b
Source: Original Platform
2026-05-23 04:19:18 +08:00

19 KiB
Raw Blame History

language, tags, license, base_model, datasets, metrics, pipeline_tag, library_name, model-index
language tags license base_model datasets metrics pipeline_tag library_name model-index
ko
legal
privacy
korean-law
pipa
isms-p
qwen
sft
consulting
lora
peft
apache-2.0 Qwen/Qwen3-8B
custom
custom
text-generation transformers
name results
privacy-counsel-ko-8b
task dataset metrics
type name
text-generation PIPA Consulting Q&A (5-Axis Structured)
type name
custom Internal Gold Set (150 questions)
type name value
custom Total Score (0-15, 5-axis) 14.38
type name value
custom Structure (0-3) 2.96
type name value
custom Legal Articles (0-3) 2.66
type name value
custom Internal Structure (0-3) 2.95
type name value
custom Practical Measures (0-3) 2.93
type name value
custom Expression Quality (0-3) 2.87
type name value
custom Gold Pass Rate 0.96

privacy-counsel-ko-8b (v4-rebalanced)

Korean PIPA (Personal Information Protection Act) consulting LoRA adapter for Qwen3-8B, trained on 9,009 curated legal Q&A samples with 5-stage validation pipeline.

한국 개인정보 보호법(PIPA) 실무 Q&A에 최적화된 Qwen3-8B 기반 LoRA 파인튜닝 모델입니다. 답변은 [판단] → [법적 근거] → [실무 조치] → [추가확인질문] 4단 구조를 따르며, [법적 근거] 내부에 원칙 → 조건(트리거) → 예외 3단 구조를 사용합니다.

Best config: temperature=0.5, repetition_penalty=1.0 Score: 14.38 / 15 (5축), Gold 144/150 (96.0%) Evaluation: 2026-02-27 · 150-question gold set · 5-axis scoring v2.1


주요 특징

  • Qwen3-8B 기반 LoRA SFT (r=64, α=128, 7개 target modules)
  • 개인정보보호법 특화: 9,009건 한국어 법률 Q&A 데이터로 학습 (품질 기반 리밸런싱)
  • 5단 자동 검증 파이프라인: 구조/조문/수치/금지패턴/도메인격리 자동 검수
  • 원칙-조건-예외 3단 구조: 법적 판단의 조건부 뉘앙스를 체계적으로 전달
  • 상용 API 대비 압도적 우위: GPT-4o(7.99) 대비 +6.39점 (task-specific)

성능

5축 15점 평가 (150건 골드셋)

순위 모델 유형 총점/15 구조 법조항 내부 실무 표현 Gold Silver Fail
Claude Opus 4.6 ¹ 참조 15.00 3.00 3.00 3.00 3.00 3.00 150 0 0
1 v4-rebalanced SFT 14.38 2.96 2.66 2.95 2.93 2.87 144 2 4
2 v4 SFT 13.74 3.00 2.17 2.99 3.00 2.59 123 26 0
3 v3.1 SFT 13.21 2.99 2.19 2.95 2.98 2.10 97 52 1
4 v4-full SFT 12.65 3.00 2.23 3.00 3.00 1.42 67 82 1
5 v3 SFT 12.23 3.00 2.06 2.96 2.88 1.33 39 98 3
6 Qwen3-8B Base Base 10.01 2.92 2.46 0.32 2.11 2.19 14 1 60
7 GPT-4o ² API 7.99 3.00 2.81 0.00 1.79 1.31 0 0 138
8 Solar Pro ² API 7.99 2.91 2.15 0.00 1.89 1.04 0 0 142
9 Gemini Pro ² API 7.71 1.99 2.72 0.00 2.00 1.00 0 0 145

¹ Claude Opus 4.6: 채점 기준의 상한(reference oracle). 비교 대상이 아닌 참조 기준. ² 상용 API 모델: 본 평가는 한국 개인정보보호법 도메인 전문성과 특정 출력 형식을 동시에 요구하는 task-specific 벤치마크입니다. 내부구조 0점은 원칙/조건/예외 패턴이 프롬프트만으로 출력되지 않기 때문이며, 해당 모델들의 범용 능력과 직접 비교할 수 없습니다.

채점 기준 (5축 v2.1)

0점 1점 2점 3점
구조 섹션 없음 1-2섹션 3섹션 또는 금지섹션 포함 4섹션 완전 + 금지섹션 없음
법조항 없음 제N조 존재 풀인용(OO법 제N조) 풀인용 + MIN_CORE 정합 + 시행령
내부구조 없음 1-2개 원칙/조건/예외 3개 3개 + 예외 실질 내용
실무 없음 액션 1-2개 액션 3개+ 즉시/단기/재발방지 3단계 + 액션 3개+
표현 금지패턴+CJK 금지패턴 없음 조건부 secondary 조건부 primary(다만) + 무오염

Gold: ≥12.5/15 AND 전 게이트 통과 · Silver: ≥11.5 · Bronze: ≥10.0 내부 개발 과정에서는 3축 9점(구조/정확/실무) 스케일도 병행 운용하며, 두 스케일 간 직접 환산 관계는 없습니다.

v4-rebalanced 도메인별 성능

도메인 문항 총점/15 구조 법조항 내부 실무 표현 Gold 시행령 다만
국외이전 20 14.75 3.00 2.75 3.00 3.00 3.00 20/20 75% 100%
위탁_처리 25 14.48 3.00 2.60 3.00 3.00 2.88 24/25 68% 100%
유출_대응 30 14.43 3.00 2.63 3.00 3.00 2.80 30/30 63% 90%
제3자_제공 25 14.40 3.00 2.48 3.00 3.00 2.92 24/25 48% 96%
기타 ³ 20 14.30 2.90 2.85 2.90 2.85 2.80 18/20 85% 90%
동의_수집 30 14.03 2.87 2.70 2.83 2.77 2.87 28/30 70% 93%

³ 기타: 파기, 안전조치, CCTV, 정보주체 권리, ISMS-P, 거버넌스, 벌칙 등 포함

품질 메트릭 (모델 출력 기준)

모델 유형 평균길이 시행령% 다만% 내부구조% 3단계% 금지패턴
Claude Opus 4.6 참조 600 100% 100% 100% 100% 0건
v4-rebalanced SFT 721 67% 95% 98% 98% 1건
v4 SFT 615 17% 78% 99% 100% 1건
v3.1 SFT 505 19% 49% 98% 99% 0건
v4-full SFT 494 23% 13% 100% 100% 1건
v3 SFT 517 9% 9% 99% 100% 1건
Qwen3-8B Base Base 1255 77% 70% 11% 95% 20건
GPT-4o API 760 45% 70% 0% 0% 29건
Solar Pro API 1409 30% 29% 0% 0% 53건
Gemini Pro API 1522 35% 25% 0% 0% 42건

시행령%: 관련 시행령 동시 인용 비율, 다만%: 조건부 표현("다만,") 포함 비율, 내부구조%: 원칙/조건/예외 3단 포함 비율, 3단계%: 즉시/단기/재발방지 구분 비율


사용법

설치

pip install transformers torch accelerate
# LoRA adapter 직접 로드 시:
pip install peft

추론 (Merged 모델)

from transformers import AutoModelForCausalLM, AutoTokenizer

model_name = "cywellai/privacy-counsel-ko-8b"

tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype="bfloat16",
    device_map="auto",
    trust_remote_code=True,
)

SYSTEM_PROMPT = """당신은 대한민국 개인정보보호법 전문 상담사입니다.
질문에 대해 [판단], [법적 근거], [실무 조치], [추가확인질문] 형식으로 구조화된 답변을 제공합니다.
모든 답변은 관련 법조항을 정확히 인용하고, 조건부 표현을 사용하여 법적 판단의 뉘앙스를 전달합니다."""

messages = [
    {"role": "system", "content": SYSTEM_PROMPT},
    {"role": "user", "content": "소규모 온라인 쇼핑몰에서 고객 이름과 전화번호를 수집하려 합니다. 어떤 절차가 필요한가요?"},
]

text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(text, return_tensors="pt").to(model.device)

outputs = model.generate(
    **inputs,
    max_new_tokens=1500,
    temperature=0.5,
    top_p=0.9,
    repetition_penalty=1.0,
    do_sample=True,
)

response = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
print(response)

추론 (LoRA 어댑터)

from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel

base_model_name = "Qwen/Qwen3-8B"
adapter_name = "cywellai/privacy-counsel-ko-8b-lora"

tokenizer = AutoTokenizer.from_pretrained(base_model_name, trust_remote_code=True)
base_model = AutoModelForCausalLM.from_pretrained(
    base_model_name,
    torch_dtype="bfloat16",
    device_map="auto",
    trust_remote_code=True,
)
model = PeftModel.from_pretrained(base_model, adapter_name)

# 이후 동일한 방식으로 추론

vLLM 추론 (권장)

from vllm import LLM, SamplingParams

llm = LLM(
    model="cywellai/privacy-counsel-ko-8b",
    trust_remote_code=True,
    max_model_len=2048,
    gpu_memory_utilization=0.5,
)

sampling = SamplingParams(temperature=0.5, repetition_penalty=1.0, max_tokens=1500)

# tokenizer.apply_chat_template()으로 프롬프트 구성 후
outputs = llm.generate([prompt], sampling)
print(outputs[0].outputs[0].text)

추론 파라미터 가이드

파라미터 권장 값 비고
temperature 0.5 최적 균형 (0.3: 보수적, 0.7+: 정확도 하락)
repetition_penalty 1.0 1.15는 정확도 순손실
top_p 0.9 표준 설정
max_new_tokens 1500 평균 응답 ~720자

출력 형식

아래 시스템 프롬프트와 함께 사용할 때 4단 구조가 안정적으로 출력됩니다. 시스템 프롬프트 없이도 4섹션이 출력되는 경우가 있으나, 최적 결과를 위해 시스템 프롬프트 사용을 권장합니다.

[판단]
개인정보 수집 시 정보주체에게 고지해야 하는 필수 항목은 수집 목적, 수집 항목,
보유 및 이용 기간, 동의 거부권 및 거부 시 불이익 등을 포함해야 합니다.

[법적 근거]
• 원칙: 개인정보 보호법 제15조(개인정보의 수집·이용)에 따라 개인정보를
  수집하거나 이용할 때 정보주체에게 고지해야 합니다.
• 조건(트리거): 수집 목적, 수집 항목, 보유 및 이용 기간, 동의 거부권 및
  거부 시 불이익 등의 내용을 명확히 고지해야 합니다.
  (개인정보 보호법 제15조, 시행령 제17조)
• 예외/주의: 다만, 법률에 특별한 규정이 있는 경우나 정보주체의 권리·이익을
  침해하지 않는 범위에서 고지를 생략할 수 있습니다.

[실무 조치]
• 즉시: 수집 목적, 항목, 보유기간, 동의 거부권 등의 내용을 문서화하여 준비
• 단기: 정보주체에게 해당 내용을 명확히 고지하고 동의를 받음
• 재발방지: 개인정보 수집 및 이용 절차를 정기적으로 검토하고 필요 시 개선

[추가확인질문]
• 수집하려는 개인정보의 종류와 목적은 무엇인가요?
• 수집한 개인정보의 보유 및 이용 기간은 어떻게 설정되어 있나요?
• 동의 거부 시 정보주체에게 발생할 수 있는 불이익은 무엇인가요?

학습 상세

데이터 리밸런싱 전략

v4-full 학습 데이터(14,088건)에서 품질 기반 필터링과 72B 교사 모델 합성을 거쳐 9,009건으로 리밸런싱했습니다.

품질 지표 리밸런싱 전 (14,088건) 리밸런싱 후 (9,009건) 변화
시행령 인용 포함 비율 10.0% 47.6% +37.6%p
다만 패턴 포함 비율 16.1% 56.4% +40.3%p
3단계 실무 포함 비율 18.4% 60.6% +42.2%p
풀 법조항 인용 비율 46.7% 96.1% +49.4%p
법조항 점수 (5축) 2.17 (v4) 2.66 +0.49
표현 점수 (5축) 2.59 (v4) 2.87 +0.28

모델 개요

항목 내용
베이스 모델 Qwen/Qwen3-8B (원본 사전학습 모델)
학습 방식 LoRA (BF16 full precision, rank=64)
학습 가능 파라미터 174.6M / 8.37B (2.09%)
학습 데이터 9,009건 (품질 기반 리밸런싱 + 72B 합성)
검증 데이터 900건 (층화 샘플링 재구축)
학습 시간 ~70분 (NVIDIA H200 143GB)
최종 평가 손실 0.3737
토큰 정확도 88.82%
라이선스 Apache 2.0 (Qwen3 라이선스 준수)

LoRA 설정

항목
LoRA rank 64
LoRA alpha 128
LoRA dropout 0.05
Target modules q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj
Trainable params ~174M / 8B (2.2%)

학습 파라미터

항목
Base model Qwen/Qwen3-8B (원본 사전학습 모델)
Learning rate 5e-5 (cosine scheduler, warmup 10%)
Epochs 3
Batch size per_device 8 × gradient_accumulation 4 = effective 32
Max sequence length 2048
Training data 9,009건
Total steps 846
Eval/save every 200 steps
Framework TRL 0.27.0, Transformers 4.57.6, PyTorch 2.6.0

학습 데이터 구성

train.jsonl (9,009건)
├── v3_final 원본 (품질 필터 통과): 5,213건 (57.9%)
├── Phase3-v2 합성 (72B 교사 모델): 1,835건 (20.4%)
├── Phase3-v3 합성 (72B 교사 모델): 1,524건 (16.9%)
└── v4_500 (정확도 타겟 보강):       437건 ( 4.9%)

데이터 파이프라인:

  1. Phase 1+2 — v4-full 14,088건에서 4개 품질 지표로 스코어링 + 거버넌스 다운샘플 → 6,595건 유지
  2. Phase 3 — Qwen2.5-72B-Instruct(FP8, vLLM)로 부족 도메인 합성 → 3,743건 생성
  3. Phase 4 — 합산(10,338건) + 약칭 정규화
  4. Phase 5 — 마크다운 오염 제거, 중국어 잔류 삭제, 중복 제거 → 최종 9,009건

학습 곡선

Step Epoch Train Loss Eval Loss Token Accuracy
50 0.18 1.2361 - 72.14%
200 0.71 0.4533 0.4662 86.39%
400 1.42 - 0.4062 87.86%
600 2.13 0.3343 0.3817 88.58%
800 2.84 0.3245 0.3737 88.82%
846 (final) 3.00 - 0.3737 88.82%

데이터 품질 관리

단계 방법
자동 검증 5단 파이프라인 (구조/조문/수치/금지패턴/도메인격리)
조문 검증 MIN_CORE 필수 조문 + 도메인별 확장 허용 목록 대조
골드셋 누출 차단 SHA-256 해시 기반 자동 차단 (gold_leak_guard)
수동 검수 카테고리별 10개씩 = 100개 샘플링 검수

아키텍처

Architecture: Qwen3ForCausalLM
Hidden Size: 4,096
Num Layers: 36
Attention Heads: 32 (GQA, KV Heads: 8)
Head Dimension: 128
Intermediate Size: 12,288
Activation: SiLU
Vocab Size: 151,936
Max Position Embeddings: 40,960
RoPE Theta: 1,000,000
Dtype: bfloat16

모델 개발 이력

본 모델은 다수의 반복 학습을 거친 최종 산출물입니다. 모든 버전은 Qwen3-8B 원본에서 독립적으로 LoRA 학습되었습니다.

버전 날짜 데이터 베이스 모델 LR max_seq 5축 총점 Gold%
v3 2026-02-08 13,631 Qwen3-8B 5e-5 1024 12.23 26%
v3.1 2026-02-10 13,631 Qwen3-8B 5e-5 1024 13.21 65%
v4 2026-02-23 1,491 v3.1-merged 3e-5 1024 13.74 82%
v4-full 2026-02-23 14,088 Qwen3-8B 5e-5 1024 12.65 45%
v4-rebalanced 2026-02-27 9,009 Qwen3-8B 5e-5 2048 14.38 96%

모델 진화 추이

전환점 총점 변화 핵심 원인
Base → v3 +2.23 SFT 형식 학습 (내부구조 0.32→2.96, 실무 2.11→2.88)
v3 → v3.1 +0.97 표현 품질 향상 (1.33→2.10)
v3.1 → v4 +0.53 법조항 정확도 + 표현 동시 개선
v4 → v4-full -1.09 데이터 확장 시 표현 품질 희석 (2.59→1.42)
v4 → v4-rebalanced +0.64 리밸런싱 효과 (법조항 +0.49, 표현 +0.28)

관련 리소스


제한 사항

법적 정확도:

  • 5축 법조항 점수 2.66/3 — 최대 병목 축. MIN_CORE 정합 + 시행령 동시 인용이 부족한 경우 존재
  • 모델 출력의 시행령 동시 인용률 67% — 나머지 33%는 본법만 인용
  • 모델 출력의 조건부 표현("다만,") 포함률 95% — 잔여 5%에서 단정적 표현 발생 가능
  • 도메인별 편차: 제3자_제공(시행령 48%)이 가장 낮고, 기타(85%)가 가장 높음

입력 처리:

  • 비표준 약칭(예: "개보법") 사용 시 표준 용어로 정규화 필요
  • 학습 데이터 기준 시점 이후 법령 개정 사항은 미반영

개선 로드맵:

  1. 시행령 동시 인용률 67% → 85%+ (P0)
  2. 법조항 점수 2.66 → 2.85+ (P1)
  3. 기타 도메인(파기/ISMS-P 등) 세분화 학습 (P2)

하드웨어

  • 학습: NVIDIA H200 143GB × 1, ~70분 (4,240초)
  • 추론 (최소): GPU VRAM 16GB 이상 (BF16 기준)
  • 추론 (권장): GPU VRAM 24GB 이상

평가 조건

항목
골드셋 150문항 (유출30, 동의30, 위탁25, 제3자25, 국외20, 기타20)
난이도 분포 기본 54, 예외 46, 경계 50
내부 모델 생성 설정 temperature=0.5, repetition_penalty=1.0
채점 모델 Claude Opus 4.6 (5축 v2.1 rubric)
게이트 체크 4섹션, 법조항존재, 금지패턴없음, CJK없음, 200자이상
Gold 기준 총점 ≥12.5/15 AND 전 게이트 통과
Silver 기준 총점 ≥11.5/15
Bronze 기준 총점 ≥10.0/15

Disclaimer

본 모델은 법률 자문을 대체하지 않습니다.

이 모델의 출력은 개인정보보호 실무 참고용으로만 사용해야 하며, 법적 구속력이 있는 판단이나 자문을 구성하지 않습니다. 고위험 의사결정(유출 통지·신고, 국외이전 계약, 과징금 대응 등)은 반드시 법률 전문가의 검토를 거쳐야 합니다.

개인정보 보호법 및 관련 법령은 개정될 수 있으며, 본 모델의 학습 데이터가 최신 법령을 완전히 반영하지 못할 수 있습니다.


Safety & Privacy

  • PII 입력 최소화: 실명·연락처·주민번호 등은 입력하지 마세요
  • 사례 데이터 가명/마스킹: 로그·공유·재학습 시 동일 원칙 적용
  • 출력 검증 권장: 고위험 의사결정은 내부 체크리스트로 재검토

Changelog

날짜 내용
2026-02-08 v3 공개 (13,631건, 12.23/15)
2026-02-10 v3.1 공개 (13.21/15, Gold 65%)
2026-02-23 v4 / v4-full 공개
2026-02-27 v4-rebalanced 공개 (14.38/15, Gold 96%)
2026-03-01 Model Card v2: 실제 학습 설정 반영, 5축 9개 모델 비교 통합

Citation

@misc{privacy-counsel-ko-8b-v4,
  title   = {privacy-counsel-ko-8b (v4-rebalanced):
             A Fine-tuned Qwen3-8B for Korean PIPA Consulting},
  author  = {CywellAI},
  year    = {2026},
  note    = {LoRA SFT on Qwen3-8B for Korean Personal Information Protection Act Q\&A.
             5-axis 15-point evaluation: 14.38/15, Gold 96\% on 150-question gold set.
             Outperforms GPT-4o, Solar Pro, Gemini Pro on task-specific benchmark.},
  url     = {https://huggingface.co/cywellai/privacy-counsel-ko-8b}
}

License

Apache 2.0 — Qwen3 라이선스 준수.