Представьте: ваш 8‑гигабайтный GPU перестаёт плакать в подушку и внезапно тянет длинный контекст — вот это поворот! Если раньше «100k токенов» звучало как «нужен дата‑центр и продастся почка», то с oLLM это уже про «обычный ПК + быстрый NVMe».
oLLM — лёгкая Python‑библиотека поверх HuggingFace Transformers и PyTorch для офлайнового инференса LLM с большим контекстом без квантизации (fp16/bf16). В релизе 0.4.0 завезли зверя qwen3‑next‑80B (160 ГБ) с впечатляющим темпом ~1 токен/2с, заменили кастомный attention у Llama3 на FlashAttention‑2 ради стабильности и добавили «флэш‑похожий» attention и чанкинг MLP для gpt‑oss‑20B, чтобы экономить VRAM. KV‑кэш уехал на диск: теперь это DiskCache.
Магия достигается так:
- веса слоёв подгружаются с SSD прямо в GPU, по одному;
- KV‑кэш оффлоадится на SSD и по требованию возвращается в GPU;
- при необходимости веса уезжают на CPU;
- FlashAttention‑2 с online‑softmax: полная матрица внимания не материализуется;
- MLP считается чанками, чтобы не раздувать память на промежуточных проекциях.
Цифры, чтобы поверить:
- qwen3‑next‑80B на контексте ~10k занимает около 5.4 ГБ VRAM и ~162 ГБ SSD;
- llama3‑8B‑chat на 100k держится примерно в 6.6 ГБ VRAM и ~69 ГБ SSD. Нужен быстрый NVMe — тогда латентность остаётся разумной даже на RTX 3060 Ti.
Кому это зайдёт:
- анализ контрактов, регуляторики и комплаенса «за один укус»;
- резюмирование медицинских историй и литературы;
- локальная обработка гигантских логов и отчётов по угрозам;
- разбор исторических чатов для извлечения частых проблем пользователей.
Старт простой: создайте виртуальное окружение, установите oLLM через pip (или из исходников), добавьте kvikio для быстрой работы с диском. Для Qwen3‑Next потребуется dev‑версия transformers (4.57.0.dev). Поддерживаются NVIDIA Ampere (RTX 30xx, A30, A4000, A10), Ada (RTX 40xx, L4), Hopper (H100) и новее.
Хотите поддержку другой модели? Пишите: anuarsh@ailabs.us — авторы стараются исполнять желания быстрее, чем SSD успевает нагреться.