Роутинг и каскады LLM: какая модель обрабатывает запрос?
Автоматический перевод
Эта статья была автоматически переведена с оригинальной английской версии.
Роутинг выбирает модель до того, как она сгенерирует ответ. Каскад начинает с одной модели и переходит к более сильной после оценки её ответа. Используйте роутинг, когда запрос содержит достаточно информации для надёжного выбора. Рассмотрите каскад, когда проверка готового ответа даёт более точную основу для решения.
Оба подхода могут сократить число вызовов дорогих моделей. Они различаются типами ошибок и влиянием на латентность.
Когда принимается решение?
| Подход | Основа для решения | Основной сбой | Какие затраты учитывать |
|---|---|---|---|
| Роутинг | Характеристики запроса и прогноз возможностей модели | Сложный запрос попадает к недостаточно сильной модели | Роутер и выбранная модель |
| Каскад | Сгенерированный ответ и его оценка | Неверный ответ проходит проверку | Первая модель, эвалуатор и вызовы после эскалации |
Роутер может отправить знакомый вопрос из FAQ небольшой модели, а сложный анализ — более сильной. Каскад может принять дешёвый результат извлечения данных только после проверки его полей по источнику и перейти к более сильной модели, если проверка не пройдена.
Уверенности, которую заявляет отвечающая модель, недостаточно для валидации. Предпочитайте проверку, связанную с правильностью выполнения задачи, например сверку полей с источником или тесты с достаточным покрытием.
Таблица 6 в статье RouteLLM показывает расчётную стоимость, делённую на 3.66, в использованной конфигурации MT-Bench при 95% от оценки качества GPT-4. Это примерно на 72.7% дешевле при тогдашних ценах моделей и условиях оценки. Это результат конкретного эксперимента, а не прогноз текущей экономии.
FrugalGPT исследует каскады на наборе моделей. Максимальная заявленная экономия также зависит от задач, выбранных моделей и оценки, по которой принимаются ответы.
Отдельно измеряйте принятые ошибки
Оценивайте простые и сложные случаи, включая запросы, на которые дешёвая модель даёт правдоподобный, но неверный ответ. Фиксируйте долю запросов, обработанных дёшево, принятые неверные ответы дешёвой модели, эскалации, общее качество и сквозную латентность.
Для каскадов учитывайте оба вызова в запросах с эскалацией. Для роутинга учитывайте латентность роутера и запросы, направленные не той модели. Сравнивайте эти итоговые показатели с базовыми вариантами на одной модели при том уровне качества, который вам действительно нужен.
Раздел о роутинге и каскадах в LLM Engineering Guide показывает оба момента принятия решения.