Diffusion LFM2.5-24B-A2B
диффузионный эксперимент с честным дисклеймером
Экспериментальный блок-маскированный diffusion-файнтюн LiquidAI/LFM2.5-24B-A2B (~24B, MoE), не официальный релиз Liquid AI — только для исследований и оценки. LoRA rank 64, alpha 128, влит в BF16-веса базовой модели вместе с упакованными экспертами MoE.
➕ Ключевые особенности
- ▶ Генерация идёт через собственный блочный сэмплер и отдельный режим attention: обычный
generate()здесь не является diffusion-сэмплером. - 1⃣ Замеры latency: медиана 601.95 ток/с на A100-SXM4-80GB при canvas 1024 токена и 12 шагах денойзинга.
- 2⃣ Альтернативные точки: 583.93 ток/с (canvas 256, 4 шага) и 639.16 ток/с (canvas 512, 7 шагов).
- ✖ Качество: сильные повторы, смешение языков, битый Python и токенные циклы — надёжное общее применение не заявлено.
- 🔤 Обучение: Alpaca и ARC-Easy, валидация и тест исключены из трейна; взят чекпоинт на 3100 апдейтах.
🔜 Пример
from transformers import AutoTokenizer
from modeling_diffusion_lfm import from_pretrained
repo = 'summerAIO/diffusion-lfm2.5-24b-a2b-merged'
tokenizer = AutoTokenizer.from_pretrained(repo)
model = from_pretrained(repo, torch_dtype='bfloat16', device_map='auto')
# prompt собирается через tokenizer.apply_chat_template(...)
tokens, stats = model.generate(prompt, max_new_tokens=1024, block_size=1024, steps=12)
print(tokenizer.decode(tokens, skip_special_tokens=True), stats)
Подробнее
NLL на 64 валидационных примерах: half-mask 3.0261 → 2.7118 (−10.39%), full-mask 5.8993 → 5.6291 (−4.58%); цель в 10% на обоих уровнях не достигнута.Финальный тест на 256 примерах: 3.0005 → 2.7312 и 5.8205 → 5.6774.
BF16-веса ~48 ГБ до накладных расходов, целевое железо — A100 80GB.
Строгое сравнение логитов с неслитым адаптером не прошло: max abs diff 8.44, top-1 mismatch.
Лицензия LFM Open v1.0: коммерческое использование при годовой выручке от $10M не покрывается.








Комментарии