Разработка AI-системы детекции AI-сгенерированных работ
Детекция AI-сгенерированных учебных работ — специализированная задача с более высокими требованиями к точности и обоснованности по сравнению с общими AI-детекторами. Ошибочное обвинение в академической нечестности — серьёзное нарушение прав студента.
Признаки AI-сгенерированного текста
Статистические сигналы:
- Низкая perplexity: AI выбирает предсказуемые слова
- Низкий burstiness: равномерная длина предложений без характерных для человека «всплесков»
- Отсутствие личного стиля и экспериментов с языком
Семантические сигналы:
- Слишком правильная структура (введение-тезис-аргументы-вывод без отступлений)
- Отсутствие персональных примеров и конкретики
- «Энциклопедический» стиль для заданий, где ожидается личный взгляд
- Характерные AI-фразы: «Важно отметить», «Это фундаментальный вопрос», «В заключение следует подчеркнуть»
Ансамблевый подход
class AIContentDetectionResult(BaseModel):
is_ai_generated: bool
confidence: float
signals: list[DetectionSignal]
human_review_required: bool
evidence: str
def detect_ai_content(text: str) -> AIContentDetectionResult:
signals = []
# Сигнал 1: GPTZero API
gptzero_score = gptzero_api.classify(text)
signals.append(DetectionSignal("gptzero", gptzero_score))
# Сигнал 2: Perplexity через локальную модель
perplexity = compute_perplexity(text)
signals.append(DetectionSignal("perplexity", normalize_perplexity(perplexity)))
# Сигнал 3: Burstiness
burstiness = compute_burstiness(text)
signals.append(DetectionSignal("burstiness", 1 - burstiness)) # низкий burstiness → высокий сигнал
# Агрегация
avg_signal = weighted_average(signals)
return AIContentDetectionResult(
is_ai_generated=avg_signal > 0.7,
confidence=avg_signal,
signals=signals,
human_review_required=0.5 < avg_signal < 0.85,
evidence=generate_evidence_report(signals, text)
)
Процедура при детекции
- Система флагирует работу с confidence > 0.7
- Обязательная ручная проверка преподавателем
- При необходимости: устное собеседование со студентом (может ли объяснить содержание?)
- Финальное решение — только за человеком, не за AI-системой
Легитимное использование AI в учёбе
Не все AI-следы означают нарушение. Институту нужна политика: что разрешено (использовать AI для идей, проверять грамматику), что запрещено (сдавать AI-текст как свой). Детектор настраивается согласно политике — не «AI = нарушение».







