Исследователь проанализировал влияние механизма Multi-Token Prediction (MTP) на скорость обработки промптов (Prompt Processing Tokens Per Second) в библиотеке llama.cpp. В ходе экспериментов удалось выявить причины деградации производительности при использовании MTP и разработать прототип (PoC), который восстанавливает показатели TPS, сохраняя при этом архитектурные преимущества многотокенового предсказания для LLM.
Проблема заключается в том, что текущая реализация MTP в llama.cpp создает дополнительные вычислительные накладные расходы на этапе префил-фазы. При обработке длинных контекстов это приводит к заметному снижению пропускной способности системы. Автор исследования сфокусировался на оптимизации графа вычислений и перераспределении нагрузки между тензорными ядрами, что позволило нивелировать негативный эффект.
Данный подход демонстрирует, как глубокая настройка механизмов инференса позволяет эффективно внедрять современные методы обучения моделей, такие как MTP, без ущерба для скорости работы на локальном оборудовании. Оптимизация затрагивает низкоуровневые операции с тензорами, что критически важно для систем, работающих с высокой частотой запросов и большими объемами входных данных.
Ключевые факты
- Исследование сфокусировано на устранении падения производительности TPS при использовании Multi-Token Prediction.
- Разработанный PoC позволяет восстановить скорость обработки промптов до уровня стандартных моделей без MTP.
- Оптимизация проведена в рамках инфраструктуры llama.cpp, популярного решения для локального запуска LLM.
- Основной упор сделан на минимизацию вычислительных издержек при параллельной обработке токенов в префил-фазе.