LFM
1.0.0
Это попытка создать реализацию LFM с открытым исходным кодом. Очевидно, это не официальный репозиторий, поскольку исходный код закрыт. Ниже я привожу ссылки на статьи, которые использую в качестве ссылки. Узнайте больше о модели из оригинальной статьи.
$ pip3 install -U lfm-torch
import torch
from lfm_torch . model import LFModel
from loguru import logger
# Instantiate and test the model
if __name__ == "__main__" :
batch_size , seq_length , embedding_dim = 32 , 128 , 512
token_dim , channel_dim , expert_dim , adapt_dim , num_experts = (
embedding_dim ,
embedding_dim ,
embedding_dim ,
128 ,
4 ,
)
model = LFModel (
token_dim , channel_dim , expert_dim , adapt_dim , num_experts
)
input_tensor = torch . randn (
batch_size , seq_length , embedding_dim
) # 3D text tensor
output = model ( input_tensor )
logger . info ( "Model forward pass complete." )
Новая нейронная архитектура, сочетающая в себе «Жидкие» нейронные сети, механизмы внимания «Трансформатор» и «Смесь экспертов» (MoE) для улучшенной адаптивной обработки и обновления динамического состояния. Очень экспериментально и рано! Мы работаем над сценарием обучения. Ему все еще нужен настоящий токенизатор, такой как токенизатор Ламы, но он уже готов. Если вы можете помочь с этим, дайте мне знать.
блок-схема ТБ
подграф «Жидкостный трансформатор»
Input["Входная последовательность"] --> TL["Слой трансформатора"]
подграф «Трансформаторный слой»
направление ТБ
MHA["Внимание нескольких голов"] --> LC["Жидкая ячейка"]
ЛК --> МЧС["Смесь экспертов"]
МЧС --> LN["Норма слоя + Остаток"]
конец
подграф «Подробности о жидких клетках»
направление LR
HS["Скрытое состояние"] --> WH["W_h Linear"]
Input2["Вход"] --> WI["W_in Linear"]
WH --> Добавить((+))
Вис --> Добавить
Добавить --> Акт["Активация"]
Акт --> LN2["LayerNorm"]
LN2 --> DO["Выпадение"]
конец
подграф «Детали МЧС»
направление ТБ
Вход3["Вход"] --> Ворота["Сеть шлюзов"]
Ввод3 --> E1["Эксперт 1"]
Ввод3 --> E2["Эксперт 2"]
Ввод3 --> E3["Эксперт N"]
Ворота --> Гребень["Взвешенная комбинация"]
E1 --> Гребень
E2 --> Гребень
E3 --> Расческа
конец
TL --> Вывод["Выходная последовательность"]
конец
import torch
from loguru import logger
from lfm_torch . liquid_t_moe import LiquidTransformer
# Example usage
if __name__ == "__main__" :
seq_len , batch_size , embed_size = 10 , 2 , 64
num_heads , num_experts , expert_size , num_layers = 8 , 4 , 64 , 6
# Create the model
model = LiquidTransformer ( embed_size , num_heads , num_experts , expert_size , num_layers )
# Example input tensor
x = torch . randn ( seq_len , batch_size , embed_size )
# Forward pass
output = model ( x )
logger . info ( f"Model output shape: { output . shape } " )
Этот проект лицензируется по лицензии MIT. Подробности смотрите в файле ЛИЦЕНЗИИ.