ИИ-ассистент в социальной платформе для ВКР: архитектура модерации и метрики доверия
В конце марта 2026 года Bluesky включила ИИ-инструмент Attie, который генерирует и подсказывает контент прямо в ленте. Реакция оказалась показательной: за несколько дней более 125 000 пользователей заблокировали аккаунт инструмента. По количеству блокировок Attie обошёл практически всех — кроме J.D. Vance. Формально это PR-история, но технически это готовый кейс для выпускной работы: здесь есть архитектура инференса, маркировка ИИ-контента, телеметрия поведения пользователей и метрика отторжения, которую можно посчитать.
Для выпускника ИТ-направления ценность в другом: отрасль переходит от вопроса «умеет ли система генерировать» к вопросу «принимает ли её пользователь». Это меняет состав требований, набор диаграмм и то, что вы выносите в раздел тестирования. Поэтому ниже — не пересказ новости, а разбор того, как из неё собрать защищаемую ВКР.
Три темы ВКР, которые вырастают из этого кейса
Тема 1. Сервис маркировки и модерации ИИ-сгенерированного контента
Актуальность. 125 тысяч блокировок за считанные дни — это запрос аудитории на прозрачность: пользователь хочет понимать, где ИИ, и уметь его выключить. Регуляторика движется туда же (маркировка синтетического контента, требования 152-ФЗ к обработке данных).
Цель: спроектировать сервис, который помечает, фильтрует и отключает ИИ-контент на уровне платформы, не ломая основной поток публикаций.
Задачи: проанализировать существующие подходы к маркировке; спроектировать схему данных и события маркировки; реализовать прототип с feature flags; оценить накладные расходы по задержке и нагрузке.
Структура: Глава 1 — анализ стандартов и аналогов; Глава 2 — архитектура сервиса, диаграммы компонентов и последовательностей; Глава 3 — нагрузочное тестирование, расчёт стоимости инфраструктуры, оценка эффекта на метрики вовлечённости.
Тема 2. Метрики доверия пользователей к ИИ-функции: телеметрия и A/B-оценка
Актуальность. Кейс Attie показывает: классические метрики (DAU, время в приложении) не описывают отторжение. Нужна отдельная система измерений — block rate, mute rate, доля отключений ИИ-режима, retention после включения функции.
Цель: построить подсистему сбора и визуализации метрик доверия к ИИ-функции и проверить её на смоделированных данных.
Задачи: формализовать набор метрик; спроектировать схему событий; настроить сбор через OpenTelemetry и хранилище временных рядов; провести A/B-эксперимент на тестовом контуре.
Структура: Глава 1 — обзор ISO/IEC 25010 и метрик качества в применении к ИИ; Глава 2 — проектирование пайплайна телеметрии; Глава 3 — эксперимент, статистическая значимость, интерпретация для продукта.
Тема 3. Экономика инференса: локальная модель против внешнего API
Актуальность. Массовая функция в социальной платформе упирается в стоимость запроса к модели. Обоснование «берём облако, потому что удобно» на защите не работает.
Цель: сравнить варианты организации инференса по задержке, стоимости, требованиям к данным и сложности эксплуатации.
Задачи: собрать модель нагрузки; рассчитать стоимость на 1000 и 1 млн запросов; спроектировать гибридную схему с кэшем; описать развёртывание в Kubernetes.
Структура: Глава 1 — теория, обзор подходов к инференсу; Глава 2 — архитектура гибридного шлюза; Глава 3 — расчёт TCO, стресс-тест, сравнение сценариев.
Чему вы научитесь, пока будете это делать
- Проектировать не «приложение с ИИ», а подсистему с очередями, ретраями и деградацией.
- Обосновывать выбор стека числами: задержка, стоимость запроса, требования к хранению персональных данных.
- Считать продуктовые метрики инженерно — через события, а не через скриншоты интерфейса.
- Оформлять документацию так, чтобы она проходила проверку на соответствие ГОСТ 34.602-2020 без переписывания.
- Различать требования функциональные и нефункциональные — и выносить вторые в отдельную таблицу, а не в приложение.
Аналитическая глава: сравнение решений и обоснование стека
Самая частая слабость первого раздела — перечисление технологий вместо выбора. Работает простая схема: сначала формулируете 4–5 критериев (задержка, стоимость, требования к персональным данным, сложность сопровождения, отказоустойчивость), затем прогоняете по ним 3 альтернативы и фиксируете выбор таблицей. Именно здесь кейс Attie даёт аргумент: функция, вызывающая массовое отторжение, должна уметь отключаться точечно, а значит, архитектура обязана поддерживать раздельное включение для сегментов аудитории.
| Критерий | Локальный инференс | Внешний LLM API | Гибрид + кэш |
|---|---|---|---|
| Задержка отклика | Высокая на слабом железе | Средняя, зависит от сети | Низкая на повторах |
| Стоимость при 1 млн запросов | Оплата инфраструктуры | Оплата за токены | Снижение на 30–60 % при горячем кэше |
| Обработка по 152-ФЗ | Данные не покидают контур | Требует обезличивания | Чувствительное — локально, остальное — наружу |
| Сложность сопровождения | Высокая | Низкая | Средняя |
| Точка отказа | Один кластер | Провайдер | Деградация до базового режима |
Тот же приём годится для выбора брокера событий и способа хранения эмбеддингов — достаточно не менять критерии от таблицы к таблице.
Проектная часть: схемы, алгоритмы, интеграция
Компоненты и поток событий
Рабочая декомпозиция для такой подсистемы: шлюз запросов (аутентификация, лимиты, проверка флагов) → очередь (Kafka или RabbitMQ) → воркеры инференса → сервис маркировки → хранилище метаданных. Отдельным контуром идёт телеметрия: события клиента и сервера уходят в сборщик метрик, оттуда — на дашборды. Такой поток хорошо ложится на диаграмму компонентов и на диаграмму последовательности: у вас появляется естественный сценарий «пользователь заблокировал ИИ-агента — что происходит дальше».
# фрагмент воркера: маркировка и учёт реакции пользователя
def handle_generated_post(event, flags, metrics):
if not flags.is_enabled("ai_assistant", user_id=event.user_id):
return skip(reason="disabled_by_user")
post = llm_client.generate(event.prompt, timeout=1.5)
post.label = "ai_generated"
metrics.increment("ai_posts_labeled_total")
# реакция аудитории — отдельный поток событий
if event.type == "user_blocked_agent":
metrics.increment("ai_agent_blocks_total")
return freeze_agent(user_id=event.user_id, ttl_hours=24)
Схема данных и маркировка
Минимальный набор сущностей: ai_agent, generated_content (с признаком источника), user_consent (кто разрешил, кто отключил), moderation_event (блокировка, жалоба, скрытие). Отдельно стоит предусмотреть поле версии модели: без него вы не докажете на защите, что рост блокировок связан именно с обновлением модели, а не с сезонным поведением аудитории.
Тестирование и метрики: block rate как инженерная величина
Это раздел, где большинство работ проседает. Вместо «система протестирована, работает стабильно» покажите таблицу метрик с формулами и целевыми значениями. За основу удобно взять характеристики качества из ISO/IEC 25010 и дополнить их продуктовыми показателями, которые прямо следуют из истории Attie.
| Метрика | Что показывает | Способ расчёта | Целевое значение |
|---|---|---|---|
| Block rate ИИ-агента | Уровень отторжения функции | Блокировки / активные пользователи за период | Ниже 2 % за 7 дней |
| Время до первой блокировки | Насколько быстро пользователь «устаёт» | Медиана интервала от включения функции | Более 72 часов |
| P95 задержки генерации | Воспринимаемая скорость | Гистограмма задержек, 95-й процентиль | До 1,5 с |
| Доступность шлюза инференса | Отказоустойчивость | Успешные запросы / все запросы | 99,5 % в месяц |
| RTO / RPO при падении воркера | Восстанавливаемость | Замер по сценарию отказа | RTO до 5 мин, RPO до 1 мин |
Нагрузочное тестирование описывайте сценариями: одиночная публикация, всплеск при вирусном посте, деградация при недоступности провайдера модели. Для каждого — входные данные, ожидаемое поведение, фактический результат. Незакрытым оставьте вопрос деградации: система без ИИ должна продолжать работать, и это надо показать отдельным тестом.
Чек-лист «Что проверить перед сдачей»
- Каждая задача из введения закрыта выводом в соответствующей главе — сверьте списки построчно.
- Есть минимум четыре схемы: контекстная, компонентов, последовательности, развёртывания.
- Таблицы сравнения используют одинаковый набор критериев.
- Все метрики имеют формулу, единицу измерения и целевое значение.
- Ссылки на внешние источники оформлены с датой обращения, включая материал по Attie.
- Текстовые и графические части соответствуют ГОСТ 34.602-2020 и требованиям вашей кафедры.
- Если вы решаете, как написать ВКР быстрее, — сначала закройте раздел с метриками, он даёт больше всего баллов на защите.
Типичные ошибки студентов
- Подмена понятий SaaS / PaaS / IaaS без обоснования. В тексте появляется «облачное решение», а на защите выясняется, что модель разворачивается на собственном сервере. Решение: одна таблица с определениями в первой главе и единая терминология по всей работе.
- Отсутствие метрик эффективности. Описание «система ускоряет обработку» без чисел. Решение: минимум три измеримые метрики с методикой расчёта и результатом замера.
- Игнорирование требований к оформлению ТЗ. Раздел технического задания собирают «по памяти». Решение: взять структуру из ГОСТ 34.602-2020 и идти по пунктам, ничего не добавляя от себя.
Вопросы, которые задают чаще всего
Насколько сложна такая тема в реализации за один семестр?
Если ограничиться прототипом, укладывается. Реалистичный минимум: шлюз с проверкой флагов, очередь, один воркер, хранилище метаданных, дашборд с тремя метриками. Модель можно подключить через внешний API — защищается архитектура и измеримость, а не размер модели.
Обязательно ли писать рабочий код?
Требования вузов различаются, но при защите проекта работа без прототипа уязвима: нечего показать в разделе тестирования. Компромисс — функциональный прототип на упрощённых данных плюс подробные схемы и расчёты.
Где брать данные для тестов?
Открытые датасеты публикаций, синтетически сгенерированный поток событий или обезличенная выгрузка, согласованная с кафедрой. Обязательно опишите процедуру обезличивания — это отдельный плюс к работе с персональными данными.
Нужно ли описывать этические риски ИИ?
Да, и кейс Attie — хороший аргумент. Достаточно одного подраздела: риски (навязывание контента, потеря доверия, утечка данных), меры (маркировка, отключаемость, аудит). Это переводит работу из «сделал кнопку» в «спроектировал систему с учётом последствий».
На консультацию уходит около 20 минут: разбираем вашу тему, требования кафедры и сроки, после чего вы получаете план работы и состав разделов. Бесплатно, без обязательств — даже если вы просто хотите понять, в какую сторону развивать тему.
Источник: Bluesky’s new AI tool Attie is already the most blocked account other than J.D. Vance (опубликовано 2026-03-30)
Последнее обновление: 2026-10-14 ```