
Тысячи адаптеров
Как обслуживать сотни LoRA-адаптеров над одной базовой моделью
Содержание слайдов
1. Тысячи адаптеров
Как обслуживать сотни LoRA-адаптеров над одной базовой моделью
2. Одна базовая модель на сотни адаптеров
S-LoRA — одна машина, Punica — кластер, «Орбита» — наш пример
3. Сотни моделей можно вообще не загружать
Продолжение разбора ServerlessLLM и выпуска №32 о vLLM
4. Триста слитых копий — 4,8 ТБ весов
«Орбита» · база 8B · ~300 командных адаптеров · H100 80 ГБ
5. Адаптер — добавка xAB к общему xW
W′ = W + AB, ранг r ≪ h; в S-LoRA — проекции внимания
6. Слияние выигрывает только на одном адаптере
S2 · Llama-7B · A10G 24 ГБ · R = 2, cv = 1 · req/s
7. База батчится вместе, адаптеры — отдельно
Все адаптеры — в памяти хоста, на GPU — только нужные батчу
8. KV-кеш и адаптеры живут в одном пуле
Страница — вектор из H элементов: S токенов → S страниц, ранг R → R страниц
9. Адаптер едет на GPU, пока идёт батч
Прогноз по очереди ожидания и асинхронная копия
10. Ядра собирают адаптеры разных рангов без паддинга
MBGMM для prefill, MBGMV для генерации
11. SGMV: одно ядро на смешанный батч
Микробенчмарк оператора LoRA · A100 80 ГБ · задержка
12. Разбиение адаптера согласовано с разбиением базы
Разбиение базы по Megatron-LM + коллективные операции над малыми тензорами адаптера
13. Связь адаптеров дешевле их вычислений
4 × A100 · 10 адаптеров · req/s, считано с графика
14. При перегрузке лучше отказать, чем опоздать всем
Ранний отказ против FCFS и LCFS · SLO первого токена — 6 с
15. 2 000 адаптеров — пропускная способность почти прежняя
Одна A100 80 ГБ · синтетическая трасса · req/s
16. После сотни адаптеров пропускная способность не падает
S4 · Llama-13B · A100 80 ГБ · req/s, считано с графика
17. Punica уплотняет запросы на минимуме GPU
Новый запрос — на GPU с самым большим батчем, где ещё есть место
18. Миграция — отмена и пересчёт на другом GPU
KV-кеш не переносится: новый GPU заново делает prefill
19. Состав LoRA не снижает пропускную способность Punica
Llama-2 · A100 · ShareGPT · ранг 16 · токенов в секунду
20. Цифры S-LoRA сняты на коротких синтетических трассах
Что измерено — и чего из этого не следует
21. «Орбита»: пул базы 8B вместо 300 развёртываний
Предложение ведущего; цифры — наши расчёты и допущения
22. Общая база снимает вопрос памяти, не SLO
Что измерено, что синтезировано, что предстоит проверить
23. Арендаторов различает добавка, а не модель
Что взять в «Орбиту» и что проверить первым?