Запуски оцінювання та CI
Набори тестів і оцінювання промптів надсилають ті самі запити під час кожного запуску. За шлюзом коштують лише змінені промпти.
Вкажіть своєму SDK OpenAI або Anthropic один URL, і повторні запити обслуговуватиме HotKV, а не оплачуватимуться знову. Без змін у коді.
Один виконуваний файл або контейнер перед провайдером. Власний API-ключ викликальника пересилається далі, тож шлюзу ключ не потрібен.
Анімований покроковий розбір з реальними командами HotKV і прикладами відповідей. Натисніть будь-який крок, щоб перейти до нього. Команди та відповіді залишаються англійською, так само, як ви вводите й бачите їх у HotKV.
Більшість трафіку LLM повторюється. Той самий системний промпт і те саме запитання надходять знову і знову від різних користувачів, повторних спроб і тестових запусків, і кожен із них тарифікується. Додавати кеш у кожен сервіс, у кожній використовуваній вами мові, повільно й легко зробити неправильно.
hotkv-gateway стоїть між вашим застосунком і API LLM. Змініть базовий URL SDK, і однакові запити віддаватиме HotKV, потокові відповіді відтворюватимуться як потоки, переформульовані запитання можна обслуговувати за змістом, а однакові запити, що виконуються одночасно, ділитимуть один виклик до провайдера. Якщо HotKV повільний або недоступний, запити йдуть прямо до провайдера.
Один виконуваний файл або контейнер перед провайдером. Власний API-ключ викликальника пересилається далі, тож шлюзу ключ не потрібен.
hotkv-gateway --upstream https://api.openai.com --semantic --embedding-model text-embedding-3-smallНічого ще не закешовано. Запит іде до провайдера один раз, а завершена відповідь 200 зберігається.
curl -si localhost:8080/v1/chat/completions -H "Authorization: Bearer $OPENAI_API_KEY" -H "Content-Type: application/json" -d @question.json | grep -i x-hotkv-cacheОднаковий запит, навіть із ключами в іншому порядку, обслуговується з HotKV і ніколи не доходить до провайдера.
curl -si localhost:8080/v1/chat/completions -H "Authorization: Bearer $OPENAI_API_KEY" -H "Content-Type: application/json" -d @question.json | grep -i x-hotkv-cacheЗ увімкненим семантичним кешем запитання з іншим формулюванням в один хід може бути обслужене відповіддю на схоже.
curl -si localhost:8080/v1/chat/completions -H "Authorization: Bearer $OPENAI_API_KEY" -H "Content-Type: application/json" -d @rephrased.json | grep -i x-hotkv-cacheТри однакові запити надходять, поки перший ще виконується. Вони ділять один виклик до провайдера.
for i in 1 2 3; do curl -si localhost:8080/v1/chat/completions -H "Authorization: Bearer $OPENAI_API_KEY" -d @new.json & doneНабори тестів і оцінювання промптів надсилають ті самі запити під час кожного запуску. За шлюзом коштують лише змінені промпти.
Бекенд на Python, воркер на Node.js і сервіс на Go отримують один і той самий кеш, змінивши один базовий URL, без бібліотеки в кожній мові.
Перед vLLM або Ollama шлюз заощаджує час GPU замість оплати API, бо повторні промпти ніколи не доходять до сервера моделі.
Однакові запити чату, завершення та ембедингів кешуються, а запитання чату в один хід також можуть збігатися за змістом (--semantic).
Потокові відповіді перехоплюються й відтворюються як потік, тож клієнти поводяться так само, як і раніше.
Кожен ключ API має власний кеш. Помилки й відфільтровані відповіді ніколи не зберігаються, а запити можуть оминати кеш через заголовок.
Якщо HotKV повільний або недоступний, запити йдуть прямо до провайдера. Шлюз також віддає свої числа на /_hotkv/metrics.
from openai import OpenAI client = OpenAI(base_url="http://localhost:8080/v1") # the only change # For Anthropic: start the gateway with --upstream https://api.anthropic.com import anthropic client = anthropic.Anthropic(base_url="http://localhost:8080")
Ні. Він працює на будь-якому сервері HotKV. З ліцензією, що включає кеш промптів, записи зберігаються в просторі імен PCACHE, а HotKV відстежує заощаджені токени. Семантичний кеш завжди потребує ліцензії.
Ні. Ключ кешу включає облікові дані викликальника, тож кожен ключ API має власний кеш, якщо тільки ви не тримаєте в шлюзі один ключ провайдера або не запускаєте його з --scope global.
OpenAI, Azure OpenAI, OpenRouter, vLLM, Ollama, LiteLLM та будь-який інший, що розмовляє API OpenAI, а також Messages API від Anthropic з точним кешем.
HotKV розмовляє протоколом Redis, тож ви можете направити на нього наявний клієнт і виконувати ті самі команди.