Дешевая оценка метрик эффективности вывода для авторегрессивных API трансформеров
Cheaply Evaluating Inference Efficiency Metrics for Autoregressive Transformer APIs
May 3, 2023
Авторы: Deepak Narayanan, Keshav Santhanam, Peter Henderson, Rishi Bommasani, Tony Lee, Percy Liang
cs.AI
Аннотация
Крупные языковые модели (LLM) лежат в основе многих современных систем обработки естественного языка. Однако эти модели чрезвычайно ресурсоемки даже на этапе вывода, что закономерно вызывает вопрос: когда дополнительные затраты на развертывание более крупной модели оправдываются ожидаемым улучшением возможностей? Более глубокое понимание этого компромисса могло бы выиграть от метрики эффективности вывода, которая (i) легко сравнивается между моделями от разных поставщиков и (ii) отражает реальную стоимость выполнения запросов в изолированной среде производительности. К сожалению, доступ к LLM сегодня в основном ограничен черными ящиками API для генерации текста, а измеренные через этот интерфейс времена выполнения не удовлетворяют этим требованиям: поставщики моделей могут применять различные программные и аппаратные оптимизации, не связанные с моделью, а модели, работающие на общей инфраструктуре, подвержены конкуренции за производительность. Чтобы обойти эти проблемы, мы предлагаем новую метрику для сравнения эффективности вывода между моделями. Эта метрика уравнивает модели, как если бы они работали (i) на одинаковом аппаратном и программном обеспечении и (ii) без конкуренции за производительность. Мы называем эту метрику идеализированным временем выполнения и предлагаем методологию для эффективной оценки этой метрики для авторегрессивных моделей на основе Transformer. Мы также предлагаем варианты метрики, учитывающие стоимость, которые включают количество ускорителей, необходимых для обслуживания модели. Используя эти метрики, мы сравниваем десять современных LLM, чтобы провести первый анализ компромиссов между эффективностью вывода и возможностями; из этого анализа мы делаем несколько наблюдений, включая тот факт, что превосходное время выполнения определенных API часто является побочным продуктом оптимизаций внутри API, а не самой модели. Наша методология также облегчает эффективное сравнение различных программных и аппаратных стеков.
English
Large language models (LLMs) power many state-of-the-art systems in natural
language processing. However, these models are extremely computationally
expensive, even at inference time, raising the natural question: when is the
extra cost of deploying a larger model worth the anticipated boost in
capabilities? Better understanding this tradeoff fundamentally could benefit
from an inference efficiency metric that is both (i) easily comparable across
models from different providers, and (ii) representative of the true cost of
running queries in an isolated performance environment. Unfortunately, access
to LLMs today is largely restricted to black-box text generation APIs and raw
runtimes measured through this interface do not satisfy these desiderata: model
providers can apply various software and hardware optimizations orthogonal to
the model, and models served on shared infrastructure are susceptible to
performance contention. To circumvent these problems, we propose a new metric
for comparing inference efficiency across models. This metric puts models on
equal footing as though they were served (i) on uniform hardware and software,
and (ii) without performance contention. We call this metric the
idealized runtime, and we propose a methodology to efficiently estimate
this metric for autoregressive Transformer models. We also propose cost-aware
variants that incorporate the number of accelerators needed to serve the model.
Using these metrics, we compare ten state-of-the-art LLMs to provide the first
analysis of inference efficiency-capability tradeoffs; we make several
observations from this analysis, including the fact that the superior inference
runtime performance of certain APIs is often a byproduct of optimizations
within the API rather than the underlying model. Our methodology also
facilitates the efficient comparison of different software and hardware stacks.