Руководства

Как остановить злоупотребление бесплатными кредитами в ИИ-приложении

Бесплатные кредиты в ИИ-продукте стоят реального инференса. Как работают фермы кредитов, почему лимиты на аккаунт их не останавливают и где в регистрации принимать решение.

8 мин чтения · Обновлено 2026-10-31 · Attrelix

Чем отличаются бесплатные кредиты в ИИ-продукте

В большинстве SaaS фейковый аккаунт стоит строку в базе и немного шума в метриках. В ИИ-продукте каждый бесплатный аккаунт может тратить реальные деньги: каждый промпт запускает инференс на GPU, за которые платите вы. Бесплатные кредиты — по сути наличные, а всё, что превращается в деньги, притягивает автоматизацию.

Это меняет и тех, кто злоупотребляет бесплатным тарифом. Помимо людей, которые просто хотят больше бесплатного использования, появляются фермы кредитов: скрипты, которые создают много аккаунтов, собирают бесплатные кредиты каждого и перепродают доступ или гоняют через ваш API собственные задачи.

Как работает ферма кредитов

Детали различаются, но схема одна и та же:

  1. Аккаунты создаёт скрипт — обычно headless-браузер под управлением Puppeteer, Playwright или Selenium, иногда антидетект-браузер, который подменяет свой отпечаток.
  2. Ящики одноразовые: одноразовые домены, собственные catch-all домены или один аккаунт Gmail, записанный десятками способов с точками и плюсами.
  3. Трафик идёт с серверов: облака и хостинг дёшевы, поэтому многие фермы работают там, иногда за прокси или Tor.
  4. Кредиты расходуются быстро, часто в первые минуты, раньше, чем успевает сработать любой сигнал по использованию.

Почему лимиты на аккаунт не помогают

Лимиты защищают от аккаунта, который потребляет слишком много. Ферма так никогда не делает: каждый аккаунт вежливо укладывается в свою бесплатную квоту. Злоупотребление — в количестве аккаунтов, поэтому защищаться нужно при регистрации, до выдачи кредитов, а не позже, на уровне использования.

Правильный вопрос не «злоупотребляет ли этот запрос?», а «должен ли этот новый аккаунт вообще получить бесплатные кредиты, и сколько?».

Сигналы, выдающие ферму при регистрации

Автоматизация

Браузеры под управлением автоматизации оставляют следы: navigator.webdriver равен true, user agent HeadlessChrome, подключённый клиент протокола DevTools, программный рендеринг WebGL, окно нулевого размера. Аккуратный оператор может скрыть каждый из них, поэтому работают они лучше всего вместе. В руководстве как распознать headless-браузеры они разобраны по одному.

Сеть

Настоящие пользователи регистрируются из домашних и мобильных сетей. Регистрации из облачных диапазонов (AWS, Google Cloud, Oracle, DigitalOcean, Linode) и с выходных узлов Tor заслуживают большего внимания, как и любой адрес или подсеть, создавшие сегодня много аккаунтов.

Почтовый ящик

Одноразовые домены, домены, не принимающие почту, и алиасы Gmail существующего аккаунта. См. Точки и плюс-алиасы в Gmail.

Связи между аккаунтами

Самый сильный признак фермы — её аккаунты связаны: то же устройство, тот же нормализованный ящик, тот же отпечаток карты. Один связанный аккаунт — слабое свидетельство, десять — ферма.

Где ставить проверку

Вызывайте антифрод-проверку на сервере после отправки формы регистрации и до начисления кредитов. Если кредиты выдаёт фоновая задача или подтверждение почты, ставьте проверку прямо перед этим шагом. Главное, чтобы решение появилось раньше кредитов.

// Node.js, перед выдачей бесплатных кредитов
const res = await fetch("https://attrelix.com/v1/check", {
  method: "POST",
  headers: { Authorization: `Bearer ${process.env.ATTRELIX_SECRET}`, "Content-Type": "application/json" },
  body: JSON.stringify({ email, ip, visitor: req.body.attrelix_visitor }),
  signal: AbortSignal.timeout(3000),
}).catch(() => null);
const decision = res?.ok ? (await res.json()).decision : "allow";

const credits = { allow: 100, review: 10, block: 0 }[decision] ?? 100;
await grantCredits(user.id, credits);

Ступенчатые кредиты лучше жёсткой блокировки

Для ИИ-продуктов хорошо работает схема, при которой бесплатные кредиты зависят от риска, а не выдаются по принципу «всё или ничего»:

  • Разрешить: полная бесплатная квота.
  • Проверить: небольшая квота — достаточно, чтобы попробовать продукт, — а остальное после карты, телефона или подтверждённой почты.
  • Заблокировать: без бесплатных кредитов; предложите платный тариф.

Честные пользователи, попавшие на проверку, всё равно могут попробовать продукт, а ферма, получающая десятую часть кредитов на аккаунт, теряет большую часть выгоды.

Знайте, во что это обходится

Посчитайте проблему: умножьте стоимость бесплатных кредитов нового аккаунта на число аккаунтов, которые ваша проверка отправила бы на проверку или в блок. Это ежемесячная цена бездействия, и она показывает, сколько трения стоит добавить. Панель Attrelix считает это по стоимости ваших кредитов.

Итог

  • Фермы кредитов укладываются в лимиты на аккаунт; останавливайте их при регистрации.
  • Сочетайте сигналы автоматизации, сети, почтового ящика и связей между аккаунтами.
  • Решайте до появления кредитов и пропускайте, если проверка недоступна.
  • Дозируйте кредиты по риску вместо немедленной блокировки.

Другие руководства