Аналитическая компания SemiAnalysis опубликовала разбор того, как устроен инференс современных языковых моделей. Главный вывод касается архитектуры MoE, то есть смеси экспертов: по оценке SemiAnalysis, она изменила структуру обслуживания моделей и экономику инференса. «Она сделала больше, чем просто увеличила число параметров», — пишут авторы.[1]
Работу внутри воркеров инференса SemiAnalysis делит на четыре режима. В режиме Prefill модель обрабатывает начальный блок новых токенов, в Midfill дописывает продолжение к уже сохранённому контексту. Decode attention использует контекст, чтобы получить основу новых токенов, а в Decode experts каждый такой токен дорабатывает часть экспертов из большого общего набора.[2]
Нагрузка у этих режимов разная. Prefill достигает высокой арифметической интенсивности, то есть отношения объёма вычислений к объёму перемещаемых данных. В режимах декодирования эта интенсивность обычно низкая: новых токенов мало, а прежний контекст и веса экспертов приходится перемещать.[3][4]
Инференс выполняется в кластере под управлением слоя оркестрации, например Nvidia Dynamo, Mooncake или собственного планировщика. Оркестратор работает вместе с серверами инференса вроде vLLM или SGLang. Сервер хранит контекст сессии, KV cache, и с его помощью правильно интерпретирует каждый новый запрос. Если пользователь запускает агента на длительную задачу, таких ходов может набраться до тысяч в час.[5][6][7][8]
Отдельно SemiAnalysis описывает выбор между двумя конфигурациями. В агрегированной модель остаётся на одном сервере, и тот перенастраивается по мере перехода запроса между стадиями. В дезагрегированной оркестратор может найти свободный слот на другой машине, уже подготовленной под нужную стадию.[9]
По материалам
Текст составлен ИИ по материалам ниже и не содержит фактов, которых нет в источниках.
Mixture of Experts, now widely used in frontier models, has changed both the structure of serving and the economics of useful inference. It did more than increase parameter count.
Prefill, where the initial block of new tokens is processed together.
Midfill, where a continuation request is appended to an existing cached context.
Decode attention, where the context is used to generate the basics of newly generated tokens.
Decode experts, where each basic new token is refined by a selection of experts a large total set of possible experts.
Decode attention and decode expert work are generally low arithmetic intensity since there are few new tokens compared to the prior context or expert weights, which at decode state are data that needs to be moved.
The server keeps a context (often referred to as KV cache or just cache) which is the distillation of the session, allowing each new request, from user or from tool, to be properly interpreted for overall forward progress.
There are tradeoffs between aggregated (where the models stay on one server, which reconfigures as the request progresses between the stages) and disaggregated where the orchestrator may find a free slot on another machine already configured appropriately.