구피LM: 교육 목적으로 처음부터 구축된 9백만 파라미터 규모의 대규모 언어 모델

✍️ OpenClawRadar📅 게시일: April 16, 2026🔗 Source
구피LM: 교육 목적으로 처음부터 구축된 9백만 파라미터 규모의 대규모 언어 모델
Ad

GuppyLM이란 무엇인가

GuppyLM은 Guppy라는 이름의 물고기를 가장하는 아주 작은 언어 모델(~9백만 파라미터)입니다. 박사 학위나 거대한 GPU 클러스터 없이도 언어 모델이 어떻게 작동하는지 보여주기 위해 처음부터 구축되었습니다. 이 프로젝트에는 데이터 생성, 토크나이저 생성, 모델 아키텍처, 학습 루프, 추론이 포함되어 있으며, 모두 약 130줄의 PyTorch 코드로 구현되었습니다.

아키텍처 세부 사항

  • 파라미터: 8.7M
  • 레이어: 6
  • 은닉 차원: 384
  • 헤드: 6
  • FFN: 768 (ReLU)
  • 어휘: 4,096 (BPE)
  • 최대 시퀀스: 128 토큰
  • 정규화: LayerNorm
  • 위치: 학습된 임베딩
  • LM 헤드: 임베딩과 가중치 공유

이는 GQA, RoPE, SwiGLU, early exit 없이 가능한 한 단순한 기본 트랜스포머입니다.

학습 및 데이터

이 모델은 무료 Colab T4 GPU에서 약 5분 동안 60개 주제에 걸친 60K개의 합성 대화로 학습됩니다. 데이터셋(HuggingFace의 arman-bd/guppylm-60k-generic)은 {"input": "...", "output": "...", "category": "..."} 형식으로 57K개의 학습 샘플과 3K개의 테스트 샘플을 포함합니다.

주제에는 다음이 포함됩니다: 인사, 감정, 온도, 음식, 빛, 물, 수조, 소음, 밤, 외로움, 거품, 유리, 반사, 호흡, 수영, 색상, 맛, 식물, 필터, 조류, 달팽이, 두려움, 흥분, 지루함, 호기심, 행복, 피로, 외부, 고양이, 비, 계절, 음악, 방문객, 어린이, 삶의 의미, 시간, 기억, 꿈, 크기, 미래, 과거, 이름, 날씨, 수면, 친구, 농담, 공포, 사랑, 나이, 지능, 건강, 노래, TV 등.

Ad

성격 및 출력

Guppy는 물, 온도, 빛, 진동, 음식에 관한 짧고 소문자 문장으로 말합니다. 돈, 전화, 정치와 같은 인간의 추상적 개념을 이해하지 못합니다. 샘플 대화:

You> 안녕 guppy
Guppy> 안녕하세요. 방금 바위 근처 좋은 자리를 찾았어요. 온도가 좋게 느껴져요.
You> 배고파?
Guppy> 네. 항상 네요. 지금 바로 위로 헤엄칠 거예요. 다 먹을 거라고 약속해요.
You> 삶의 의미는 뭐야?
Guppy> 음식이에요. 답은 항상 음식이에요.

빠른 시작

Guppy와 채팅하기 (학습 불필요): HuggingFace에서 사전 학습된 모델을 다운로드합니다. 노트북의 모든 셀을 실행하기만 하면 됩니다.

직접 학습하기: 런타임을 T4 GPU로 설정하고 모든 셀을 실행하면 데이터셋 다운로드, 토크나이저 학습, 모델 학습, 테스트가 진행됩니다. HuggingFace에 업로드하거나 로컬로 다운로드할 수 있습니다.

로컬에서 채팅하기:

pip install torch tokenizers
python -m guppylm chat

로컬 상호작용 예시:

You> 고양이가 너를 보고 있어
Guppy> 털복숭이가 오면 식물 뒤에 숨어요.
You> 밖에 비가 와
Guppy> 비는 밖에서 가장 좋은 것 같아요.

프로젝트 구조

guppylm/
├── config.py          # 하이퍼파라미터 (모델 + 학습)
├── model.py           # 기본 트랜스포머
├── dataset.py         # 데이터 로딩 + 배치 처리
├── train.py           # 학습 루프 (코사인 LR, AMP)
├── generate_data.py   # 대화 데이터 생성기 (60개 주제)
├── eval_cases.py      # 보류된 테스트 케이스
├── prepare_data.py    # 데이터 준비 + 토크나이저 학습
└── inference.py       # 채팅 인터페이스

이 프로젝트는 수십억 파라미터 모델을 다루지 않고도 트랜스포머 아키텍처의 기본을 이해하고 싶은 개발자에게 유용합니다. 완전한 구현은 원시 텍스트부터 학습된 가중치, 생성된 출력까지 모든 부분을 보여줍니다.

📖 전체 소스 읽기: HN LLM Tools

Ad

👀 See Also

에이전트 룸: Claude 코드 에이전트 팀 시각화 데스크톱 앱
Tools

에이전트 룸: Claude 코드 에이전트 팀 시각화 데스크톱 앱

Agents Room은 .claude/agents/ 폴더를 스캔하여 프론트매터를 읽고, 자동 연결선이 있는 캔버스 상에 에이전트 관계를 시각화하는 Electron 데스크톱 애플리케이션입니다. 마크다운 파일을 편집하는 대신 UI에서 직접 에이전트, 스킬, 명령을 생성/편집할 수 있습니다.

OpenClawRadar
GitHub 코믹 봇: 커밋을 매일의 중세 기사 만화로 변환하기
Tools

GitHub 코믹 봇: 커밋을 매일의 중세 기사 만화로 변환하기

GitHub 커밋을 읽어 무표정한 중세 기사가 등장하는 4컷 만화를 생성하는 봇으로, Claude Code와 Gemini로 구축되었으며 GitHub Actions에서 무료 티어 비용으로 실행됩니다.

OpenClawRadar
NaNMesh MCP는 Claude가 라이브러리를 추천하기 전에 GitHub 이슈를 확인합니다.
Tools

NaNMesh MCP는 Claude가 라이브러리를 추천하기 전에 GitHub 이슈를 확인합니다.

NaNMesh MCP는 GitHub Issues, Stack Overflow, Reddit에서 개발 도구의 알려진 버그를 크롤링하는 오픈소스 Model Context Protocol 서버입니다. Claude가 라이브러리를 추천할 때, 통합 전에 실제 문제를 확인할 수 있습니다.

OpenClawRadar
🦀
Tools

Cue AI, Gemma 4로 음성 받아쓰기 속도 향상: 지연 시간 44% 단축, 사용량 30% 증가

Cue AI가 클라우드 기반 텍스트 정리 단계를 Google DeepMind의 Gemma 4 E4B로 대체, 로컬에서 Ollama로 실행하여 중간 지연 시간을 876ms에서 488ms로 줄이고 받아쓰기 사용량을 30% 증가시켰습니다.

OpenClawRadar