Многие компании наблюдают взрывной рост счетов за интерфейсы прикладного программирования (API) больших языковых моделей (LLM), вызванный тем, что пользователи задают одни и те же вопросы разными способами, по словам Сриниваса Редди Хулебиду Редди, разработчика AI-приложений. Редди обнаружил, что пользователи часто перефразируют одни и те же вопросы, что приводит к избыточным вызовам LLM и ненужным затратам на API.
Анализ журналов запросов, проведенный Редди, показал, что пользователи задавали такие вопросы, как «Какова ваша политика возврата?», «Как мне что-то вернуть?» и «Могу ли я получить возмещение?» по отдельности, каждый раз генерируя почти идентичные ответы и неся полные затраты на API. Традиционное кэширование точного соответствия, которое использует текст запроса в качестве ключа кэша, оказалось неэффективным, захватывая только 18% этих избыточных вызовов. «Один и тот же семантический вопрос, сформулированный по-разному, полностью обходил кэш», — пояснил Редди.
Чтобы решить эту проблему, Редди внедрил семантическое кэширование — метод, который фокусируется на смысле запросов, а не на их точном формулировании. Семантическое кэширование анализирует основной смысл вопроса и извлекает ответ из кэша, если семантически похожий запрос уже был обработан. После внедрения семантического кэширования Редди сообщил об увеличении частоты попаданий в кэш до 67%, что привело к снижению затрат на LLM API на 73%.
Основная проблема традиционного кэширования заключается в его зависимости от точных совпадений. Как проиллюстрировал Редди, традиционное кэширование использует хеш текста запроса в качестве ключа кэша. Если ключ существует в кэше, возвращается кэшированный ответ; в противном случае запрос обрабатывается LLM. Этот подход не работает, когда пользователи формулируют вопросы по-разному, даже если основной смысл один и тот же.
Семантическое кэширование представляет собой значительный прогресс в оптимизации использования LLM API. Понимая семантический смысл запросов, оно может значительно сократить избыточные вызовы и снизить затраты. Однако эффективное внедрение семантического кэширования требует тщательного рассмотрения различных факторов, включая выбор алгоритмов семантической схожести и управление инвалидацией кэша. Эта разработка подчеркивает важность перехода от простых, текстовых решений кэширования к более сложным методам, которые понимают нюансы человеческого языка.
Discussion
Join the conversation
Be the first to comment