Downloads · 30 days
35
42% of all-time downloads
mkd-minju/korean-1m-cpu-llm
korean-1m-cpu-llm is a text generation model from mkd-minju. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as mit.
일반적인 대형 언어모델과 다릅니다. 목표는 "좋은 챗봇"이 아니라, 약 100만 개 파라미터짜리 트랜스포머를 처음부터(from scratch) 설계·학습·CPU 추론까지 실제로 실행해서 파이프라인 자체가 동작하는지 실측으로 증명하는 것이었습니다. 이 규모에서는 문법적으로 맞는 한글을 이어 쓰는 정도가 현실적인 한계이며, 사실 지식이나 대화 능력은 기대할 수 없습니다.
Downloads · 30 days
35
42% of all-time downloads
All-time downloads
83
Public
Parameters
1M
4.1 MB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors4.1 MB · 99%
From the Hugging Face model README
일반적인 대형 언어모델과 다릅니다. 목표는 "좋은 챗봇"이 아니라, 약 100만 개 파라미터짜리 트랜스포머를 처음부터(from scratch) 설계·학습·CPU 추론까지 실제로 실행해서 파이프라인 자체가 동작하는지 실측으로 증명하는 것이었습니다. 이 규모에서는 문법적으로 맞는 한글을 이어 쓰는 정도가 현실적인 한계이며, 사실 지식이나 대화 능력은 기대할 수 없습니다.
이 저장소의 가중치는 Ollama/GGUF로 실제 서빙 가능한지 검증하기 위해, 표준 byte-level BPE 토크나이저로 다시 만든 버전입니다. 같은 프로젝트에서 먼저 만든 문자 단위(character-level) 토크나이저 버전(파라미터 1,009,692개, 1,600스텝 학습, loss 2.80까지 수렴)이 원본이자 품질 기준이었지만, 그 토크나이저가 llama.cpp(Ollama의 추론 엔진)의 GPT-2 토크나이저 방식과 호환되지 않아 별도로 재구축했습니다.
| 항목 | 값 |
|---|---|
| 토크나이저 | 표준 byte-level BPE (HuggingFace tokenizers의 ByteLevelBPETokenizer로 코퍼스에서 직접 학습) |
| 실제 vocab_size | 1,500 |
| 아키텍처 | GPT-2 구조 (HuggingFace transformers의 GPT2Config/GPT2LMHeadModel) |
| hidden dim (n_embd) | 100 |
| 레이어 수 (n_layer) | 7 |
| 어텐션 헤드 수 (n_head) | 4 |
| context length | 128 토큰 |
| 임베딩-출력 가중치 공유 | tie_word_embeddings=True |
| 실제 총 파라미터 수 | 1,012,100개 (목표 1,000,000 대비 +1.21%) |
파라미터 배분: 토큰 임베딩 150,000개(14.8%) + 위치 임베딩 12,800개(1.3%) + 트랜스포머 레이어 7개 849,100개(83.9%) + 최종 LayerNorm 200개(0.02%).
>>> 안녕
한가를.는에게를을. 날 그녀는은리를고가. 날 릴리는를었습니다 그들은이. 날 그녀는를
문법적으로 온전한 한국어 문장은 아니지만, "그녀는", "그들은이" 같은 한국어 조사 결합 패턴은 나타나고 있습니다 — 300스텝만 학습된 100만 파라미터 모델의 현실적인 결과물입니다.
transformers로 직접 로드: GPT2LMHeadModel.from_pretrained("min2ju2/korean-1m-cpu-llm")korean-1m-bpe라는
이름으로 등록되어 실제 로컬 챗봇과 연결·응답까지 확인되었습니다 (이 저장소에는 GGUF 파일 자체는
포함되어 있지 않으며, 변환 절차만 검증되었습니다).10M 파라미터로 가려면 레이어 12개 안팎, hidden dim 256 안팎으로 늘리고 전체 데이터셋(632MB)을 활용해야 합니다. 100M 파라미터부터는 CPU 학습이 비현실적이라 GPU가 사실상 필수이며, 그 규모부터는 KoBERT/KR-BERT 수준의 실제 한국어 서브워드 토크나이저(8,000-16,000 vocab) 도입이 타당해집니다.
license: mit로 표시된 라이선스는 이 저장소가 공개한 모델 가중치, 학습 코드 및 문서에 적용됩니다. 학습에 사용된 원본 데이터셋 blueapple8259/TinyStories-korean-edu는 CDLA-Sharing-1.0 라이선스를, 그 원작인 roneneldan/TinyStories는 해당 데이터셋 카드에 명시된 라이선스를 각각 그대로 따르며, 이 저장소는 그 라이선스를 변경하지 않습니다.
"Task 6 — 100만 파라미터 한국어 CPU 언어모델"은 주식회사 MKD(MKD Inc.)가 설계, 학습 및 평가한 모델입니다. 위 표에 기술된 아키텍처 설계, 토크나이저 구축, 학습 루프 구현 및 실험 결과는 주식회사 MKD의 작업물이며, 사전 서면 동의 없이 무단 복제, 배포, 재사용을 금지합니다. 학습에 사용된 원본 데이터의 저작권 및 라이선스는 위에 명시된 원 데이터셋 제공자에게 있습니다.
The MIT license noted above applies to the model weights, training code, and documentation published in this repository. The training data used, blueapple8259/TinyStories-korean-edu (CDLA-Sharing-1.0) and its source roneneldan/TinyStories (see that dataset's own card for its license), remain governed by their respective original licenses, unchanged by this repository.
"Task 6 — a 1M-parameter Korean CPU language model" was designed, trained, and evaluated by MKD Inc. (주식회사 MKD). The architecture design, tokenizer construction, training loop implementation, and experimental results described above are MKD Inc.'s own work and may not be copied, distributed, or reused without prior written permission. Copyright and licensing of the underlying training data remain with the original dataset providers noted above.'