Meow-Clovax-v3

title_page

Overview

Meow-Clovax-v3는 카카오테크 부트캠프 팀 프로젝트의 일환으로 개발된 경량 한국어 언어 모델입니다.
네이버의 HyperCLOVAX-SEED-Text-Instruct-1.5B를 기반으로 SNS 서비스 환경에 최적화되어,
게시글이나 댓글의 말투를 동물(고양이, 강아지)의 스타일과 다양한 감정을 담아 자연스럽게 변환하도록
특별히 설계되었습니다. 팀원들의 협력으로 구축된 약 1만 2천 개의 데이터셋을 통해, 실제 사용자들이
쓰는 문장들을 보다 재미있고 감정적으로 풍부한 형태로 바꿔주는 것이 목표입니다.


🧠 Model Details

naver-hyperclovax/HyperCLOVAX-SEED-Text-Instruct-1.5B를 기반으로 Supervised Finetuning(SFT) 방식으로 학습되었습니다.
nick_name : haebo/Meow-HyperCLOVAX-1.5B_SFT-FFT_fp32_0710cfe_drop3_epoch2

항목 설명
Base Model HyperCLOVAX-SEED-Text-Instruct-1.5B
Fine-tuning Method Supervised Finetuning (SFT)
Model Type Decoder-only
Language Korean (primary)
Parameters 1.5B
Precision fp16 / fp32
Version v3
Framework Transformers
license hyperclovax-seed

📦 Training Details

  • Dataset: 감정 및 동물 말투에 따라 수집·합성된 style transfer 데이터셋 (비공개)
    • 각 샘플은 content, emotion, post_type, transformed_content 필드로 구성된 jsonl 데이터셋
  • Task: Instruct-style fine-tuning (prompt → transformed response)
  • Prompt 구조:
    • system: "너는 동물 유형과 감정에 맞게 문장을 자연스럽게 변환하는 전문가야."
    • user: "다음 문장을 [감정] [동물] 말투로 바꿔줘.\nInput: ...\nOutput:"
    • assistant: 변환문 + EOS
  • Epochs: 2
  • Learning rate and Optimizer:
    • Learning Rate: 2e-5 (0.00002)
    • Optimizer: AdamW (adam_beta1=0.9, adam_beta2=0.98, adam_epsilon=1e-8)
    • Weight Decay: 0.01
    • Dropout: 0.3
  • Evaluation: BLEU, KoBERTScore, Perplexity, Quality Score, Type Score, 수동 평가 등 사용
  • Training Infrastructure: Google Colab Pro+ (A100)
  • Instruction Infrastructure: Google Colab Pro+ (T4) / GCP T4

🎯 Intended Use

  • 감정 기반 말투 변환 서비스 (예: 고양이 말투 + 화남 → “왜 건드냐옹! 안 건드렸으면 좋겠다옹!”)
  • SNS 캐릭터 보정, 댓글 자동 응답, 감정 기반 챗봇 등에 활용 가능
  • 사용자 프롬프트 스타일 변경 or 톤 조정 등에 활용
  • 다양한 비문에 대해서도 견고한 답변 가능

⚠️ Limitations

  • 사실 기반 생성보다는 말투 스타일링에 초점을 맞춤
  • 부정확하거나 비논리적인 문장을 생성할 수 있음
  • 실제 감정 상태 분석은 수행하지 않음
  • 비상업적 용도로만 사용 가능 (라이선스 참조)

🛠️ How to Use

from transformers import AutoTokenizer, AutoModelForCausalLM

model_id = "haebo/meow-clovax-v3"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)

prompt = (
    "<|system|>\n"
    "너는 동물 유형과 감정에 맞게 문장을 자연스럽게 변환하는 전문가야.\n"
    "<|user|>\n"
    "다음 문장을 기쁜 고양이 말투로 바꿔줘.\n"
    "Input: 오늘은 정말 좋은 하루였어!\n"
    "Output:\n"
    "<|assistant|>\n"
)
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=128)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

🧪 평가 기준 및 자동화

  • BLEU Score: n-gram 기반 표면 유사도 (0~1, 높을수록 유사)
  • KoBERTScore: 의미적 유사도(BERT 임베딩, 0.8↑ 의미 유사)
  • Perplexity: 언어모델 자연스러움(60~180 구간 1.0점)
  • Quality Score: 금지어, 반복, 허용 문자, 이모지 등 서비스 품질
  • Type Score: 목표 동물 말투 패턴 일치(1.0: 완벽, 0.2: 혼합, 0.1: 반대, 0: 없음)
  • 데이터 클랜징: 한글/영문/숫자/주요구두점/이모지만 허용, URL·불용문자·다중공백·과도반복 제거
  • 데이터 필터링: 5가지 평가 기준에 따른 threshold를 설정 후 미달된 데이터 삭제

🗂️ 데이터셋 설명

본 프로젝트의 데이터셋은 감정 및 동물 말투 스타일 변환을 위해 설계된 한국어 jsonl 포맷입니다. 각 샘플은 다음과 같은 4개 필드로 구성되어 있습니다.

필드명 설명 예시 값
content 원본 문장 (일상 한국어) 오늘은 정말 좋은 하루였어.
emotion 감정 레이블 (영문) happy
post_type 동물 유형 (영문) cat
transformed_content 감정 및 동물 말투로 변환된 문장 오늘은 정말 좋은 하루였다냥! 😸
  • 예시
{
  "content": "오늘도 좋은 하루! 웃는 일만 가득하세요!",
  "emotion": "happy",
  "post_type": "cat",
  "transformed_content": "🐾 오늘도 좋은 하루냥! 냐하하! 웃는 일만 가득하길 바란다냥! 💛"
}
  • ver3 한글 매핑

ver3에서는 감정(emotion)과 동물(post_type) 필드를 한글로 매핑하여 프롬프트 및 변환문에 자연스럽게 반영합니다.

POST_TYPE_KR = {
    "cat": "고양이",
    "dog": "강아지"
}
EMOTION_KR = {
    "normal": "평범한",
    "happy": "기쁜",
    "sad": "슬픈",
    "angry": "화난",
    "grumpy": "까칠한",
    "curious": "호기심 많은"
}

예시 프롬프트:
"다음 문장을 기쁜 고양이 말투로 바꿔줘.\nInput: ...\nOutput:"

  • 데이터셋 특징

    • 감정/동물 스타일별 다양한 어미, 의성어, 이모지, 추임새 반영
    • 데이터 클랜징: 한글/영문/숫자/주요구두점/이모지만 허용, URL·불용문자·다중공백·과도반복 제거
    • 평가 자동화: BLEU, KoBERTScore, Perplexity, Quality, Type Score 등과 연동
    • 서비스 품질: 금지어, 반복성, 이모지 활용 등 실제 서비스 기준 품질 관리

사용된 데이터셋 상세 설명

본 모델의 파인튜닝에는 여러 단계의 데이터셋을 통합·정제한 최종 데이터셋이 사용되었습니다.
본 데이터셋은 실제 유저/댓글/합성/비문/safety 데이터를 통합·정제하여, 다양한 감정과 동물 말투 변환에 최적화되어 있습니다.

  • 총 샘플 수: 11,845개
  • 포함 데이터:
    • dataset_0515_made (342개): 초기 유저 데이터
    • dataset_0527_made (818개): 유저 게시글 기반 감정별/동물별 데이터
    • dataset_0530_made (2,986개): 감정별 증폭된 게시글 기반 데이터
    • dataset_0613_made (681개): 유저 댓글 입력에 대한 규칙 기반 변환(cat)
    • dataset_0620_made (681개): 유저 댓글 입력에 대한 규칙 기반 변환(dog)
    • dataset_0622_made (17,596개): Gemini로 생성된 합성 인풋 말투 변환
    • dataset_0709_made (465개): 많이 사용되는 비문 + safety 데이터
  • 주된 구성: 유저 데이터, 댓글 데이터, 합성 데이터, 비문, safety 문장 등 다양한 유형 포함
  • 전처리 사항:
    • 중복 제거
    • 클랜징/필터링 반영
    • 부적절한 데이터 수기 제거
  • 감정 범위: normal, happy, sad, grumpy, curious, angry (6종)
  • 동물 유형: cat, dog (2종)
  • 데이터 구조:
    • 각 샘플은 content, emotion, post_type, transformed_content 필드로 구성된 JSONL 포맷
  • 특징:
    • Normal 감정은 댓글 데이터(0613, 0620)만 사용
    • 다양한 길이/유형의 문장 포함
    • 0709 데이터는 클랜징/필터링 처리하지 않음
    • content/emotion/post_type/transformed_content의 4필드로 구성
    • Jsonl 형태의 데이터

평가 결과

모델명 카테고리 학습 방식 주요 장점 주요 한계 데이터 특징
gemini_v1 Gemini 프롬프트 기반 튜닝 동물 유형별 말투 안정적, 자연스러움 대답 형태, 말투 변환 한계 유형별 설명 포함
gemini_v2 Gemini 프롬프트 기반 튜닝 감정별 변환 개선 불필요한 내용 포함 유형별 상황 추가
meow-base ClovaX - 원문 재작성 말투 변환 없음 -
meow-v1 ClovaX Instruct 구조 맞춤 동물 유형 안정적 반영 감정 변환 어려움, 품질 저하 사용자 데이터
meow-v2 ClovaX SFT 구조 + 필터링 의미 유지/반영 비정형 글 변환 한계 합성 데이터 추가
meow-v3 ClovaX 프롬프트 한글화+클랜징+dropout 견고한 변환, 다양한 상황 대응 의미 없는 요청 취약 비문 데이터 추가
모델명 Kobert BLEU Perplexity Type Quality 종합 평균(%)
gemini_v1 0.68 (0.00%) 0.32 (0.00%) 0.90 (0.00%) 0.99 (0.00%) 0.87 (0.00%) 0.00%
gemini_v2 0.64 (−5.78%) 0.31 (−3.33%) 0.94 (+4.07%) 0.97 (−1.36%) 0.84 (−4.12%) −1.66%
meow-v1 0.56 (−18.26%) 0.17 (−46.23%) 0.38 (−57.58%) 0.96 (−2.71%) 0.57 (−34.65%) −28.38%
meow-v2 0.71 (+4.04%) 0.46 (+41.29%) 0.83 (−8.47%) 0.98 (−0.68%) 0.95 (+9.23%) +5.41%
meow-v3 0.75 (+9.87%) 0.55 (+71.14%) 0.85 (−6.46%) 0.94 (−5.06%) 0.89 (+2.23%) +8.10%

genini clovax


📚 라이선스 및 활용

  • 연구/비상업적 용도 우선, 상업적 활용은 별도 문의
  • 데이터/모델/코드 재배포 시 출처 표기 권장

Downloads last month
405
Safetensors
Model size
1.59B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for haebo/meow-clovax-v3

Finetuned
(9)
this model
Quantizations
1 model

Dataset used to train haebo/meow-clovax-v3