##이 도구는 개인적인 실패 경험에서 출발했습니다.

며칠 전, 저는 자신만만하게
“HRPO-X v1.0.1 – 하이브리드 추론 최적화 프레임워크 구현체”라는
거창한 이름의 리포지토리를 공개했습니다.
최신 논문을 기반으로 아키텍처를 구현했다고 믿었던 프로젝트였습니다.

하지만 공개 직후 달린 첫 반응은 제 기대를 산산조각 냈습니다.

“혹시나 해서 들어가 봤는데, 역시나네요.
환각(Hallucination) 덩어리로 만들어진 AI Slop 레포.”

처음엔 악플인 줄 알았습니다.
하지만 코드를 다시 열어 하나하나 뜯어보니,
그 지적은 뼈아플 정도로 정확했습니다.


문제는 “의도”가 아니라 “밀도”

해당 프로젝트는 단순한 데모가 아니라,
논문을 프로덕션 아키텍처로 옮기는 과정에 대한 연구 결과물이었습니다.

  • 아키텍처 설계 있음
  • 폴더 트리 정리됨
  • 설정 파일(Config) 존재
  • 클래스 정의 및 인터페이스 완비
  • 내부 감사(audit) 알고리즘도 정상 통과

겉보기엔 완벽했습니다.
심지어 기존의 린터(Linter)나 구조적 무결성 검사도 모두 통과했습니다.

하지만 원인을 파고들면서,
저는 치명적인 문제를 발견했습니다.

“구조적 무결성(Structural Integrity)은 완벽했지만,
내용적 밀도(Content Density)는 0에 수렴하고 있었다.”

즉,

  • 껍데기(Shell)는 그럴싸한데
  • 실제 구현 로직은 비어 있거나(pass)
  • 과도하게 포장된 주석으로만 채워져 있었습니다

저는 이것이
AI가 생성한 코드의 전형적인 쓰레기 패턴,
즉 “AI Slop”임을 인정할 수밖에 없었습니다.


그래서 만든 도구: AI-SLOP Detector

그래서 만든 도구가 AI-SLOP Detector입니다.

목표는 단순합니다.

  • 코드가 얼마나 잘 작동하는가가 아니라
  • 코드와 설명 사이에 얼마나 괴리가 있는가를
  • 정적으로 관찰하는 것

이를 위해 다음과 같은 지표를 사용합니다.


무엇을 탐지하나

README에서 정의한 AI Slop 패턴은 크게 세 가지입니다.

1. Empty Function Slop (공허한 함수)

  • 설명은 복잡하지만
  • 실제 구현이 pass 수준인 함수

2. Buzzword Inflation (용어 인플레이션)

  • 코드 복잡도와 무관하게
    neural, transformer, quantum, enterprise 같은 용어가
    과도하게 사용되는 경우

3. Overhyped Comments (과대포장된 주석)

  • 단순한 로직에
    “혁신적”, “state-of-the-art” 같은 표현이 반복되는 주석

분석 방식 (요약)

AI-SLOP Detector는 Python AST를 기반으로,
여러 지표를 병렬로 계산해 Deficit Score (0–100)를 산출합니다.

핵심 지표

LDR (Logic Density Ratio)
  • 전체 코드 중 실제 로직이 차지하는 비율
  • 기준: 45% 미만이면 CRITICAL(F) 등급
Inflation Score
  • 문서·주석의 버즈워드(허세 과장 용어) 밀도 대비 코드 복잡도
  • 기준: 2.0배 이상이면 CRITICAL
DDC (Dependency Density Check)
  • 사용되지 않는 import
  • 의미 없는 의존성 비율
Pattern Registry
  • empty function
  • bare except
  • TODO / FIXME 남용 등
  • 다수의 AI 생성 코드 특유 패턴 탐지

이 값들을 종합해 다음 상태로 분류합니다.

  • CLEAN
  • SUSPICIOUS
  • INFLATED
  • CRITICAL

프로젝트 상태

  • Python 3.8+
  • CLI 및 Python API 제공
  • 테스트 34개 통과
  • 최신 버전: v2.5.0 (2026-01-09)

누구를 위한 도구인가

  • 노코드 / 로우코드 도구를 사용하는 사람들
  • AI로 생성된 코드를 검수해야 하는 입장의 개발자
  • “그럴듯해 보이지만 찜찜한 리포지토리”를 자주 마주하는 사람들

이 분들에게
“이 코드가 왜 이상해 보이는지”를 설명할 수 있는 신호
제공하는 것이 목적입니다.


마지막으로

위에서 언급한 HRPO-X v1.0.1은 전면 리팩토링을 거쳐,
현재는 교육용 버전으로 현실성 있게 재정비했습니다.

이 글과 도구가
비슷한 고민을 겪고 있는 분들에게
작게나마 도움이 되었으면 합니다.

모든 개발자님 화이팅입니다!