Skip to content

Latest commit

 

History

17 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tower2 - 多模态语言模型架构

GitHub PyTorch Python

Tower2是几乎集成了当今所有最先进的LLM机制的模型架构
本项目是Tower_GPT的续项目

介绍 👋

主要特性 🌟

  • 多模态:支持文本、图像输入
  • 高效:使用了MoE、MLA等先进技术提高模型的计算和存储效率
  • 扩展:几乎所有参数都可以通过配置文件进行修改
  • 可解释性:完整的中文代码注释
  • 原生实现:不依赖transformer等衍生库,全部基于Pytorch实现

技术对比 ⚙️

特性 Tower GPT Tower 2 LLaMA 3 Qwen 2.5 DeepSeek V3 / R1
注意力 MHA MLA GQA GQA MLA
前馈网络 FFN MoE / FFN FFN MoE / FFN MoE
多模态 否 是 是 是 否
KV Cache 否 是 是 是 是
激活函数 GELU SwiGLU SwiGLU SwiGLU SwiGLU
开源协议 MIT CC-0 LLaMA3 License Apache 2.0 MIT

环境需求 🛠️

    Python 3.10+
    Pytorch 2.0+
    Sentencepiece
    Galore-torch

或者使用subsoil快速设置开发环境

模型架构 🧠

tower

协议与贡献 📜

未来计划 📌

🟢 近期计划

  • KV Cache (已完成)
  • 音频多模态

🔵 长期规划

  • 训练代码

源代码 🗂️

  • 许可证: CC0
  • cc0
  • 您可以:
    • 自由地复制、修改、分发和执行作品
    • 无需署名,无需保留版权声明

问题与贡献 🤔

更新日志 📝

25.4.13更新 - KV Cache 支持
- 残差连接修正
25.4.19更新 - 分离encoder和decoder层数参数
- kv cache 下的 mask 修正
25.5.31更新 - 添加模型初始化
- 重构 kv cache
25.7.24更新 - 修复 MLA 内存使用错误, 内存使用降低了十倍甚至是九倍()
- 再次重构 kv cache, 支持了传统缓存与矩阵吸收缓存
25.7.27更新 - 修复矩阵吸收下 head num 维度和 token steps 维度与预期相反的错误
- 上传了新的 demo, 与更新后的代码相匹配
25.7.30更新 - 共享 embed 与 last_linear 权重
- 去除了部分线性偏置
25.10.26更新 - 调整 dropout
26.1.23更新 - 更换 FFN 为 SwiGLU 激活

About

多模态语言模型架构

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages