[AI] 파인튜닝 - 그런데... jsonl 파일은 조상님이 만들어주냐?

늘 공부하는 괴짜·2025년 5월 11일
0

AI : Fine Tuning

목록 보기
2/15

한국말로는 "지시학습 데이터셋" 이라고 한다.
GPT 에게 물어봤더니 널리 사용되는 데이터셋이 몇개 있다고 한다.
그걸 한번 알아보자.

1. Self-Instruct

Princeton & AI2의 논문 "Self-Instruct" 을 기반으로 만듬.

형식: { "instruction": ..., "instances": [{ "input": ..., "output": ... }] }

특징: instruction을 기반으로 GPT-3가 스스로 데이터를 생성하는 방식. 매우 다양한 작업 포함 (QA, 추론, 요약, 분류 등).

활용 팁: 변형을 통해 수천 개의 다양한 태스크를 만들 수 있어 확장성 좋음.

2. OpenOrca

OpenAccess AI Collective가 만든, Orca 모델 학습을 위한 dataset

형식: Microsoft의 FLAN, Dolly, ShareGPT 등 다양한 소스 기반. system_prompt, user, assistant 구조 포함.

특징: 더 현실적인 멀티턴 대화 데이터와 reasoning task가 많음.

활용 팁: Llama 계열 모델이나 복잡한 멀티턴 instruction-tuning에 적합.

3. FLAN Collection

Google FLAN (T5/PaLM용 대규모 mixture dataset)

형식: 다양한 task 별 포맷 (input, target 중심). HuggingFace t5_task_prefix 형식 사용.

특징: 학습 task 종류가 매우 다양하고 실제 benchmark task 기반 (MMLU, GSM8K 등 포함).

활용 팁: instruction-following generalization에 가장 강력. FLAN-T5나 PaLM 스타일 모델에 적합.

4. Summary

이름구성 형태특징사용 모델 예시
FLANTask mixture가장 범용적, 고성능FLAN-T5, PaLM, LLaMA3
OpenOrca멀티턴 대화 + 추론고품질, 대화형 추론 taskNous-Hermes, LLaMA3, Mixtral
Self-Instruct단일 instruction간단하고 빠른 학습Alpaca, LLaMA2-lite 등

5. 나의 선택 : OpenOrca

https://huggingface.co/datasets/Open-Orca/OpenOrca

대화형 AI 모델을 개선하기 위한 데이터셋으로, 대화 기반 태스크에 강점을 가지고 있음.
자연스러운 대화체 모델링에 집중하기 때문에 질문-응답뿐만 아니라 연속적인 대화 흐름을 다룰 수 있다고 함.

6. ollama + OpenOrca 를 이용한 질문 생성 샘플

결국 ollama 까지 오는구나...

import requests

def ask_openorca(prompt, model='openorca'):
    response = requests.post(
        'http://localhost:11434/api/generate',
        json={
            'model': model,
            'prompt': prompt,
            'stream': False
        }
    )
    return response.json()['response']

# 입력 텍스트
context = "물은 수소 2개와 산소 1개로 이루어져 있습니다."

# 질문 생성 프롬프트 구성
prompt = f"""다음 문장을 읽고 3개의 질문을 생성하세요.

문장: "{context}"

질문:"""

# OpenOrca 호출
output = ask_openorca(prompt)
print("🔎 생성된 질문:\n", output)

Finally

다운로드 받은 TinyLlama-1.1B-Chat-v1.0 모델을 OpenOrca 로 질문/대답 을 만들어서 훈련하는 걸로 결정!

profile
인공지능이라는 옷을 입었습니다. 뭔가 멋지면서도 잘 맞습니다.

0개의 댓글