K-Decision-9B v0.1

Korean-specialized decision model by ONYULTEA โ€” first public release.

K-Decision์€ ์ƒํƒœ(state)์™€ ํƒ€์ดํ•‘๋“œ ์งˆ๋ฌธ(typed questions)์„ ์ž…๋ ฅ๋ฐ›์•„, ๋ชจ๋“  ์˜ต์…˜์— ๊ฑธ์ณ ๋ณด์ •๋œ ํ™•๋ฅ  ๋ถ„ํฌ(calibrated probabilities) ๋ฅผ ๋ถ™์ธ ๊ตฌ์กฐํ™” ๊ฒฐ์ •์„ ๋‹จ์ผ forward ํŒจ์Šค๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒฝ๋Ÿ‰ ์˜์‚ฌ๊ฒฐ์ • ์—”์ง„์ž…๋‹ˆ๋‹ค. ์ผ๋ฐ˜ ์ฑ— LLM๊ณผ ๋‹ฌ๋ฆฌ ํ…์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•˜์ง€ ์•Š๊ณ , ๊ฐ ์งˆ๋ฌธ์˜ ์ •๋‹ต ์‹ฌ๋ณผ ๋กœ์ง“๋งŒ ์˜ˆ์ธกํ•ฉ๋‹ˆ๋‹ค(System One / Jev ํ˜ธํ™˜).

์„ฑ๋Šฅ (Benchmarks)

๋ฒค์น˜๋งˆํฌ ์ ์ˆ˜ ๊ทœ๋ชจ
LocalLLaMA typed-decisions (test 400์ผ€์ด์Šค / 2,000๊ฒฐ์ •, fitted) 0.818 ์—์ด์ „ํŠธ ํŠธ๋ ˆ์ด์Šคยท๋ณด์•ˆยทCSยท์ธ๋ณด์ด์Šค 4๋„๋ฉ”์ธ 5์งˆ๋ฌธ
KoBEST 5ํƒœ์Šคํฌ ๋ณ€ํ™˜ (boolq/copa/hellaswag/sentineg/wic) 0.866 2,600๋ฌธํ•ญ
ํ•œ๊ตญ ์ƒํ™œ ๋„๋ฉ”์ธ ํ™€๋“œ์•„์›ƒ 0.997 ํ–‰์ •ยท์˜๋ฃŒยท์‡ผํ•‘CSยท์ƒํ™œ์ธํ”„๋ผยท๊ต์œกยท์ง์žฅยท์—์ด์ „ํŠธ 7๋„๋ฉ”์ธ
korean-jev-decision-index 0.635 64๊ฐœ ํ•œ๊ตญ ๋ฒค์น˜๋งˆํฌ ์†Œ์Šค 3,000๋ฌธํ•ญ
๋Œ€ํ•™ ๊ทœ์ • ์ค€๊ฑฐ ํŒ๋‹จ 0.791 ๊ทœ์ • 3์ข… ๊ธฐ๋ฐ˜ ์‹ ๊ทœ ํƒœ์Šคํฌ
Decision Index 0.3 ๊ณต๊ฐœ ์Šค์œ„ํŠธ ์ง€์ˆ˜ 30.7 (raw 44.8) 14๋งŒ ์š”์ฒญ, ์—๋Ÿฌ 0, ์ง€์—ฐ p50 168ms
  • ํ•™์Šตยท์„œ๋น™ ๋ชจ๋‘ ๋‹จ์ผ 24GB ์†Œ๋น„์ž GPU๋กœ ์ˆ˜ํ–‰ (int8 LoRA, r=32)
  • ํ™•๋ฅ  ๋ณด์ •: ECE 0.001 ์ˆ˜์ค€(๋„๋ฉ”์ธ ํ™€๋“œ์•„์›ƒ), ํƒ€์ž…๋ณ„ ์˜จ๋„ ํ”ผํŒ… ์ ์šฉ

Quickstart

1) ํ—ˆ๊น…ํŽ˜์ด์Šค transformers ์ง์ ‘ ์‚ฌ์šฉ

from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

model = AutoModelForCausalLM.from_pretrained(
    "ONYULTEA/K-Decision-9B", torch_dtype=torch.bfloat16, device_map="auto")
tok = AutoTokenizer.from_pretrained("ONYULTEA/K-Decision-9B")

2) /v1/systemone ์„œ๋ฒ„ (System One / Jev ํ˜ธํ™˜)

git clone https://github.com/onyultea/k-decision
python src/serve_systemone.py --merged ONYULTEA/K-Decision-9B --port 8111
// ์š”์ฒญ
{"model": "k-decision",
 "state": "๋ฏผ์› ์ ‘์ˆ˜: ๊ฐ€์Šค ๋ƒ„์ƒˆ๊ฐ€ ์‹ฌํ•˜๊ฒŒ ๋‚˜์š” (์ฝœ์„ผํ„ฐ)",
 "questions": {
   "route":  {"type": "choice", "instructions": "๋‹ด๋‹น ๋ถ€์„œ๋Š”?",
              "criteria": {"gas": "๊ฐ€์Šค์•ˆ์ „๊ณผ", "water": "์ƒํ•˜์ˆ˜๋„๊ณผ", "road": "๋„๋กœ๊ณผ"}},
   "urgent": {"type": "noul", "instructions": "๊ธด๊ธ‰ ์ฒ˜๋ฆฌ ๋Œ€์ƒ์ธ๊ฐ€?"}}}
// ์‘๋‹ต โ€” ๋ชจ๋“  ์˜ต์…˜์— ํ™•๋ฅ 
{"answers": {
   "route":  {"type": "choice", "choice": "gas",
              "probabilities": {"gas": 0.87, "water": 0.05, "road": 0.08}},
   "urgent": {"type": "noul", "noul": 0.93}}}

์งˆ๋ฌธ ํƒ€์ž…: choice(2~26์˜ต์…˜), noul(์˜ˆ/์•„๋‹ˆ์˜ค). Decision Index reproduction kitยทKev ํด๋ผ์ด์–ธํŠธ์™€ ํ˜ธํ™˜๋ฉ๋‹ˆ๋‹ค.

์ž‘๋™ ์›๋ฆฌ (Method)

  1. ๋งˆ์ปค ๋‹จ์ผํŒจ์Šค: ํ”„๋กฌํ”„ํŠธ์— JSON ์Šคํ‚ฌ๋ ˆํ†ค {"route":โ–ก,"urgent":โ–ก}์„ ๋ถ™์ด๊ณ  ๋งˆ์ปค(โ–ก) ์ง์ „ ์œ„์น˜์˜ ๋กœ์ง“์ด ํ•ด๋‹น ํ•„๋“œ์˜ ๊ฒฐ์ •์„ ์˜ˆ์ธก โ€” N๊ฐœ ํ•„๋“œ๊ฐ€ 1ํšŒ forward๋กœ ๋™์‹œ ๊ฒฐ์ • (๋””์ฝ”๋”ฉ ๋ฃจํ”„ ์—†์Œ)
  2. ์ œ์•ฝ ๋””์ฝ”๋”ฉ: ํ•ฉ๋ฒ•์  ์ •๋‹ต ์‹ฌ๋ณผ(A~Z / Y,N)๋กœ ๋กœ์ง“์„ ์ œํ•œํ•œ softmax โ†’ ๋ชจ๋“  ์˜ต์…˜์— ํ•ฉ๊ณ„ 1์˜ ํ™•๋ฅ  ๋ณด์žฅ
  3. ์บ˜๋ฆฌ๋ธŒ๋ ˆ์ด์…˜: choice/noul ๊ฐ๊ฐ ํ™€๋“œ์•„์›ƒ์—์„œ ์˜จ๋„๋ฅผ ํ”ผํŒ…ํ•ด Brier/ECE ์ตœ์ ํ™” โ€” ํ™•๋ฅ ์ด ๊ณง ์‹ ๋ขฐ๋„
  4. int8 LoRA ํ•™์Šต: 4๋น„ํŠธ ์–‘์ž๊ฐ€ ํ™•๋ฅ  ํŒ๋‹จ ์ •๋ฐ€๋„๋ฅผ ํ•ด์น˜๋Š” ๊ฒƒ์„ ์‹ค์ธก์œผ๋กœ ํ™•์ธํ•˜๊ณ  int8์„ ์ฑ„ํƒ (๊ฐ™์€ ์˜ˆ์‚ฐ์—์„œ ์ •ํ™•๋„ +3pp)

ํ•™์Šต ๋ฐ์ดํ„ฐ (Data)

  • ํ•œ๊ตญ ์ƒํ™œ 7๋„๋ฉ”์ธ ํ•ฉ์„ฑ(์•ฝ 2.8๋งŒ ๋ ˆ์ฝ”๋“œ): ํ–‰์ • 20์ข… ์„œ๋น„์Šค ๋ผ์šฐํŒ…, ์˜๋ฃŒ ์‘๋Œ€, ์‡ผํ•‘ CS, ์ƒํ™œ์ธํ”„๋ผ(๋ถ€๋™์‚ฐยท๊ตํ†ตยทํ†ต์‹ ), ๊ต์œก, ์ง์žฅ ๊ฒฐ์žฌ, ์—์ด์ „ํŠธ ๋„๊ตฌ ๊ฒŒ์ดํŒ… โ€” ์กด๋Œ“๋ง/๋ฐ˜๋ง/์˜คํƒˆ์ž/์‹ ์กฐ์–ด ์–ธ์–ด ์ฆ๊ฐ• ํฌํ•จ
  • ์ผ๋ฐ˜ ํƒ€์ดํ•‘๋“œ ๊ฒฐ์ •: tasksource-jev-typed-decisions(CC-BY-4.0) ์ƒ˜ํ”Œ, ๋‹ค๊ตญ์–ด ์ฆ๋ฅ˜(Apache-2.0, teacher ํ™•๋ฅ  ์†Œํ”„ํŠธ๋ผ๋ฒจ), ๋„๊ตฌ๊ฒฐ์ • ํ’€(CC-BY-4.0)
  • ๊ทœ์ • ์ค€๊ฑฐ ํƒœ์Šคํฌ: ๊ณต๊ฐœ ๋Œ€ํ•™ ๊ทœ์ •๋ฌธ ๊ธฐ๋ฐ˜(์ฃผ์ œ ๋ผ์šฐํŒ…ยท์ˆ˜์น˜ ์š”๊ฑด ์œ„๋ฐ˜ ํŒ๋‹จยท์ ์šฉ ๋Œ€์ƒ ํŒ๋‹จ)

ํ•œ๊ณ„ (Limitations)

  • choice ์ตœ๋Œ€ 26์˜ต์…˜, state ์ตœ๋Œ€ 6,000์ž โ€” ์ดˆ๊ณผ ์‹œ Unsupported(HTTP 422)๋กœ ์ •์งํ•˜๊ฒŒ ๊ฑฐ๋ถ€
  • ์„ธ๊ณ„ ์ง€์‹(KMMLU ~30%)์€ 9B ๋ฒ ์ด์Šค ์ˆ˜์ค€ โ€” ํŒŒ์ธํŠœ๋‹์€ ๋ฐœํ˜„์„ ๋ฐ”๊พธ์ง€ ์ง€์‹์„ ๋งŒ๋“ค์ง€ ์•Š์Œ
  • ๊ณ ์œ„ํ—˜ ์˜์‚ฌ๊ฒฐ์ •(์˜๋ฃŒ ์ฒ˜์น˜ยท์ž๊ฒฉ ๋ถ€์—ฌยท์ฑ„์šฉ)์—๋Š” ๋ฐ˜๋“œ์‹œ ์ธ๊ฐ„ ๊ฒ€ํ† ์™€ ๋ณ‘ํ–‰
  • ํ™•๋ฅ ์ด ๋†’๋‹ค๊ณ  ์ •๋‹ต์„ ๋ณด์žฅํ•˜์ง€ ์•Š์Œ โ€” ์ž„๊ณ„๊ฐ’ ๊ธฐ๋ฐ˜ ์šด์˜ ๊ถŒ์žฅ

๋ผ์ด์„ ์Šค

  • ๋ณธ ๋ชจ๋ธ ๊ฐ€์ค‘์น˜: Apache-2.0 (Qwen3.5-9B ํŒŒ์ƒ)
  • ํ•™์Šตยทํ‰๊ฐ€ ์ฝ”๋“œ: github.com/onyultea/k-decision

์ธ์šฉ (Citation)

@software{kdecision2026,
  title = {K-Decision-9B: Korean-specialized decision model},
  author = {ONYULTEA},
  year = {2026},
  url = {https://huggingface.co/ONYULTEA/K-Decision-9B}
}

ยฉ 2026 ONYULTEA ยท https://onyultea.kr

Downloads last month
37
Safetensors
Model size
9B params
Tensor type
F16
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for ONYULTEA/K-Decision-9B

Finetuned
Qwen/Qwen3.5-9B
Finetuned
(1249)
this model

Evaluation results

  • accuracy (fitted) on LocalLLaMA/typed-decisions (test, 400 cases / 2,000 decisions)
    self-reported
    0.818
  • accuracy on skt/kobest_v1 (5-task conversion, 2,600 items)
    self-reported
    0.866
  • accuracy on bzantium/korean-jev-decision-index (3,000 items)
    self-reported
    0.635