Sakhanda Wire
NVDA $230.86 +1.09% MSFT $512.80 -0.02% GOOGL $338.24 -1.70% META $725.93 +0.10% AMZN $248.23 -0.37%
← До новин

Знайомтеся: Redis LangCache — керований семантичний кеш, який скорочує витрати на LLM API до 90% і повертає збіги з кешу до 15 разів швидше

Виробничі застосунки на базі LLM рідко отримують запитання, якого ніхто раніше не ставив. Асистенти підтримки та RAG-пайплайни обробляють ті самі наміри тисячі разів на день, щоразу сформульовані по-різному, а більшість стеків сприймає кожне формулювання як новий, повністю оплачуваний запит. Redis LangCache — це повністю керований сервіс семантичного кешування, який працює між застосунком і моделлю, зіставляє вхідні запити з раніше обробленими за змістом, а не за точним текстом, і повертає збережену відповідь, якщо знайдено достатньо близький збіг. Redis повідомляє про заощадження витрат на API до 90% і відповіді з кешу до 15 разів швидші, ніж повторний запит до моделі.

Чи можна його розгорнути? Так. LangCache уже доступний у форматі публічної попередньої версії на платформі Redis Cloud, доступ до нього здійснюється через REST API із SDK для Python і JavaScript, а Redis зазначає, що функції та поведінка можуть змінюватися під час попереднього тестування.

Проблема: перефразування все одно спричиняють повні виклики LLM

Розглянемо три запити до асистента служби підтримки:

  • «Чи можу я отримати повернення коштів після придбання місячного тарифу?»
  • «Чи підлягає місячна підписка поверненню коштів?»
  • «Чи можу я скасувати тариф і повернути свої гроші?»

Формулювання відрізняються, але запитання та відповідь однакові. Без семантичного кешу кожна версія запускає повну генерацію: обробляються вхідні токени, декодуються вихідні токени, а користувач очікує.

Кешування префіксів усуває лише частину цих витрат. Коли запити мають спільний системний промпт або контекст, рушій повторно використовує стани KV, обчислені для цього префікса, але запит усе одно надходить до LLM, нові токени все одно обробляються, а повна відповідь усе одно декодується. Влучання в кеш префікса — це дешевший виклик генерації, а не виклик, якого вдалося уникнути.

Як працює LangCache

LangCache виносить кеш за межі моделі та зберігає саму згенеровану відповідь. Архітектура являє собою цикл із двох викликів:

  1. Перед викликом моделі застосунок надсилає промпт на адресу POST /v1/caches/{cacheId}/entries/search.
  2. LangCache генерує векторне представлення промпту та виконує векторний пошук серед збережених записів.
  3. Якщо семантично схожий запис перевищує налаштований поріг схожості, повертається відповідь із кешу, і виклик LLM не відбувається.
  4. У разі промаху застосунок у звичайному режимі викликає обрану LLM, а потім зберігає промпт і нову відповідь через POST /v1/caches/{cacheId}/entries для майбутніх збігів.

Генерацію векторних представлень виконує сервіс, використовуючи моделі за замовчуванням або власні моделі користувача. Поведінка кешу керується порогами схожості, TTL і політиками видалення, а також адаптивними елементами керування, що налаштовують точність і повноту. Побудований на векторній базі даних Redis і доступний через REST API, сервіс працює з будь-яким постачальником LLM і будь-якою мовою. Показники влучань і заощаджень відстежуються в консолі Redis Cloud.

Що насправді заощаджує влучання в кеш

Влучання в кеш усуває витрати на вхідні токени, вихідні токени та затримку декодування, пов’язану з додатковим викликом моделі. У демонстраційному запуску, де порівнювалися обидва шляхи для перефразованого запитання, прямий висновок тривав 2,232 секунди та спожив 514 вхідних і 250 вихідних токенів. LangCache повернув попередню відповідь за 0,37 секунди, без жодних вхідних або вихідних токенів LLM, що в цьому запуску приблизно в 6 разів швидше.

Документація Redis ретельно пояснює, як накопичуються заощадження. За відповідь із кешу ви не платите за вихідні токени, тоді як витрати на вхідні токени зазвичай компенсуються витратами на створення векторних представлень і зберігання. Рекомендована оцінка така:

Орієнтовні місячні заощадження = (Місячні витрати на вихідні токени) x (Коефіцієнт влучань у кеш)

Якщо щомісячні витрати на LLM становлять 200 доларів, 60% із них припадає на вихідні токени, а коефіцієнт влучань дорівнює 50%, щомісячна економія становитиме 60 доларів. Redis також публікує калькулятор заощаджень для річних оцінок.

У оголошенні про публічну попередню версію Redis зазначив, що відповіді при влучанні в кеш можуть бути до 15 разів швидшими, а використання токенів — до 70% нижчим, тоді як на поточній сторінці продукту вказано заощадження до 90%. Клієнт Mangoes.ai повідомляє про 70% влучань у кеш у своєму голосовому застосунку для догляду за пацієнтами, скорочення витрат на LLM на 70% і в 4 рази швидші відповіді. Фактичний результат залежить від того, наскільки багато безпечних повторень міститься в трафіку.

Де семантичне кешування потребує обережності

Визначення того, які запитання можуть безпечно отримувати одну й ту саму відповідь, — це виробниче питання, а не просто параметр конфігурації. Якщо встановити надто низький поріг, клієнт, який запитує про оновлення тарифу, може отримати політику повернення коштів. Якщо встановити його надто високим, майже кожне перефразування знову передаватиметься моделі, і кеш перестане окуповувати себе. Для виробничих середовищ потрібні добре налаштовані пороги, політики терміну дії, щоб застарілі відповіді видалялися, ізоляція даних між клієнтами та моніторинг неправильних збігів.

LangCache забезпечує це за допомогою областей доступу, користувацької фільтрації, керування TTL і видаленням, а також моніторингу через Redis Cloud. Дані залишаються на серверах Redis клієнта, а Redis заявляє, що не має доступу до цих даних і не використовує їх для навчання моделей.

Основні висновки

  • Кешування префіксів скорочує витрати на обробку промпту; семантичне кешування повністю усуває виклик LLM у разі влучання.
  • LangCache — це REST-інтеграція з двома викликами: пошук перед моделлю, збереження після неї.
  • Заощадження здебільшого виникають завдяки уникненню витрат на вихідні токени; у документації наведено формулу вартість вихідних токенів x коефіцієнт влучань.
  • Redis заявляє про заощадження витрат до 90% і до 15 разів швидші відповіді з кешу; демонстраційний запуск показав 6-кратне прискорення.
  • Пороги, TTL, ізоляція та моніторинг неправильних збігів визначають, чи є семантичний кеш безпечним.

Перегляньте redis.io/langcache і ознайомтеся з прикладами API та SDK. Також підписуйтеся на нас у Twitter і не забудьте приєднатися до нашого сабреддіту про машинне навчання з понад 150 тисячами учасників та підписатися на нашу розсилку. Стривайте! Ви є в Telegram? тепер ви також можете приєднатися до нас у Telegram.

Потрібне партнерство з нами для просування вашого репозиторію GitHub, сторінки Hugging Face, релізу продукту, вебінару тощо? Зв’яжіться з нами

Перекладено автоматично з англійської. Оригінал статті — за посиланням нижче.

Вперше опубліковано виданням MarkTechPost

Читати оригінал на MarkTechPost ↗

Текст і зображення належать MarkTechPost і наводяться тут із зазначенням авторства та посиланням на оригінальну публікацію.

← До новин

Ще новини

Усі останні новини