hahnyuan/LLM-Viewer

Анализ инференса LLM: вычисления, память, передача данных и аппаратные ограничения в удобном интерфейсе.

Инференс⭐ 681Pythonпоследний релиз: v0.3.9
Открыть на GitHub ↗

Что это за инструмент

LLM-Viewer — это инструмент для визуализации архитектуры LLM и анализа производительности их инференса на разных аппаратных платформах с использованием модели Roofline.

Зачем нужен

Инструмент помогает выявлять узкие места (bottlenecks) в вычислениях, потреблении памяти и передаче данных при запуске языковых моделей. Он полезен для оптимизации инференса, позволяя сравнивать теоретический потолок производительности с реальными настройками (батч-размер, квантование, FlashAttention).

Что можно реализовать

  • Анализ влияния параметров инференса (batch size, sequence length) на общую производительность сети.
  • Оценка пикового потребления памяти (peak memory consumption) для различных слоев модели.
  • Выбор оптимального оборудования (hardware) под конкретную LLM на основе вычислительной мощности и пропускной способности памяти.
  • Визуализация архитектуры модели и детальный разбор характеристик каждого слоя через веб-интерфейс.
  • Исследование эффективности техник оптимизации, таких как квантование и методы декодирования.

Ключевые возможности

  • Интеграция с моделью Roofline для оценки вычислительной и памяти-ограниченных операций.
  • Доступность в виде веб-интерфейса (LLM-Viewer Web) и CLI-инструмента.
  • Детальный анализ по слоям: вычисления, формы тензоров, зависимости данных.
  • Поддержка различных LLM (например, Llama-2, OPT, DiT) и конфигураций оборудования.
  • Генерация отчетов с графиками зависимости производительности от настроек.

👤 Кому подойдёт: Исследователи, инженеры по машинному обучению (ML engineers), оптимизирующие инференс LLM, и разработчики, изучающие внутреннюю работу нейросетей.

Релизы