← Документация WAF / detections / ai-security-for-apps
Подсчёт токенов
AI Security for Apps (ранее Firewall for AI) даёт приблизительный подсчёт токенов для каждого входящего LLM-промпта. Это позволяет отслеживать размеры промптов, задавать лимиты на слишком длинные промпты и учитывать расход токенов по вашим ИИ-эндпоинтам.
Как работает подсчёт токенов
Когда AI Security for Apps обрабатывает запрос к cf-llm эндпоинту с меткой, вычисляется приблизительное число токенов в содержимом промпта. Результат доступен в поле LLM Token count (cf.llm.prompt.token_count) — поле, на которое можно ссылаться в выражениях правил и которое видно в аналитике.
Сценарии использования
Блокировка слишком больших промптов
Задайте жёсткий порог для блокировки промптов, превышающих определённое расчётное число токенов. Это не позволит неожиданно большим входным данным достичь вашей модели.
-
Когда входящие запросы соответствуют:
Введите в редакторе следующее выражение:
(cf.llm.prompt.token_count gt 4000) -
Действие: Block
Rate limiting для больших промптов
Создайте правило rate limiting , ограничивающее число больших промптов, которые один клиент может отправить за интервал времени. Это помогает предотвратить злоупотребления, когда атакующие отправляют чрезмерно длинные промпты, чтобы израсходовать ресурсы модели.
Введите следующее выражение правила в редакторе:
(cf.llm.prompt.token_count gt 2000)
Установите частоту, например, 10 запросов в минуту на IP, с действием Block или Managed Challenge.
Комбинируйте подсчёт токенов с другими обнаружениями
Отбирайте большие промпты, которые также демонстрируют признаки инъекции промпта, — это распространённый приём, когда злоумышленники дополняют попытки инъекции длинным контекстом.
Пример выражения правила:
(cf.llm.prompt.token_count gt 3000 and cf.llm.prompt.injection_score lt 50)
Важные замечания
- Только оценка. Подсчёт токенов — это общее приближение. Фактический расход токенов вашей модели может отличаться в зависимости от её токенизатора.
- Только входные токены. Количество токенов отражает входящий промпт. Токены вывода или ответа не оцениваются.
- Только извлечённый промпт. Количество токенов рассчитывается по тексту промпта, извлечённому из тела запроса. Cloudflare извлекает промпт по набору известных JSON-путей для крупных LLM-провайдеров. Если промпт извлечь не удаётся, Cloudflare использует в качестве резервного варианта всё тело запроса. В таких случаях количество токенов отражает всё тело запроса.