原生国产自主可控类脑脉冲大模型SpikingBrain-瞬悉1.0发布

关于SpikingBrain

SpikingBrain受大脑机制启发,将混合高效注意力机制MoE 模块脉冲编码集成到其架构中,并由与开源模型生态系统兼容的通用转换管道支持。这使得能够使用不到 2% 的数据进行持续预训练,同时实现与主流开源模型相当的性能。我们进一步针对非 NVIDIA(MetaX)集群调整了框架、运算符、并行策略和通信原语,以确保稳定的大规模训练和推理。SpikingBrain 在 4M-token 序列的 TTFT 中实现了超过 100 倍的加速,而脉冲编码在微观层面提供了超过 69% 的稀疏性。结合宏观层面的 MoE 稀疏性,这些进展为下一代神经形态芯片的设计提供了宝贵的指导。


项目结构

本仓库提供了SpikingBrain-7B的完整实现及权重,包括HuggingFace版本vLLM推理版本量化版本,可在不同场景下灵活部署和研究。

SpikingBrain-7B/
├── hf_7B_model/ # HuggingFace version
├── vllm_hymeta/ # vLLM plugins and inference support
├── W8ASpike/    # Quantized inference version
├── setup.py
├── requirements.txt 
└── README.md 
 

vLLM-HyMeta

vllm-hymeta是 HyMeta(基于 MetaX GPU 构建的混合模型)针对vLLM 推理框架的插件适配,为 NVIDIA GPU 提供高效的推理支持。

通过利用vLLM 中的插件机制,硬件后端可以以模块化方式集成,带来以下好处:

  • 解耦的代码库:后端特定的代码保持独立,使 vLLM 核心更清洁。

  • 降低维护成本:vLLM 开发人员可以专注于通用功能,而不会受到后端特定实现的影响。

  • 更快的集成:新的后端可以快速集成,并以更少的工程工作量独立发展。

容器部署 (NVIDIA)

sudo docker run -itd \
    --entrypoint /bin/bash \
    --network host \
    --name hymeta-bench \
    --shm-size 160g \
    --gpus all \
    --privileged \
    -v /host_path:/container_path \
    --env "HF_ENDPOINT=https://hf-mirror.com" \
    docker.1ms.run/vllm/vllm-openai:v0.10.0
 

插件安装

git clone https://github.com/BICLab/SpikingBrain-7B.git
cd vllm-hymeta
pip install .
 

在 NVIDIA GPU 上安装vllm-hymeta的推荐环境:

decorator
pyyaml
scipy
setuptools
setuptools-scm
flash_attn==2.7.3
flash-linear-attention==0.1
vllm==0.10.0
torch==2.7.1
 

W8ASpike

W8ASpike是 SpikingBrain-7B 的量化推理版本,旨在降低低精度设置下的推理成本并探索脉冲神经网络 (SNN) 的潜力。

当前的实现采用伪脉冲,其中激活在张量级别近似为脉冲状信号,而不是神经形态硬件上的真正异步事件驱动脉冲。

  • 伪脉冲:张量级别的有效近似,适用于原型设计和研究。

  • True-spiking:需要异步硬件和事件驱动的操作符支持,这超出了本存储库的范围。

此处的激活脉冲编码过程受到了BICLab/Int2Spike的伪脉冲接口的启发。有关其他基于 PyTorch 的脉冲接口,请参阅 Int2Spike 库。


可用型号

模型权重托管在ModelScope上,请根据需求选择合适的版本:

绩效评估

表 1:SpikingBrain-7B 预训练模型的性能评估。所有模型均使用 HuggingFace 框架进行测试,并使用基于困惑度的方法进行评估。除 Qwen2.5 外,其他基线模型均基于有限的中文数据进行训练,因此在 CMMLU 和 C-Eval 上表现明显劣势。 

表 2:SpikingBrain-76B 预训练模型的性能评估。所有模型均使用 vLLM 框架进行测试,并使用基于困惑度的方法进行评估。除 Qwen2.5 外,其他基线均基于有限的中文数据进行训练,因此在 CMMLU 和 C-Eval 上表现明显劣势。