Files
dotfiles/agents/.agents/skills/ai-text-lint/references/patterns.md
T
Dmitriy Dementiev ee474c9825 refactor(ai-text-lint): переработана структура patterns.md
- Зачем:
  - устранена дублирующая сводная матрица severity, которая устаревала при изменении паттернов.
  - улучшена навигация по документу за счёт группировки паттернов в категории.
- Что:
  - добавлены разделы категорий: Структура и форматирование, Тон и авторская позиция, Резюме-специфичные паттерны.
  - переупорядочены паттерны S05 и S06 внутри категории Структура.
  - обновлена ссылка на severity в SKILL.md с указанием inline-таблиц.
- Проверка:
  - git diff agents/.agents/skills/ai-text-lint/
2026-06-15 15:30:22 +03:00

556 lines
43 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# База паттернов AI Text Lint
Каждый паттерн имеет:
- **ID** — уникальный идентификатор
- **Название** — краткое описание
- **Описание** — что именно ищем и почему это маркер
- **Примеры** — конкретные срабатывания (RU/EN)
- **Severity** — по контексту: article / message / resume
- **Рекомендация** — что делать при срабатывании
Severity: 🔴 high (явный маркер, бросается в глаза), 🟡 medium (подозрительно в скоплении), 🟢 low (мелочь, но в сумме вносит вклад).
---
## Категория: Пунктуация и типографика
### P01: Длинное тире (em dash) — главный маркер AI-текста на русском
**Что:** Наличие символа `—` (U+2014, em dash) в любом тексте, который подразумевает ручной набор.
**Почему:** Это один из самых надёжных и высокочастотных признаков AI-генерации. На стандартной клавиатуре (и PC, и Mac) символ em dash отсутствует как отдельная клавиша. Его набор требует специальных комбинаций (Alt+0151, Ctrl+Shift+U 2014 и т.д.), которые подавляющее большинство людей не знает и не использует. В реальной переписке и даже в статьях люди набирают:
- знак минус с клавиатуры (`-`)
- дефис (`-`)
- иногда двойной дефис (`--`)
- или вообще перестраивают предложение без тире
AI-модели же подставляют типографически корректное `—` автоматически, потому что обучены на отредактированных текстах. Результат: каждое `—` в тексте, который якобы набран руками — красный флаг.
**Исключения:** Текст, прошедший через редактор с автозаменой (Word, Google Docs, некоторые CMS) может содержать em dash, вставленный автозаменой из ` - ` (пробел-дефис-пробел). Но в мессенджерах (Telegram, Slack) и plain-text средах автозамены нет.
**Примеры маркеров:**
- «Проект идёт хорошо — осталось два спринта» (в чате — откуда тут em dash?)
- «Это не баг — это фича» (в Telegram)
- «ClickHouse — отличный выбор для аналитики» (в Slack)
**Как выглядит реальный человеческий текст:**
- «Проект идёт хорошо - осталось два спринта»
- «Это не баг, это фича»
- «ClickHouse отличный выбор для аналитики»
**Рекомендация:** Заменить все `—` на `-` (минус/дефис) в переписке. В статьях и резюме — заменить бОльшую часть на `-`, запятые или скобки. Допустимо оставить 1-2 на длинный текст, если контекст предполагает редакторскую обработку.
**Детекция:** Искать символ U+2014 в тексте. Каждое вхождение — отдельная находка.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🔴 high |
| resume | 🔴 high |
### P02: Избыточная правильная пунктуация
**Что:** Все запятые на местах, точки в конце каждого предложения, идеальные кавычки — в контексте, где люди так не пишут.
**Почему:** В реальной переписке люди часто опускают точку в последнем предложении, пропускают запятые в длинных перечислениях, не ставят точку после "ок" или "спасибо".
**Примеры маркеров:**
- «Хорошо, я посмотрю это после обеда. Напишу, когда будет готово.» — слишком аккуратно для чата
- Сравни с реальным: «Хорошо, посмотрю после обеда. Напишу когда будет готово»
**Рекомендация:** В переписке — ослабить пунктуацию до естественного уровня. Убрать точку в конце последнего предложения. Допустить 1-2 "пропущенные" запятые в неформальном контексте.
| Контекст | Severity |
|----------|----------|
| article | 🟢 low |
| message | 🟡 medium |
| resume | 🟢 low |
### P03: Em dash вместо скобок или запятых
**Что:** Использование em dash для вводных конструкций, где человек поставил бы запятые или скобки.
**Почему:** LLM-ы систематически предпочитают em dash для parenthetical clauses, создавая характерный "punchy" стиль.
**Примеры маркеров:**
- «ClickHouse — при правильной настройке — даёт отличную производительность»
- Человек напишет: «ClickHouse (при правильной настройке) даёт отличную производительность»
**Рекомендация:** Заменить на запятые или скобки. Одно-два тире в длинной статье — нормально. Три и больше — паттерн.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🔴 high |
| resume | 🟡 medium |
### P04: Эмодзи в заголовках и списках
**Что:** Тематические эмодзи перед заголовками (## 🚀 Деплой), в пунктах списков (✅ Настроить CI, 📊 Метрики) или как "иллюстрации" к разделам.
**Почему:** Фирменный стиль ChatGPT-генерированных README и документации. Человек использует эмодзи реактивно (в реакциях, в конце сообщения как эмоцию), а не "иллюстративно" — подбирая тематическую иконку к каждому пункту.
**Примеры маркеров:**
- `## 🚀 Быстрый старт`
- `## 📦 Установка`
- `- ✅ Поддержка кластеризации`
- `- 📊 Мониторинг в реальном времени`
**Как выглядит человеческий текст:**
- `## Быстрый старт`
- `- Поддержка кластеризации`
**Рекомендация:** Убрать эмодзи из заголовков и списков. Оставить только если это осознанный стиль проекта (и то — подумать дважды).
| Контекст | Severity |
|----------|----------|
| article | 🔴 high |
| message | 🟡 medium |
| resume | 🔴 high |
### P05: Буква «ё» — второй em dash
**Что:** Последовательное использование буквы «ё» в тексте: «идёт», «всё», «ещё», «берёт», «нёс», «подчёркивает».
**Почему:** Это один из самых надёжных маркеров наравне с P01. Клавиша «ё» расположена в неудобном месте (левый верхний угол, под `~`), и культура её использования в русскоязычном интернете слабая. Подавляющее большинство людей набирают «идет», «все», «еще» — и это нормально, языковая норма допускает оба варианта. AI-модели же обучены на отредактированных текстах (книги, Википедия, СМИ), где «ё» используется последовательно. Результат: если в тексте из мессенджера стабильно стоит «ё» — это красный флаг.
**Исключения:** Некоторые люди принципиально пишут с «ё» (ёфикаторы). Текст, прошедший через корректора/редактора, тоже будет с «ё». Если автор — известный сторонник «ё», это не маркер.
**Примеры маркеров:**
- «Проект идёт по плану, всё готово к деплою» (в Slack)
- «Ещё нужно разобраться с конфигурацией» (в Telegram)
**Как выглядит реальный человеческий текст:**
- «Проект идет по плану, все готово к деплою»
- «Еще нужно разобраться с конфигурацией»
**Рекомендация:** В переписке заменить «ё» на «е» повсеместно. В статьях — допустимо, если автор осознанно ёфицирует, но в сочетании с другими маркерами усиливает подозрение.
**Детекция:** Подсчитать количество «ё» в тексте. Порог: 3+ вхождения в коротком тексте (до 200 слов) или стабильное использование по всему тексту (ни одного «е» там, где должно быть «ё» — подозрительная последовательность).
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🔴 high |
| resume | 🔴 high |
### P06: Слеш как разделитель («REST/gRPC», «удаленно/гибрид»)
**Что:** Косая черта `/` для разделения однородных понятий или альтернатив: «backend/frontend», «удаленно/гибрид/офис», «MergeTree/ReplacingMergeTree», «Kubernetes/Helm», «SQL/ETL-скрипты». Особенно в скоплении — когда слешей в тексте много.
**Почему:** Люди в обычной прозе разделяют через «и», «или», запятую или скобки: «REST и gRPC», «удаленно или гибрид». Слеш требует переключения регистра мысли на «компактную запись» и в живом наборе встречается редко. AI-модели же ставят `/` рефлекторно как нейтральный компактный разделитель — он экономит токены и выглядит «аккуратно». Результат: текст, усыпанный слешами, читается как сгенерированный, особенно в резюме, где их плотность выдаёт шаблонную сборку списка навыков.
**Исключения (не маркер):** устоявшиеся написания, которые и люди пишут через слеш — `CI/CD`, `A/B-тест`, `и/или`, `вкл/выкл`; даты (`12/05`), дроби и единицы (`км/ч`, `руб/мес`); пути и URL; обозначения вида `вход/выход` как термин. Маркер — это слеш на месте, где естественнее «и» / «или» / запятая, и особенно скопление таких слешей.
**Примеры маркеров:**
- «Опыт работы с Kafka/RabbitMQ/NATS» (в резюме)
- «Настраивал мониторинг/алертинг/логирование»
- «Data Engineer / Backend Data Engineer / ETL Developer»
- «Формат: удаленно/гибрид/офис»
**Как выглядит человеческий текст:**
- «Опыт работы с Kafka, RabbitMQ и NATS»
- «Настраивал мониторинг, алерты и логирование»
- «Data Engineer, Backend Data Engineer, ETL Developer»
- «Формат: удаленно, гибрид, офис»
**Рекомендация:** Заменить `/` на «и», «или», запятую или скобки по смыслу. «REST/gRPC» → «REST и gRPC». «удаленно/гибрид» → «удаленно или гибрид». Парные технологии — через «и» или запятую. Устоявшиеся `CI/CD`, `и/или` оставить.
**Детекция:** Искать символ `/` вне URL, путей, дат и устоявшихся терминов. Одиночное вхождение — 🟢, скопление (3+ на абзац или сплошные слеши в списке навыков резюме) — паттерн.
| Контекст | Severity |
|----------|----------|
| article | 🟢 low |
| message | 🟡 medium |
| resume | 🟡 medium |
---
## Категория: Лексика-маркер
### L01: AI vocabulary (русский)
**Что:** Слова и обороты, статистически чрезмерно используемые LLM в русском тексте.
**Почему:** Эти слова не запрещены, но их плотность в AI-тексте в разы выше, чем в человеческом. Один — ничего. Три в одном абзаце — сигнал.
**Список (tier 1 — самые частые):**
- ключевой, комплексный, значительный, существенный
- эффективно, целесообразно, в рамках, в контексте
- является, представляет собой
- обеспечивает, способствует, позволяет
- данный (вместо "этот"), текущий (вместо "нынешний/сейчашний")
- неотъемлемая часть, играет важную роль
- оптимизация, масштабирование (вне технического контекста)
- формирование (вместо "создание"), реализация (вместо "сделали/написали")
- осуществлять (вместо "делать"), функционирование (вместо "работа")
**Список (tier 2 — подозрительные в скоплении):**
- безусловно, несомненно, очевидно
- вместе с тем, помимо этого, кроме того
- стоит отметить, важно подчеркнуть, следует учитывать
- широкий спектр, целый ряд, многообразие
- актуальный, востребованный, перспективный
**Рекомендация:** Заменить на простые синонимы. "Является ключевым" → "это важно для". "Обеспечивает эффективное" → "помогает" / "ускоряет". "В рамках проекта" → "в проекте". "Данный подход" → "этот подход" / вообще убрать.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🔴 high |
| resume | 🔴 high |
### L02: AI vocabulary (английский)
**Что:** Английские слова-маркеры в технических текстах со смешанным языком.
**Список (tier 1):** delve, crucial, pivotal, foster, landscape, testament, enhance, intricate, tapestry, underscore, leverage, streamline, holistic, robust, seamless, comprehensive.
**Список (tier 2):** navigate, harness, cutting-edge, groundbreaking, game-changer, empower, unlock, spearhead.
**Рекомендация:** Заменить на конкретные термины. "Robust solution" → "отказоустойчивое решение" / "решение, прошедшее нагрузочное тестирование". "Leverage Kafka" → "использовать Kafka".
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟡 medium |
| resume | 🔴 high |
### L03: Inflated significance (раздувание важности)
**Что:** Фразы, которые подчёркивают значимость темы общими словами без конкретики.
**Почему:** LLM систематически "надувает" важность предмета, добавляя высокопарные оценки.
**Примеры маркеров:**
- «знаменует собой важный этап в развитии»
- «является переломным моментом для отрасли»
- «открывает новые горизонты»
- «вносит значительный вклад»
- «трудно переоценить значение»
**Рекомендация:** Убрать целиком или заменить конкретным фактом. Вместо «знаменует важный этап» — что конкретно изменилось и для кого.
| Контекст | Severity |
|----------|----------|
| article | 🔴 high |
| message | 🟡 medium |
| resume | 🔴 high |
### L04: AI-зачины ("В современном мире...")
**Что:** Вводные фразы вида «В современном мире», «В мире, где...», «В эпоху цифровой трансформации», «В условиях стремительного развития технологий».
**Почему:** Классический AI-зачин для статей и эссе. Создаёт ложное ощущение масштаба. Человек, который разбирается в теме, начинает с сути, а не с философского отступления о состоянии мира.
**Примеры маркеров:**
- «В современном мире данные стали новой нефтью»
- «В эпоху больших данных особенно важно...»
- «В условиях растущей конкуренции компании вынуждены...»
- «В мире, где каждая секунда на счету...»
**Рекомендация:** Удалить первое предложение целиком. Начать со второго — почти всегда текст от этого только выигрывает.
| Контекст | Severity |
|----------|----------|
| article | 🔴 high |
| message | 🔴 high |
| resume | 🟡 medium |
### L05: Вводные приглашения ("Давайте разберёмся")
**Что:** Фразы-приглашения перед основным контентом: «Давайте разберёмся», «Давайте рассмотрим», «Let's dive in», «Let's explore», «Рассмотрим подробнее».
**Почему:** AI использует эти фразы как переход от введения к основному тексту. Человек на Хабре просто начинает объяснять, без церемоний.
**Примеры маркеров:**
- «Давайте разберёмся, как это работает»
- «Рассмотрим основные преимущества подробнее»
- «Let's dive into the details»
**Рекомендация:** Убрать. Начать объяснение напрямую.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🔴 high |
| resume | 🟢 low |
### L06: Hedging (перестраховочная лексика)
**Что:** Оговорки и смягчающие конструкции: «возможно», «вероятно», «в определённой степени», «в той или иной мере», «не исключено, что», «можно предположить», «как правило», «в большинстве случаев».
**Почему:** AI хеджирует рефлекторно — ставит оговорки там, где человек сказал бы прямо. Одна оговорка в абзаце — нормально. Три — сигнал, что текст сгенерирован моделью, которая боится быть неточной.
**Примеры маркеров:**
- «Вероятно, это связано с особенностями архитектуры»
- «В определённой степени это позволяет улучшить производительность»
- «Можно предположить, что данный подход окажется эффективным»
**Как выглядит человеческий текст:**
- «Это из-за архитектуры»
- «Это улучшает производительность»
- «Этот подход работает»
**Рекомендация:** Убрать оговорку, если автор уверен в утверждении. Если не уверен — написать почему, а не прятаться за «возможно».
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟡 medium |
| resume | 🔴 high |
---
## Категория: Структура и форматирование
### S01: Negative parallelism ("не X, а Y")
**Что:** Конструкция «Это не просто X — это Y», «It's not about X, it's about Y».
**Почему:** Один из самых узнаваемых AI-паттернов. Создаёт ложный драматический контраст.
**Примеры маркеров:**
- «Это не просто инструмент — это философия разработки»
- «Речь не только об автоматизации, но и о трансформации»
- «Это не столько технология, сколько новый подход к мышлению»
**Рекомендация:** Убрать контраст. Сказать прямо, что это такое, без ложной дихотомии.
| Контекст | Severity |
|----------|----------|
| article | 🔴 high |
| message | 🔴 high |
| resume | 🔴 high |
### S02: Rule of three
**Что:** Перечисление ровно трёх пунктов, особенно когда они идут через запятую с усилением.
**Почему:** LLM-ы обучены на огромном объёме persuasive writing, где rule of three — стандартный приём. В AI-тексте это происходит слишком часто и слишком ритмично.
**Примеры маркеров:**
- «быстрый, надёжный и масштабируемый»
- «простота, гибкость и производительность»
- «анализировать, оптимизировать и внедрять»
**Рекомендация:** Если перечисление реально содержит три пункта — ок. Если третий добавлен "для красоты" — убрать. Или сделать два, или четыре-пять.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟡 medium |
| resume | 🟡 medium |
### S03: Compulsive summary (компульсивное подведение итогов)
**Что:** "Таким образом", "Подводя итог", "В заключение", "В целом" — особенно когда текст короткий и итог не требуется.
**Почему:** LLM рефлекторно подводит итог даже в двух абзацах. Человек в коротком тексте просто заканчивает.
**Примеры маркеров:**
- «Таким образом, ClickHouse отлично подходит для этой задачи.» (после двух предложений)
- «В целом, данный подход показал свою эффективность.»
**Рекомендация:** Убрать вводное слово. Если последнее предложение и без него звучит как итог — убрать его целиком.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🔴 high |
| resume | 🟡 medium |
### S04: Однородная длина абзацев/пунктов
**Что:** Все абзацы примерно одной длины (3-4 предложения). Все bullet points одинаковой структуры и длины.
**Почему:** Человеческий текст имеет вариативную ритмику. Короткий абзац после длинного — нормально. У AI — ровная "решётка".
**Примеры маркеров:**
- Пять bullet points, каждый ровно по два предложения
- Четыре абзаца по 50-60 слов каждый
**Рекомендация:** Варьировать длину осознанно. Добавить один короткий пункт (одно предложение) и один длинный.
**Подсказка по детекции:** Два аспекта однородности:
1. *Длина.* Посчитать слова в каждом пункте списка или абзаце. Если разброс длин менее 20% от среднего — это паттерн. Например, пять пунктов по 12, 11, 13, 12, 11 слов — подозрительно ровно.
2. *Синтаксис.* AI часто строит предложения по одной схеме: подлежащее → сказуемое → дополнение, подлежащее → сказуемое → дополнение. Человек чередует порядок слов, начинает с обстоятельства, вставляет вводные конструкции, использует инверсию.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟢 low |
| resume | 🟡 medium |
### S05: Bullet points с жирным заголовком + расшифровка
**Что:** Списки, где каждый пункт — **Жирное слово/фраза**: а потом то же самое другими словами.
**Почему:** Фирменный стиль ChatGPT. На Хабре и в документации так не пишут.
**Примеры маркеров:**
- **Масштабируемость**: Система легко масштабируется горизонтально и вертикально.
- **Отказоустойчивость**: Обеспечивается высокий уровень отказоустойчивости.
**Рекомендация:** Либо убрать жирные "заголовки" и писать обычными пунктами, либо убрать расшифровку, если заголовок и так ясен.
| Контекст | Severity |
|----------|----------|
| article | 🔴 high |
| message | 🟡 medium |
| resume | 🟡 medium |
### S06: Balanced pros/cons ("Преимущества / Недостатки")
**Что:** Структура с симметричными секциями плюсов и минусов, часто с одинаковым количеством пунктов в каждой.
**Почему:** AI обожает "сбалансированную" подачу — 4 преимущества, 4 недостатка, аккуратно разложенные по полочкам. Человек обычно пишет асимметрично: «мне понравилось X и Y, но бесит Z» — в потоке текста, а не в табличке.
**Примеры маркеров:**
- Секция "Преимущества" с 4 пунктами, затем секция "Недостатки" с 4 пунктами
- «С одной стороны... С другой стороны...» как организующая структура всего текста
**Рекомендация:** Если сравнение нужно — сделать его асимметричным. Написать в потоке текста, а не раскладывать по секциям. Или честно сказать: «плюсов больше, минус один, но существенный».
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟢 low |
| resume | 🟢 low |
### S07: Двоеточие перед каждым списком
**Что:** Вводная фраза с двоеточием перед каждым bullet-списком: «Основные преимущества:», «Ключевые особенности:», «Что мы сделали:».
**Почему:** AI рефлекторно ставит "заголовок:" перед каждым списком, даже когда список и так понятен из контекста. Человек часто начинает список без вводной фразы или встраивает его в предложение.
**Примеры маркеров:**
- «Основные преимущества ClickHouse:» + список
- «Что было сделано в рамках проекта:» + список
- «Ключевые технологии:» + список
**Как выглядит человеческий текст:**
- Список начинается после абзаца, без отдельной вводной строки
- Или встроен в предложение: «Мы использовали ClickHouse, Kafka и Airflow»
**Рекомендация:** Убрать вводную фразу, если из контекста и так ясно, о чём список. Или встроить перечисление в текст.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟡 medium |
| resume | 🟡 medium |
---
## Категория: Тон и авторская позиция
### T01: Vague attribution (размытые ссылки на авторитет)
**Что:** «Эксперты отмечают», «По мнению специалистов», «Согласно исследованиям», «Многие разработчики считают» — без указания, кто именно.
**Почему:** AI не может сослаться на конкретный источник и подставляет weasel words.
**Примеры маркеров:**
- «Эксперты в области Big Data отмечают растущую популярность...»
- «Согласно последним исследованиям, эффективность выросла на...»
**Рекомендация:** Либо дать конкретную ссылку/имя, либо убрать апелляцию к авторитету. «Мы замерили — эффективность выросла» лучше, чем «эксперты отмечают».
| Контекст | Severity |
|----------|----------|
| article | 🔴 high |
| message | 🟡 medium |
| resume | 🟡 medium |
### T02: Superficial -ing / причастные оценки
**Что:** Завершающие причастные обороты, которые добавляют поверхностную оценку: «...обеспечивая гибкость», «...повышая эффективность», «...демонстрируя зрелость подхода».
**Почему:** LLM добавляет "хвостовые" оценочные обороты как рефлекс. Человек либо скажет это отдельным предложением, либо не скажет вообще.
**Примеры маркеров:**
- «Мы перешли на Airflow, значительно упростив оркестрацию.»
- «Компания внедрила CI/CD, ускорив доставку фич в продакшен.»
- «...reflecting the continued relevance of the framework.»
**Рекомендация:** Убрать причастный оборот. Если мысль важна — вынести в отдельное предложение с конкретикой.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟡 medium |
| resume | 🔴 high |
### T03: Отсутствие личной позиции / стерильная нейтральность
**Что:** Текст описывает предмет исключительно "со стороны", без мнения автора, личного опыта, субъективных оценок.
**Почему:** AI по умолчанию стремится к нейтральности. Человек на Хабре скажет «мне этот подход не нравится, потому что...» или «мы обожглись на этом».
**Примеры маркеров:**
- «Данный подход имеет как преимущества, так и ограничения.» (без указания, какие конкретно и что автор думает)
- «Существуют различные мнения по этому вопросу.»
**Рекомендация:** Добавить конкретную позицию автора. Не обязательно резкую — но личную.
| Контекст | Severity |
|----------|----------|
| article | 🔴 high |
| message | 🟢 low |
| resume | 🟢 low |
### T04: Вежливые обрамления
**Что:** "Буду рад помочь", "Не стесняйтесь обращаться", "Надеюсь, это поможет", "Если возникнут вопросы..." — в конце каждого сообщения.
**Почему:** Фирменный chatbot-стиль. В реальной переписке коллеги так не пишут (разве что в первом письме новому человеку).
**Примеры маркеров:**
- «Если нужна помощь — обращайся, буду рад помочь!»
- «Надеюсь, информация окажется полезной.»
**Рекомендация:** Убрать. В переписке с коллегами — просто закончить по делу.
| Контекст | Severity |
|----------|----------|
| article | 🟢 low |
| message | 🔴 high |
| resume | 🟡 medium |
### T05: Sandwich pattern (похвала-оговорка-похвала)
**Что:** Структура, где критика или ограничение обёрнуты в два слоя позитива: «Отличный инструмент. Есть некоторые ограничения. Но в целом достойное решение.»
**Почему:** AI боится быть категоричным и рефлекторно смягчает любую критику обрамлением из похвалы. Человек, если ему что-то не нравится, скажет прямо: «Работает, но тормозит на больших объёмах — для нас это критично».
**Примеры маркеров:**
- «Kafka — мощный инструмент. Настройка может быть непростой. Тем не менее, для нашей задачи это лучший выбор.»
- «Хороший фреймворк с активным сообществом. Документация могла бы быть лучше. В целом — рекомендую.»
**Как выглядит человеческий текст:**
- «Kafka подходит, но настройка — боль. Будьте готовы потратить на это время.»
- «Документация слабая, приходится разбираться по исходникам. В остальном норм.»
**Рекомендация:** Убрать обрамляющие позитивные предложения, если они не несут информации. Критику подать прямо, с конкретикой.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟡 medium |
| resume | 🟢 low |
---
## Категория: Резюме-специфичные паттерны
### R01: Абстрактные impact-фразы без цифр
**Что:** «Значительно повысил эффективность», «Оптимизировал бизнес-процессы», «Внёс существенный вклад в развитие».
**Почему:** AI не знает реальных цифр и подставляет generic impact-фразы. Рекрутер сразу видит отсутствие конкретики.
**Примеры маркеров:**
- «Существенно сократил время обработки данных»
- «Повысил качество аналитических процессов»
**Рекомендация:** Добавить цифры, названия систем, объёмы. «Сократил время ETL с 4 часов до 40 минут за счёт перевода на ClickHouse MergeTree».
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟢 low |
| resume | 🔴 high |
### R02: Buzzword stacking
**Что:** Нагромождение модных терминов без привязки к конкретной работе.
**Почему:** AI генерирует "красиво звучащие" наборы компетенций, которые не привязаны к реальным проектам.
**Примеры маркеров:**
- «Кросс-функциональное взаимодействие, стратегическое планирование, непрерывное совершенствование»
- «Agile-трансформация, цифровая зрелость, data-driven подход»
**Рекомендация:** Каждый buzzword привязать к конкретному проекту или убрать. Не более одного buzzword на bullet point.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟢 low |
| resume | 🔴 high |
### R03: Однородная структура bullet points в опыте
**Что:** Каждый пункт начинается с глагола в прошедшем времени, одинаковой длины, одинаковой конструкции.
**Почему:** AI генерирует "правильные" bullet points по шаблону. Реальное резюме, написанное человеком, имеет разную структуру пунктов.
**Примеры маркеров:**
- «Разработал систему мониторинга...»
- «Реализовал интеграцию с...»
- «Оптимизировал процесс...»
- «Внедрил автоматизацию...»
(все по 8-12 слов, все глагол + объект + контекст)
**Рекомендация:** Варьировать структуру. Добавить пункт с результатом ("Скорость выросла в 3 раза"). Добавить пункт с контекстом ("Проект для Ростелеком, команда 5 человек"). Разная длина пунктов.
| Контекст | Severity |
|----------|----------|
| article | 🟢 low |
| message | 🟢 low |
| resume | 🔴 high |
---
## Категория: Переходные слова и связки
### C01: Избыточные conjunctive phrases
**Что:** «Более того», «Кроме того», «Помимо этого», «Вместе с тем», «Moreover», «Furthermore», «Additionally» — слишком часто.
**Почему:** AI использует формальные связки между каждым абзацем. Человек чаще начинает новый абзац без связки или использует неформальные переходы.
**Примеры маркеров:**
- Три абзаца подряд, начинающихся с «Кроме того», «Более того», «Помимо этого»
**Рекомендация:** Убрать 2 из 3. Начать абзац с сути, без вводного оборота.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🔴 high |
| resume | 🟡 medium |
### C02: False range ("от X до Y")
**Что:** «От небольших стартапов до крупных корпораций», «От технической экспертизы до креативного мышления», «From intimate gatherings to global movements».
**Почему:** Конструкция подразумевает спектр, но на деле это просто две слабо связанные вещи, одетые в "красивую" рамку.
**Примеры маркеров:**
- «Опыт работы от MVP-проектов до enterprise-решений»
- «Навыки от написания кода до управления командами»
**Рекомендация:** Сказать прямо: «Работал и с MVP, и с enterprise-проектами» или перечислить конкретные проекты.
| Контекст | Severity |
|----------|----------|
| article | 🟡 medium |
| message | 🟡 medium |
| resume | 🔴 high |