Repolode
kerlenton

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. 1

    用 Homebrew 安装 nasm 和 qemu

    brew install nasm qemu
  2. 2

    创建 Python 虚拟环境并安装 numpy

    python3 -m venv .venv && .venv/bin/pip install numpy
  3. 3

    构建启动镜像

    ./build.sh
  4. 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 数据每日更新。

相关项目