Эфир 18.11 · Поток 318 ноября в 19:00 МСК — бесплатный практический эфир по ИИ-агентам · Живой Поток 3 стартует 23.11Эфир 18 ноября →Поток 3 (23.11)
РелизРазбор · На радарPyTorch Blog→ оригинал

SGLang-TorchTPU ускорил выдачу токенов Muse Spark Open почти вдвое

Большая модель может тормозить из-за перемещения данных между вычислениями. Команда SGLang-TorchTPU запустила Muse Spark Open на одном хосте с четырьмя TPU v7 и объединила 62 слоя в одну программу. В тесте с одним запросом время на выходной токен сократилось с 3,78 до 1,95 мс. Для разработчиков агентов здесь полезны и другие приёмы: сохранять контекст между ходами и не отдавать всю очередь одному длинному запросу.

AI-обработка оригинала PyTorch Blog; редакция Hamidun News
SGLang-TorchTPU ускорил выдачу токенов Muse Spark Open почти вдвое
Источник: PyTorch Blog. Коллаж: Hamidun News.
Слушать статью
Паспорт материала и цифры
ПараметрДанные
ПервоисточникPyTorch Blog ↗
Главный редактор
Ключевой факт #1Ускорение почти вдвое измерили при одном активном запросе.
Ключевой факт #2Кэш в памяти хоста дал до 77% прироста пропускной способности.
Ключевой факт #3При росте числа одновременных запросов выигрыш ядра сокращается.

Кодинг-агент прочитал репозиторий, запустил инструмент и задумался перед следующим ответом. В такой паузе легко обвинить размер модели. Но сервер может тратить время на доставку весов, обмен между ускорителями и повторную обработку уже знакомого контекста. Для команды продукта это вполне конкретная проблема: пользователь ждёт, пока оплаченная инфраструктура занимается подготовительной работой.

Команда SGLang-TorchTPU описала запуск Muse Spark Open с 816 млрд параметров на одном хосте с четырьмя TPU v7. Главный результат для одного запроса: время на выходной токен снизилось с 3,78 до 1,95 мс. Замеры и устройство реализации опубликованы в блоге PyTorch.

Ускорителю нужно вовремя подвозить данные

Представьте кухню, где повар перед каждым действием останавливается и ждёт следующую корзину продуктов. Можно купить плиту мощнее, но ожидание от этого не исчезнет. Другой путь — организовать доставку так, чтобы следующая корзина приезжала во время приготовления текущего блюда.

Здесь применили похожую идею: объединили выполнение 62 слоёв в одну программу и совместили передачу данных с вычислениями. Это позволяет заранее готовить то, что понадобится следующему участку работы.

Практический смысл такого подхода начинается с профилирования. Допустим, вы обслуживаете внутреннего помощника для небольшой команды. Одновременно с ним обычно разговаривают несколько человек, и каждому важна плавная выдача ответа. В этом режиме стоит смотреть, сколько времени занимает отдельный шаг генерации и какая часть этого времени уходит на ожидание данных.

У массового сервиса другая задача: обслужить очередь без резкого роста задержки. Поэтому один красивый показатель скорости ещё не отвечает на вопрос, сколько пользователей выдержит система. Нужна серия замеров с разной нагрузкой и одинаковыми условиями.

Пауза агента — повод сохранить контекст

Второй результат касается памяти. Дополнительный кэш в оперативной памяти хоста увеличил пропускную способность на агентной нагрузке до 77%.

Возьмём помощника, который ищет ошибку в проекте. Он читает файлы, запускает тесты, получает вывод и возвращается к рассуждению. Значительная часть разговора между этими действиями остаётся прежней. Если сервер сохранил подготовленные данные контекста, следующий ход можно начать с меньшим объёмом повторной работы.

Для продуктовой команды отсюда следует полезный вопрос: что происходит с состоянием сессии, пока пользователь или инструмент молчит? Пауза сама по себе не означает, что разговор закончился. Особенно если агент ждёт сборку, внешний поиск или результат длительной команды.

Проверять это удобно отдельным сценарием. Дайте агенту большой документ, сделайте несколько коротких ходов с паузами и сравните время начала ответа. Затем повторите опыт при заполненной памяти. Так станет понятнее, насколько поведение сервиса зависит от сохранения контекста и что происходит при вытеснении старых сессий.

Что переносить в свой сервис

Почти двукратное ускорение нельзя автоматически записывать в экономию бюджета. Выигрыш объединённой программы сокращается с ростом числа одновременных запросов. Кроме того, часть работы авторы ещё планируют перенести в основную ветку проекта.

Разработчику стоит начать с трёх измерений: ожидание первого токена, интервалы между следующими токенами и число завершённых запросов при заданной задержке. Продакту — добавить реалистичный пользовательский маршрут с инструментами и паузами. Основателю — считать стоимость успешной задачи при приемлемом времени ответа.

Есть и отдельный сценарий для проверки очереди: один пользователь присылает огромный документ, а другой задаёт короткий вопрос. Посмотрите, сколько ждёт второй. Такой опыт быстро показывает, соответствует ли распределение ресурсов обещанному качеству сервиса.

Ценность публикации — в наборе проверяемых инженерных решений. Прежде чем менять железо, полезно выяснить, где именно сервер простаивает, какую работу повторяет и кому позволяет занимать очередь слишком долго.

Сюжет

Вопросы и ответы по материалу

Что известно по теме: ускорителю нужно вовремя подвозить данные?

Представьте кухню, где повар перед каждым действием останавливается и ждёт следующую корзину продуктов. Можно купить плиту мощнее, но ожидание от этого не исчезнет. Другой путь — организовать доставку так, чтобы следующая корзина приезжала во время приготовления текущего блюда. Здесь применили похожую идею: объединили выполнение 62 слоёв в одну программу и совместили передачу данных с вычислениями. Это позволяет заранее готовить то, что понадобится следующему участку работы.

Что известно по теме: пауза агента — повод сохранить контекст?

Второй результат касается памяти. Дополнительный кэш в оперативной памяти хоста увеличил пропускную способность на агентной нагрузке до 77%. Возьмём помощника, который ищет ошибку в проекте. Он читает файлы, запускает тесты, получает вывод и возвращается к рассуждению. Значительная часть разговора между этими действиями остаётся прежней. Если сервер сохранил подготовленные данные контекста, следующий ход можно начать с меньшим объёмом повторной работы.

Что известно по теме: что переносить в свой сервис?

Почти двукратное ускорение нельзя автоматически записывать в экономию бюджета. Выигрыш объединённой программы сокращается с ростом числа одновременных запросов. Кроме того, часть работы авторы ещё планируют перенести в основную ветку проекта. Разработчику стоит начать с трёх измерений: ожидание первого токена, интервалы между следующими токенами и число завершённых запросов при заданной задержке. Продакту — добавить реалистичный пользовательский маршрут с инструментами и паузами.

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ Единое AI-пространство · Nomad

Протестируйте новые LLM и мультимодальные модели в одном окне

Платформа Nomad AI (nomadnet.ai) даёт прямой доступ к Claude Opus 5.5, GPT-6, Gemini 3.1, DeepSeek и автономным агентам без VPN, зарубежных карт и зоопарка подписок.

Открыть Nomad AI →Автономный Nomad Agent
Что вы думаете?
Загружаем комментарии…