JEJUMA-002

  • LLM으둜 μ‚¬λΌμ Έκ°€λŠ” 우리 λ°©μ–Έ 지킀기 ν”„λ‘œμ νŠΈ2: μ „κ΅­λ°©μ–Έ

μ™œ μ‹œμž‘ν•˜κ²Œ λ˜μ—ˆλ‚˜μš”?

λΉ λ₯΄κ²Œ μ‚¬λΌμ Έκ°€λŠ” 지역방언

  • μ—¬λŸ¬ 지역 방언듀이 사라지고 μžˆμŠ΅λ‹ˆλ‹€.
  • 지역에 μ‚¬λŠ” μ Šμ€μ΄λ“€λ„ 지역 λ°©μ–Έλ³΄λ‹€λŠ” ν‘œμ€€μ–΄λ₯Ό μ‚¬μš©ν•˜λŠ” κ²½ν–₯이 강해지고 μžˆμŠ΅λ‹ˆλ‹€.
  • 특히, νƒ€μ§€μ—­κ³Όμ˜ ꡐλ₯˜κ°€ ν™œλ°œν•΄μ§€λ©΄μ„œ μ Šμ€ 측에선 방언보단 ν‘œμ€€μ–΄λ₯Ό μ„ ν˜Έν•˜λŠ” ν˜„μƒμ΄ λ‚˜νƒ€λ‚©λ‹ˆλ‹€.

지역방언에 μ•½ν•œ μ–Έμ–΄λͺ¨λΈ

  • 온라인 μ†ŒμŠ€λŠ” ν‘œμ€€μ–΄λ‘œ κ΅¬μ„±λ˜μ–΄ μžˆκΈ°μ—, μžλ£Œκ°€ 적은 지역방언을 잘 λͺ¨λ¦…λ‹ˆλ‹€.
  • 특히 μ œμ£Όμ–΄λŠ” ν‘œμ€€μ–΄μ™€ 차이가 크기 λ•Œλ¬Έμ—, 유λͺ…ν•œ λ‹¨μ–΄λ‚˜ λ¬Έμž₯ μ™Έμ—λŠ” λͺ¨λΈμ΄ 이해할 수 μ—†μŠ΅λ‹ˆλ‹€.
  • κ·Έ 외에 λ‹€λ₯Έ 방언듀도 점차 μ–΅μ–‘λ§Œ 남고 단어듀이 μ†Œμ‹€λ˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

μ–΄λ–»κ²Œ 이λ₯Ό ν•΄κ²°ν–ˆλ‚˜μš”?

  • μ–Έμ–΄λͺ¨λΈμ„ 톡해 μ–΄λ €μš΄ 방언을 ν‘œμ€€μ–΄λ‘œ λ³€κ²½ν•˜μ—¬ 방언이 μžŠν˜€μ§€μ§€ μ•Šλ„λ‘ ν•©λ‹ˆλ‹€.
  • μ–Έμ–΄λͺ¨λΈμ„ 톡해 ν‘œμ€€μ–΄μ˜ λ°©μ–Έ 버전을 μƒμ„±ν•˜μ—¬ 확인할 수 μžˆλ„λ‘ ν•©λ‹ˆλ‹€.
  • 방언을 μž…λ ₯ν•˜λ©΄ μ–΄λŠ 지역 방언인지 μœ μΆ”ν•  수 μžˆλ„λ‘ ν•©λ‹ˆλ‹€.
  • μ–Έμ–΄λͺ¨λΈμ„ μ‚¬μš©ν•œ μ΄μœ λŠ” 기쑴에 ν•™μŠ΅λœ λ‹€μ–‘ν•œ λ‚΄μš©μ„ κ·ΈλŒ€λ‘œ μ΄μ–΄κ°ˆ 수 μžˆλ„λ‘ ν•˜κΈ° μœ„ν•¨μž…λ‹ˆλ‹€.

κ°œλ°œν•œ μ–Έμ–΄λͺ¨λΈμ— λŒ€ν•œ μ„€λͺ…

  • 각 지역 λ°©μ–Έ 데이터λ₯Ό λ°”νƒ•μœΌλ‘œ Llama3.1을 λ‹€μ–‘ν•œ ν…ŒμŠ€ν¬κ°€ κ°€λŠ₯ν•˜λ„λ‘ νŒŒμΈνŠœλ‹ν•˜μ—¬, μ—¬λŸ¬ 지역 λ°©μ–Έκ³Ό κ΄€λ ¨λœ μ—¬λŸ¬ ν…ŒμŠ€ν¬λ₯Ό μˆ˜ν–‰ν•˜λ„λ‘ ν•©λ‹ˆλ‹€.
  • JEJUMA-002λŠ” ν˜„μž¬ λ°©μ–Έκ³Ό ν‘œμ€€μ–΄κ°„ λ³€κ²½, λ°©μ–Έ 탐지 λ“±μ˜ 역할을 μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • JEJUMA-002λ₯Ό λͺ¨λΈμ„ ν›ˆλ ¨ν•˜κΈ° μœ„ν•΄ μ•½ 500만개의 지역방언-μ„œμšΈλ§ νŽ˜μ–΄ 데이터λ₯Ό μˆ˜μ§‘ν•˜κ³ , κ·Έ 쀑 지역방언 잘 λ“€μ–΄λ‚œ 데이터λ₯Ό 평균 15λ§Œκ°œμ”© 총 75만개 μ„ λ³„ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • 이λ₯Ό λ°”νƒ•μœΌλ‘œ 총 4κ°€μ§€μ˜ ν…ŒμŠ€ν¬λ₯Ό μˆ˜ν–‰ν•˜λ„λ‘ ν›ˆλ ¨ 데이터λ₯Ό ν™•μž₯ν•˜μ˜€μœΌλ©°, μ΄λŠ” 총 μ•½ 200만개의 λ°μ΄ν„°μž…λ‹ˆλ‹€.
  • 각 방언별 데이터 λΉ„μœ¨κ³Ό ν˜•μ‹μ„ λ§žμΆ”κΈ° μœ„ν•΄, 직접 μˆ˜μ§‘ν•˜λŠ” λŒ€μ‹  μ˜€ν”ˆ 데이터λ₯Ό κ°€κ³΅ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • LlamaFactoryλ₯Ό 톡해 LoRA λ°©μ‹μœΌλ‘œ ν›ˆλ ¨ν•˜μ˜€μœΌλ©°, λͺ¨λ“  데이터에 λŒ€ν•΄ 1에폭 ν•™μŠ΅ν•˜μ˜€μŠ΅λ‹ˆλ‹€.
  • μ–΄λ €μš΄ λ°©μ–Έ(μ‚¬νˆ¬λ¦¬)에 λŒ€ν•΄μ„œ, gpt4o와 κ΅­μ‚° λͺ¨λΈμΈ μ—…μŠ€ν…Œμ΄μ§€ Solar, 넀이버 HCX 높은 λ²ˆμ—­ 정확도λ₯Ό λ³΄μž…λ‹ˆλ‹€.

제일 μ–΄λ €μš΄ μ œμ£Όμ–΄ ν…ŒμŠ€ν¬μ— λŒ€ν•œ μ˜ˆμ‹œ

μ œμ£Όμ–΄ -> ν‘œμ€€μ–΄

μž…λ ₯ λ¬Έμž₯ 자이 폴에 독솔 막 λ‚œ κ±° λ³΄λ‚œ μ–Έ μƒμ΄μš°λ‹€
μ •λ‹΅ 재 νŒ”μ— 닭살이 막 λ‚œ κ±° λ³΄λ‹ˆ, μΆ”μš΄ λͺ¨μ–‘이닀.
Upstage Solar 좜λ ₯ κ·Έ λ°”μœ„μ— 뱀이 λ‚˜νƒ€λ‚˜λŠ” κ±Έ λ³΄λ‹ˆκΉŒ 정말 λ†€λžλ‹€.
Naver HCX 좜λ ₯ 재의 풀에 λ…μ΄ˆκ°€ 마ꡬ λ‚œ 것을 λ³΄λ‹ˆ μ–΄λ¦° μ†Œλ‚˜λ¬΄μž…λ‹ˆλ‹€.
GPT-4o 좜λ ₯ μ €κΈ° λ°”μœ„μ— 독사가 막 λ‚˜νƒ€λ‚œ κ±Έ λ³΄λ‹ˆκΉŒ 정말 λ†€λžλ‹€.
JEJUMA-001 좜λ ₯ 재 νŒ”μ— 닭살이 막 λ‚œ κ±° λ³΄λ‹ˆ, μΆ”μš΄ λͺ¨μ–‘이닀.

ν‘œμ€€μ–΄ -> μ œμ£Όμ–΄

μž…λ ₯ λ¬Έμž₯ κ·€λ‚˜λ¬΄μ— κ·Έλƒ₯ κ°€μ„œ λ„ˆλ„€ 아버지쒀 찾아와라.
데이터셋 λ―ΈκΉ‘λ‚­ κ²½ 가심 λ„ˆλ„€ μ•„λ°© μ’€ 데령
Upstage Solar 좜λ ₯ κ·€ λ‚˜λ¬΄μ— κ°€μ„œ λ„€ 아버지λ₯Ό μ’€ 찾아와.
Naver HCX 좜λ ₯ 귀낭에 κ°• λŠλ„€ μ•„λ°© μ’€ 데령였라.
GPT-4o 좜λ ₯ κ·€λ‚˜λ¬΄μ— 걍 κ°€μ„œ ν–„μ‹  μ•„λ°© μ’€ 찾아와라.
JEJUMA-001 좜λ ₯ λ―ΈκΉ‘λ‚­ κ²½ 가심 λ„ˆλ„€ μ•„λ°© μ’€ μ΄žμ•„μ˜€λΌ.

μ–΄λ–»κ²Œ μ‚¬μš©ν•˜λ‚˜μš”?

  • μ •μ˜λœ νƒ¬ν”Œλ¦Ώμ—μ„œ dialect_to_standard, standard_to_dialect, detect_dialect, detect_dialect_and_convert 쀑 ν•˜λ‚˜λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • dialect_to_standard: 방언을 ν‘œμ€€μ–΄λ‘œ λ³€κ²½
  • standard_to_dialect: ν‘œμ€€μ–΄λ₯Ό λ°©μ–ΈμœΌλ‘œ λ³€κ²½
  • detect_dialect: λ°©μ–Έ μ’…λ₯˜ 감지
  • detect_dialect_and_convert: μžλ™μœΌλ‘œ λ°©μ–Έμ’…λ₯˜λ₯Ό κ°μ§€ν•˜μ—¬ ν‘œμ€€μ–΄λ‘œ λ³€κ²½
import transformers
import torch

model_id = "JEJUMA/JEJUMA-002"

pipeline = transformers.pipeline(
    "text-generation",
    model=model_id,
    model_kwargs={"torch_dtype": torch.bfloat16},
    device_map="auto",
)

terminators = [
    pipeline.tokenizer.eos_token_id,
    pipeline.tokenizer.convert_tokens_to_ids("<|eot_id|>")
]

class DialectPromptTemplate:
    @staticmethod
    def dialect_to_standard(text, region):
        return [{"role":"user", "content":f"Convert the following sentence or word which is {region}'s dialect to standard Korean: " + text},]

    @staticmethod
    def standard_to_dialect(text, region):
        return [{"role":"user", "content":f"Convert the following sentence or word which is standard Korean to {region}'s dialect: " + text},]

    @staticmethod
    def detect_dialect(text):
        return [{"role":"user", "content":"Detect the following sentence or word is standard, jeju, chungcheong, gangwon, gyeongsang, or jeonla's dialect: " + text},]

    @staticmethod
    def detect_dialect_and_convert(text):
        return [{"role":"user", "content":"Detect the following sentence or word is which dialect and convert the following sentence or word to standard Korean:" + text},]


outputs = pipeline(
    DialectPromptTemplate.dialect_to_standard("자이 폴에 독솔 막 λ‚œ κ±° λ³΄λ‚œ μ–Έ μƒμ΄μš°λ‹€", "jeju"),
    max_new_tokens=512,
    eos_token_id=terminators,
    do_sample=True,
    temperature=0.1,
    top_p=0.9,
)

print(outputs[0]["generated_text"][-1])

μΆ”ν›„ κ³„νš

  • JEJUMA-003λŠ” κ΅­λ‚΄μ˜ λͺ¨λ“  λ°©μ–Έ 데이터와 이λ₯Ό μ„€λͺ…ν•˜λŠ” ν…ŒμŠ€ν¬λ₯Ό λ°”νƒ•μœΌλ‘œ 데이터에 μ—†λŠ” λ°©μ–Έ(μ—°λ³€λ°©μ–Έ, λΆν•œμ–΄, 제3의 μ–Έμ–΄)λ₯Ό 일뢀 λ²ˆμ—­ν•  수 μžˆλ„λ‘ ν•  κ³„νšμž…λ‹ˆλ‹€.
  • JEJUMA-003이 λ³Έ 연ꡬ에 μ΅œμ’… 단계이며, 이λ₯Ό μœ„ν•΄ λ²ˆμ—­λͺ¨λΈμ΄λ‚˜ 더 μž‘μ€ λͺ¨λΈμ΄ μ•„λ‹ˆλΌ 8B 크기의 μ–Έμ–΄λͺ¨λΈμ„ μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.
  • JEJUMA-002λ₯Ό ν›ˆλ ¨ν•˜κΈ° μœ„ν•œ 데이터λ₯Ό μ›ν•˜μ‹œλ©΄, [이메일](mailto: acute.02-durable@icloud.com)둜 κ°„λ‹¨ν•œ μ†Œμ†κ³Ό μ‚¬μš© λͺ©μ μ„ λ§μ”€ν•΄μ£Όμ‹œλ©΄ λ‚΄λΆ€ μƒμ˜ν›„ μ „λ‹¬λ“œλ¦¬κ² μŠ΅λ‹ˆλ‹€.
Downloads last month
22
Safetensors
Model size
8.03B params
Tensor type
BF16
Β·
Inference Providers NEW
This model is not currently available via any of the supported Inference Providers.
The model cannot be deployed to the HF Inference API: The model has no library tag.

Model tree for JEJUMA/JEJUMA-002

Quantizations
1 model