Коротко напомним: языковая модель (LLM) — это обычный HTTP-запрос без памяти и состояния. Она ничего не помнит между вызовами. Вся магия, логика диалога и экономия создаются бэкендом (Harness) вокруг модели.
По сути, все строиться вокруг четырех правил:
1. Грамотная работа с промпт-кэшированием (Prompt Caching)
Кэширование повторяющегося начала запроса снижает стоимость вызовов у провайдеров до 10 раз. Но кэш срабатывает только при совпадении текста один-в-один с самого первого символа.
Всю статику (инструкции, правила, описание инструментов) кладите в начало запроса, а динамику (текущую дату, новые вопросы пользователя) — в самый конец.
2. Сжимайте контекстное окно вовремя
Когда история сообщений разрастается и занимает около 70% контекстного окна, систему нужно разгружать.
Используйте:
📍усечение - вырезание старых сообщений
📍компакцию - модель пересказывает прошлый контекст
📍конденсацию - сжатие для модели с сохранением оригинала на диске.
3. Повышайте автономию по 3 ступеням
Не отдавайте ИИ сразу все права на выполнение операций.
Можно так:
📍Предлагает: бот готовит действие, человек вручную утверждает;
📍Делит по уверенности: стандартные вызовы выполняются автоматически, а 10–15% спорных уходят человеку (это дает бесплатную разметку для обучения);
📍Делает сам: полная автономия допускается только там, где ошибка стоит копейки и легко обратима.
4. Защита на уровне кода
Модель не разделяет ваши системные инструкции и текст, пришедший от пользователя в промпт-инъекции.
Просить нейросеть игнорировать хакеров не лучшая затея. Защита строится на уровне бэкенда. Ограничивайте список функций и проверяйте права доступа в коде до их вызова.
Какая из этих тем кажется вам наиболее критичной при разработке ИИ-сервисов?