QEMU 기반의 경량 CPU 에뮬레이터 프레임워크로, 아키텍처에 구애받지 않는 깔끔한 API를 통해 여러 아키텍처의 기계어를 실행합니다.
kerlenton/bootgpt
512바이트 x86 부트 섹터에서 실행되며 가짜 Linux 부팅 로그를 만들어 내는 작은 문자 단위 언어 모델입니다.
- 스타
- 99
- 포크
- 4
- 열린 이슈
- 0
- 마지막 커밋
- 7일 전
어떤 프로젝트인가요?
bootgpt는 운영 체제가 로드되기 전에 부팅 시 실행되는 신경망입니다. 512바이트 MBR에는 직접 작성한 x86 어셈블리가 들어 있으며, 이어지는 디스크 섹터 23개에서 11.5KB int8 양자화 모델을 읽어 386급 CPU의 16비트 리얼 모드에서 추론을 수행합니다. OS나 C 런타임은 필요하지 않습니다.
모델은 문자 임베딩, 은닉층 하나, softmax로 구성된 작은 문자 단위 네트워크입니다. Python 스크립트로 생성한 약 3MB 분량의 합성 dmesg 스타일 로그를 학습 데이터로 사용합니다. 어셈블리에서 정수 곱셈과 나눗셈만으로 순전파를 수행할 수 있도록 2의 거듭제곱 양자화 스케일을 사용합니다. Python 스크립트가 동일한 정수 연산을 시뮬레이션하며, 출력은 부트 섹터의 출력과 문자 단위로 일치합니다.
이 프로젝트는 주로 데모신과 사이즈코딩 실험을 위한 것입니다. QEMU에서 실행하도록 만들어졌으며, 헤드리스 QEMU에서 데모 GIF를 녹화하는 스크립트가 있습니다. 디스크 이미지를 USB 메모리에 기록해 BIOS 시스템에서 실행할 수도 있습니다.
핵심 기능
- 01부트 섹터 코드가 512바이트에 들어가며, 이어지는 디스크 섹터에서 모델 가중치를 불러옵니다.
- 02정수 연산만 사용해 16비트 리얼 모드에서 추론을 실행합니다.
- 03Python 학습 스크립트가 모델을 int8로 양자화하고, 비교를 위해 어셈블리의 연산을 시뮬레이션합니다.
- 04커널 스타일의 합성 부팅 로그를 학습 데이터로 생성합니다.
- 05QEMU에서 실행할 수 있으며, 디스크 이미지를 USB 메모리에 기록할 수 있습니다.
활용 사례
- 순수 x86 어셈블리로 신경망 추론을 구현하는 방법을 살펴봅니다.
- 사이즈코딩과 부트 섹터 프로그래밍 기법을 익힙니다.
- 제약이 매우 큰 하드웨어에서 int8 양자화와 고정소수점 추론을 실험합니다.
빠른 시작
- 1
Homebrew로 nasm과 qemu를 설치합니다
brew install nasm qemu - 2
Python 가상 환경을 만들고 numpy를 설치합니다
python3 -m venv .venv && .venv/bin/pip install numpy - 3
부팅 이미지를 빌드합니다
./build.sh - 4
QEMU에서 이미지를 실행합니다
./run.sh
사용 전 알아둘 점
- README의 설치 명령은 macOS(Homebrew)용이므로, 다른 플랫폼에서는 별도로 환경을 설정해야 합니다.
- 이 모델은 가짜 부팅 로그를 생성하는 작은 재미용 프로젝트이며, 범용 언어 모델이 아닙니다.
- 실제 하드웨어에서 부팅하려면 BIOS가 탑재된 컴퓨터가 필요하고 disk.img를 USB 드라이브에 기록해야 하지만, README에서는 간단히만 언급합니다.
토픽
자주 묻는 질문
- bootgpt은(는) 무엇인가요?
- 512바이트 x86 부트 섹터에서 실행되며 가짜 Linux 부팅 로그를 만들어 내는 작은 문자 단위 언어 모델입니다. bootgpt는 운영 체제가 로드되기 전에 부팅 시 실행되는 신경망입니다. 512바이트 MBR에는 직접 작성한 x86 어셈블리가 들어 있으며, 이어지는 디스크 섹터 23개에서 11.5KB int8 양자화 모델을 읽어 386급 CPU의 16비트 리얼 모드에서 추론을 수행합니다. OS나 C 런타임은 필요하지 않습니다.
- bootgpt은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- bootgpt은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- bootgpt은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. bootgpt의 마지막 커밋은 2026년 10월 31일입니다.
- bootgpt은(는) 어디에 사용할 수 있나요?
- 순수 x86 어셈블리로 신경망 추론을 구현하는 방법을 살펴봅니다. 사이즈코딩과 부트 섹터 프로그래밍 기법을 익힙니다. 제약이 매우 큰 하드웨어에서 int8 양자화와 고정소수점 추론을 실험합니다.
- bootgpt는 어떻게 설치하나요?
- Homebrew로 nasm과 qemu를 설치합니다: brew install nasm qemu Python 가상 환경을 만들고 numpy를 설치합니다: python3 -m venv .venv && .venv/bin/pip install numpy 부팅 이미지를 빌드합니다: ./build.sh QEMU에서 이미지를 실행합니다: ./run.sh
- bootgpt은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/kerlenton/bootgpt
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
LLaMA, GPT-J, GPT-OSS 같은 오픈소스 LLM을 자체 데이터로 미세 조정하고 평가하며, 로컬이나 프라이빗 클라우드에서 실행할 수 있는 Python 라이브러리입니다.
체계적 문헌고찰을 위해 대규모 텍스트 데이터셋을 선별할 때 능동 학습으로 레코드의 우선순위를 정하는 오픈소스 머신러닝 도구입니다.
Keras 3는 JAX, TensorFlow, PyTorch에서 실행되고 추론에는 OpenVINO도 사용할 수 있는 딥러닝 프레임워크입니다.
PyTorch 기반 딥러닝 라이브러리로, 빠른 학습을 위한 고수준 구성 요소와 맞춤형 연구를 위한 저수준 구성 요소를 제공합니다.
ONNX 형식으로 내보낸 ML 모델 실행을 위한 크로스 플랫폼 가속기이며, PyTorch 스크립트 학습도 지원합니다.