奇技淫巧之用CMake实现一个 GPT-2 推理引擎地址:github.com/AlpinDale/gpt2.cmake
作者把 GPT-2 的 embedding、LayerNorm、multi-head causal attention、GELU MLP、softmax、矩阵向量乘法、BPE tokenizer、KV cache,全部写成了 .cmake 脚本,并通过 cmake -P xxx.cmake 直接执行。为了绕开 CMake 没有浮点计算的问题,整个模型使用 Q16.16 定点整数运算。仓库同时提供一个很小的 toy model,以及可以加载 OpenAI GPT-2 124M 权重的完整模型。
