o2o-plagiarism-ai/docs/SCOPE_AND_METRICS.md
hbyang 91aa077898 docs: 과업 범위·성능지표 정리와 AI 의심도 위상 명시
SCOPE_AND_METRICS.md 신규. 연구개발계획서(2-4 성능지표, 나-3 개발내용,
나 성과물 목표)를 대조해 오투오 몫을 정리했다.

- 성능지표 8개 중 우리가 수치를 책임지는 것은 No.3·4·7 세 개다.
- No.4 는 재현율이 아니라 정밀도라 애매하면 표절이라 말하지 않는 쪽이
  지표에 유리하다. 이 성질이 설계를 지배한다.
- 사용자 맞춤형 요약의 상세도·강조 내용 옵션이 계획서에 있는데 미구현이다.
- python 3.9 호환성 위험: 평가환경이 3.9 고정인데 config.py 와 schemas.py 가
  from __future__ import annotations 없이 PEP 604 를 쓴다. 둘 다 Pydantic
  모델이라 어노테이션이 런타임에 평가된다. 현재 개발환경이 3.14 라 안 드러난다.
- No.3 귀속이 오투오/고려대 사이에서 불분명해 확인이 필요하다.

AI_DETECTION.md 에 「위상과 기준」절 추가. AI 생성 판별은 성능지표 8개
어디에도 없고 계획서 개발내용에도 없다. "콘텐츠 표절 여부 AI 탐지 모듈"은
AI로 표절을 탐지하는 모듈이지 AI가 쓴 글을 탐지하는 모듈이 아니다.
따라서 정확도를 보고하지 않는다. 정답 라벨이 없는 대상에 정확도를 주장하면
검토자를 과신하게 만들 뿐이다. 대신 근거(79권 대비 문체 이례도)와
기준(실측 백분위 컷)을 명시하고, 할 수 있는 말과 없는 말을 표로 구분했다.
8장의 예시 컷이 자리표시자 값이라 실측값으로 갱신했다.

DATA_REQUEST_SPEC.md §5 요약 정답셋 가이드 보강. 다중 참조 포맷, 줄글 규격,
dev/test 분리(test 는 사람 직접 작성 — LLM 이 쓴 정답을 LLM 출력으로 맞히면
점수가 부풀고 방어할 수 없다), book 단위 누출 방지, §5.1 파일럿 절차,
§5.2 recall 정정 이력.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-19 13:54:40 +09:00

7.0 KiB

오투오 과업 범위와 성능지표 — 무엇을 개발하고 무엇을 측정하는가

출처: data/(협약용) 연구개발계획서 PART 2.pdf (2024 문체부 연구개발사업) — 2-4. 연구개발 성능지표 및 평가방법(p.23~24), 나-3. 2단계 개발내용 ㄷ.오투오(p.21), 나. 성과물 목표(p.25). 현재 2단계(2-1년차) 목표치 기준.

1. 성능지표 8개 중 오투오 몫

전체 8개 중 우리가 수치를 책임지는 것은 3개다. 나머지는 컨소시엄 다른 기관 몫이며, 우리 코드가 관여하더라도 측정 주체가 아니다.

No 지표 2-1년 목표 비교수준 가중치 담당
3 메타데이터 추출 F1 83 이상 KLUE NER Leaderboard top5 이내 10 오투오(요소 분석 모듈)
4 표절 여부 판별 정밀도(precision) 97% 10 오투오
7 요약 성능 (N-gram ROUGE) 65 gpt-4o 줄글 요약(64%) 10 오투오
1 sLLM 환각방지 (Ko-TruthfulQA) 85 HF ko LLM 상위10 평균(84.047) 15 고려대
2 sLLM 상식생성 (Ko-CommonGen v2) 55 (53.095) 15 고려대
5 콘텐츠 요소 추천 NDCG 80 10 바이칼AI
6 메타기반 교정/교열 정확도 90 구글·MS 맞춤법(92%) 10 바이칼AI
8 정량 사용성(UX) 평가 85점 20 외부기관

⚠️ No.3의 귀속은 확인이 필요하다. 성과물 목록상 오투오는 "콘텐츠 요소 분석 AI 서비스 모듈", 고려대는 "출판콘텐츠추출모델(sLLM)"이라 요소 추출이 양쪽에 걸친다. 측정 주체를 컨소시엄에 확인하고 이 문서를 갱신할 것.

No.4가 재현율이 아니라 정밀도라는 점이 설계를 지배한다. 놓치는 것보다 잘못 지목하는 것이 감점이므로, 애매하면 표절이라고 말하지 않는 쪽이 지표에 유리하다.

2. 오투오 2단계 성과물

  • 콘텐츠 요소 분석 AI 서비스 모듈 1식 (고도화)
  • 콘텐츠 표절 여부 AI 탐지 모듈 1식 (고도화)
  • SW 저작권 등록 1건

"콘텐츠 표절 여부 AI 탐지 모듈"은 AI로 표절을 탐지하는 모듈이다. AI가 쓴 글을 탐지하는 모듈이 아니다. 5장 참조.

3. 계획서가 명시한 개발내용과 현재 상태

가. 스토리 요약/분석 기술 고도화

계획서 항목 상태 남은 일
데이터 수집·전처리 (도메인별 데이터셋 구축) 미착수 컴북스 데이터 수령 후
고도화 요약 모델 (문맥 기반 문장 추출, 키워드·문장 관계 분석) summarizer.py TextRank 실데이터 튜닝
통합 요약 시스템 (추출적+추상적 하이브리드) 구현 LLM 키 연결 시 동작
사용자 맞춤형 요약 (길이·상세도·강조 내용 옵션) ⚠️ 부분 상세도·강조 내용 옵션 미구현

SummaryRequest에 있는 것은 ratio(길이), max_sentences, use_abstractive뿐이다. 계획서가 명시한 상세도(detail)강조 내용(emphasis) 옵션이 없다. 지표에는 안 잡히지만 성과물 명세에 적힌 기능이므로 개발이 필요하다.

나. 표절 검출 기술 고도화

계획서 항목 상태 남은 일
군집화 기반 부분 표절 수치화 (요소 교체형) clustering.pypartial_signal 실데이터 임계값 튜닝
Human Feedback Preference Optimization으로 sLLM 고도화 ⚠️ 골격만 사람 선호 라벨 + GPU 학습
점검: 자체 구축 데이터셋으로 판별 수치 정의 하니스 자서전 표절 샘플 필요

4. 측정 계획 — 지표별 평가환경

계획서가 평가환경까지 못박아 두었다. 측정은 이 환경에서 해야 인정된다.

No 평가방법 평가환경
3 KLUE NER 학습 11,000건 / 테스트 2,000건, Leaderboard baseline 10여 개와 상대 비교 python 3.9
4 자체 제작 실제 표절 글 vs 비표절 글을 classification 하여 precision 계산 Ubuntu 22.04, python 3.9, 자체 test script (GPU 불필요)
7 요약 데이터셋 구축 후 n-gram ROUGE recall 계산 (수식 분모가 참조 n-gram 수). 다중 참조 전제 A100 GPU, python 3.9, pytorch 2.2.2+cu121, transformers 4.39.3

⚠️ python 3.9 호환성 위험 (확인 필요)

평가환경이 python 3.9 고정인데, 현재 코드 일부가 3.9에서 임포트 단계에 실패할 가능성이 있다.

  • app/core/config.py, app/api/schemas.pyfrom __future__ import annotations 없이 float | None (PEP 604) 문법을 쓴다.
  • 두 파일 모두 Pydantic 모델이라 어노테이션이 런타임에 평가된다. python 3.9에는 X | Y 연산자가 없어 TypeError 가 난다.
  • 현재 개발 환경은 python 3.14 라 이 문제가 드러나지 않는다.

해야 할 일: python 3.9 컨테이너에서 임포트 스모크 테스트를 돌려 실제로 깨지는지 확인하고, 깨지면 Optional[float] 로 바꾸거나 평가 스크립트를 본체와 분리한다. No.4 측정 직전에 발견하면 일정이 밀린다.

5. AI 생성 의심도의 위상 — 지표가 아니다

성능지표 8개 어디에도 없고, 계획서 개발내용에도 없다. 오투오 성과물인 "콘텐츠 표절 여부 AI 탐지 모듈"은 AI로 표절을 탐지하는 것이지 AI 생성물을 탐지하는 것이 아니다.

따라서 이 기능은 성능을 측정하지 않는다. 정확도·F1·AUROC 를 보고하지 않으며, 목표치도 두지 않는다. 대신 근거와 기준을 설명할 수 있어야 한다. 자세한 내용은 AI_DETECTION.md 의 "위상과 기준" 절에 있다.

6. 요약 — 남은 일

더 개발해야 하는 것

  1. 사용자 맞춤형 요약 옵션 — 상세도, 강조 내용 (계획서 명시, 현재 없음)
  2. Human Feedback Preference Optimization — 현재 골격만. 선호 라벨 + GPU 필요
  3. 도메인별 요약 데이터셋 구축 — 컴북스 데이터 수령 후
  4. python 3.9 호환성 정리 — 평가환경 대비

측정해야 하는 것 (전부 데이터 대기)

  1. No.4 표절 정밀도 97% — 자체 제작 표절/비표절 글 필요. 정밀도 지표이므로 임계값은 재현율을 희생해서라도 오탐을 줄이는 쪽으로 잡는다
  2. No.7 요약 ROUGE 65 — 요약 정답셋 300건 별도 구축 필요 (컴북스 미보유). 본 구축 전 파일럿 20건으로 사람 상한을 먼저 측정할 것 (eval_rouge.py --iaa). 상한이 65 미만이면 규격부터 조정해야 한다. 구축 가이드는 DATA_REQUEST_SPEC.md §5
  3. No.3 메타 추출 F1 83 — KLUE NER 로 측정 가능. 귀속 확인 후 진행

데이터와 무관하게 지금 가능한 것

  • SW 저작권 등록 1건 (서류 제출)
  • 사용자 맞춤형 요약 옵션 개발
  • python 3.9 호환성 확인
  • 바이칼/컴북스 E2E 통합