KenT-30M-Base
компактная рекуррентная LLM с DCT и EMA-памятью
KenT-30M-Base от Vi-LAB — рекуррентная языковая модель примерно на 30M параметров, обученная с нуля. В ней 24 одинаковых слоя: каждый расширяет представление в M позиций разрешения, смешивает их фиксированным DCT-II, обрабатывает через SwiGLU и хранит EMA-память с обучаемым забыванием. По метаданным модель ориентирована на английский.
➕ Ключевые особенности
- ▶ 24 идентичных слоя; hidden size 256, vocab 50257, около 29.7M параметров.
- ➕ В слое представление расширяется до 12 позиций разрешения по 96 признаков: M·d = 1152 = 4.5n.
- 🔜 Фиксированное DCT-II по оси M и SwiGLU по оси d; скрытый размер SwiGLU — 384.
- *⃣ EMA-память с отдельным обучаемым коэффициентом забывания для каждой позиции разрешения.
- ➖ Веса в FP16; для запуска нужен
trust_remote_code=True.
▶ Пример
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM, GenerationConfig
repo = "Vi-LAB/KenT-30M-Base"
tok = AutoTokenizer.from_pretrained(repo)
model = AutoModelForCausalLM.from_pretrained(repo, trust_remote_code=True, dtype=torch.float16).to("cuda").eval()
inputs = tok("Hello, today", return_tensors="pt").to("cuda")
out = model.generate(**inputs, generation_config=GenerationConfig.from_pretrained(repo))
print(tok.decode(out[0], skip_special_tokens=True))
Подробнее
Модель исследовательская, обучена с нуля; перед реальным использованием нужна оценка.Веса хранятся в FP16, в quickstart используется
cuda.Токенизатор и веса должны совпадать по
vocab_size в config.json.Для длинных документов есть
infer.py: чанки по 1024 обрабатываются параллельно и сливаются аффинным сканом.







Комментарии