基于 QEMU 的轻量级多架构 CPU 模拟框架,通过统一的 API 运行机器码。
kerlenton/bootgpt
一个运行在 512 字节 x86 引导扇区中的微型字符级语言模型,在实模式下生成虚构的 Linux 启动日志。
- Star
- 99
- Fork
- 4
- 未关闭 Issue
- 0
- 最近提交
- 7天前
这是什么?
bootgpt 是一个在操作系统加载之前就在引导阶段运行的神经网络。512 字节的 MBR 中是手写的 x86 汇编,它从后续 23 个扇区读取 11.5 KB 的 int8 量化模型,并在 386 级别 CPU 的 16 位实模式下完成推理,不依赖任何操作系统或 C 运行时。
模型是一个小型字符级网络,包含字符嵌入、一个隐藏层和 softmax,训练数据是由 Python 脚本生成的约 3 MB 模拟 dmesg 启动日志。训练时使用 2 的幂次缩放系数量化,使汇编代码只需整数乘法和除法即可完成前向计算。Python 端会模拟同样的整数运算,输出与引导扇区逐字符一致,便于比对。
这个项目主要属于 demoscene 与 sizecoding 的探索性作品。它在 QEMU 中运行,仓库还提供从无窗口 QEMU 录制演示 GIF 的脚本;磁盘镜像也可以写入 U 盘,在 BIOS 机器上启动。
核心功能
- 01引导扇区代码控制在 512 字节以内,并从后续扇区加载模型权重。
- 02推理在 16 位实模式下完成,全程使用整数运算。
- 03训练脚本将模型量化为 int8,并模拟汇编中的运算以便比对输出。
- 04使用脚本生成类内核风格的模拟启动日志作为训练数据。
- 05可在 QEMU 中运行,磁盘镜像也能写入 U 盘在真机上启动。
适用场景
- 学习如何用原始 x86 汇编实现神经网络推理。
- 学习 sizecoding 和引导扇区编程技巧。
- 在资源极其受限的硬件上试验 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 写入 U 盘,README 只简单提及。
标签
常见问题
- bootgpt 是什么?
- 一个运行在 512 字节 x86 引导扇区中的微型字符级语言模型,在实模式下生成虚构的 Linux 启动日志。 bootgpt 是一个在操作系统加载之前就在引导阶段运行的神经网络。512 字节的 MBR 中是手写的 x86 汇编,它从后续 23 个扇区读取 11.5 KB 的 int8 量化模型,并在 386 级别 CPU 的 16 位实模式下完成推理,不依赖任何操作系统或 C 运行时。
- bootgpt 可以免费使用吗?用的什么许可证?
- bootgpt 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- bootgpt 还在维护吗?
- 活跃维护中。bootgpt 最近一次提交是在 2026年10月31日。
- bootgpt 适合用来做什么?
- 学习如何用原始 x86 汇编实现神经网络推理。 学习 sizecoding 和引导扇区编程技巧。 在资源极其受限的硬件上试验 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
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
一个 Python 库,用于在自有数据上微调、评估和运行 LLaMA、GPT-J、GPT-OSS 等开源大模型,可本地或私有云部署。
开源机器学习工具,通过主动学习对大量文本记录排序,辅助系统综述的文献筛选。
Keras 3 是一个多后端深度学习框架,可运行于 JAX、TensorFlow、PyTorch 之上,OpenVINO 仅用于推理。
基于 PyTorch 的深度学习库,既提供快速训练的高层组件,也提供便于自定义研究的底层模块。
跨平台的机器学习推理与训练加速器,用于运行 ONNX 格式的模型。