AI-Native 시리즈 · 연구 검증
내 AI가 가짜 인용을 잡아냈다. 그리고 자신의 사각지대를 스스로 밝혔다.
1분 요약 — 이 글에서 얻어갈 것
나는 내가 만든 연구 검증 도구를 실제 미공개 AI 논문 두 편에 시험 삼아 돌려봤다. 이 도구는 조작된 인용 8건과 근거 결과가 전혀 없는 핵심 지표를 잡아냈으며, 자신이 아직 할 수 없는 세 가지도 스스로 밝혔다. 가장 인상적인 대목은 이 도구가 자기 자신에게도 똑같은 규칙을 적용했다는 사실이다.
나는 연구 주장이 신뢰할 만한지 판단하는 도구를 만들었다. 그리고 이 도구를 실제 미공개 논문 두 편에 적용한 뒤, 자기 자신도 채점하도록 시켜봤다. ~7분 분량.
모두가 돌려보는 데모야말로 거짓말을 하는 데모다
어떤 AI 도구든 제작자가 고른 예시에서는 근사해 보이기 마련이다. 의미 있는 테스트는 오직 현실이 입력값을 고르는 테스트뿐이다. 그래서 나는 내가 만든 도구 — 연구 검증기 라는, AI가 작성한 주장이 언제 신뢰할 만한지 판단하는 게 유일한 임무인 도구 — 를 가져다가 실제 미공개 AI 논문, 즉 동료가 초안을 작성 중이던 논문 두 편에 적용해봤다. 허락을 받아 이 도구를 실제 진행 중인 프로젝트에 직접 작동시켰다.
이 도구가 강제하는 규칙은 일부러 심심하다: 어떤 주장이 "검증됨"이 되려면 인용이 실제로 연결되어야 하고, 근거가 그 주장의 강도를 실제로 뒷받침해야 한다. 그렇지 않으면 ⚪ 미검증으로 강등된다. 조용히 등급을 올려주는 일은 없다. 픽스처는 뭔가 작동한다는 것만 증명한다. 진짜 논문이라야 그게 쓸모 있는지.
잡아낸 것들 (몇 분 만에)
두 초고 모두 AI 보조 연구에 대한 신뢰를 조용히 갉아먹는 바로 그 실패들을 담고 있었다:
- 조작된 인용 8건. 다음과 같은 자리표시자들이
[cite: 611]마치 참조문헌처럼 보이지만 실제로는 아무것도 가리키지 않는, 사실처럼 생긴 구멍이었다. 이 게이트는 연결되지 않는 인용을 모두 표시해 낸다. 나는 여덟 건 모두를 눈에 띄는[CITATION NEEDED]마커로 교체했다. - 아무 근거 없는 헤드라인 지표. 두 초록 모두 "시간적 일관성 점수 0.92"를 내세웠지만, 그 숫자를 산출하는 결과표는 어디에도 없었다. 게이트는 이를 ⚪ 미검증으로 강등시켰다. 나는 그것을 소스 안에서 검증 대기 중인 목표치로 다시 썼다 — 결과를 지어내지도 않았고, 누군가의 주장을 조용히 지워버리지도 않았다.
- 자율성에 대한 과잉 주장. "병렬 에이전트"가 고자율성 작업을 수행하고 있다는 주장은 자동으로 상한이 걸렸다. 사실 여부를 둘러싸고 이견이 있는 영역이기 때문이다 — 답을 저렴하게 확인할 수 없는 곳에서 자율주행을 주장할 수는 없다.
그런 다음 수정 사항들은 커밋되어 실제 프로젝트에 푸시되었고, 각각이 검토 가능한 diff였다. 슬라이드쇼가 아니라 소스 코드의 변경이었고, 이력에 남아 언제든 되돌릴 수 있었다.
열다섯 살짜리도 따라 할 수 있는 사고 모델
모든 주장에 인용을 붙인 다음, 짧은 사다리를 하나씩 올라가게 한다. 인용이 연결되는가? 아니오 → 미검증.증거의 종류가 주장의 강도를 뒷받침하는가? 실험에서 관찰한 수치는 "검증됨"이 될 수 있지만, AI가 그저 주장한 수치는 그럴 수 없다. 모델 밖에서 뒷받침하는 무언가가 나오기 전까지는 미검증에 머문다. 모든 단계를 통과한 주장만이 최상위 등급을 받는다. 나머지는 버려지는 게 아니라 정직하게 라벨이 붙을 뿐이다.
원리는 이게 전부이며, 훌륭한 과학이 이미 쓰고 있는 방식과 다르지 않다. 이 도구는 그 원리를 그저 기계적으로 작동시킬 뿐이다. 그 덕에 "날 믿어"가 "검증됨"으로 슬쩍 둔갑할 수 없다.
이 도구가 할 수 없었던 것 — 그리고 그것이야말로 진짜 성과인 이유
대부분의 도구 데모가 건너뛰는 부분이 여기다. 이 도구가 내세우는 제1원칙은 자신의 사각지대를 밝힐 것 이다. 그래서 나는 이 원칙을 도구 자신에게도 그대로 적용해봤다. 정직하게 인정한 세 가지 한계는 다음과 같다.
- 아직 논문을 읽고 주장으로 변환하지는 못한다. 판단 대상이 될 주장은 내가 직접 손으로 추려내야 했다. 이 도구는 주장을 게이트에 통과시킬 뿐, 아직 문서를 읽어 들여 주장을 스스로 만들어내지는 못한다.
- 인용 확인은 오프라인 방식이다. 논문 자체의 참고문헌 목록에 해당 출처가 있는지는 확인하지만, 실제 웹에 나가 살아있는 출처를 확인하는 단계까지는 아직 가지 못한다.
- "라이브 사이트에서 작동"한 것도 사실은 도구가 아니라 우회 경로 덕분이었다. 실제로 안정적으로 작동한 통로는 프로젝트의 git 백엔드였지, 도구 자체가 아니었다. 매끈한 성공담보다 훨씬 값진 발견이었다.
그래서 나는 당연한 다음 일을 했다. 빠진 조각을 직접 만든 것이다 — 초고에서 미완성 섹션, 가짜 인용 자리표시자, 근거 없는 지표를 스캔한 뒤 후보 주장들을 곧바로 같은 게이트에 넘기는 원고 리더다. 이 도구는 테스트까지 갖춘 채 그날 바로 배포됐다. 빈틈은 기능이 되었고, 그 기능은 스스로 다음 한계를 밝혔다(추출기가 아직 너무 성급하다는 것). 그 순환은 놓친 것을 찾아내고, 메우고, 새로운 한계를 인정하는 것 — 바로 그게 핵심이다.
놓친 것들이야말로 진짜 성과인 이유
스스로에게 정직하다고 믿을 수 없는 검증기는 차라리 없는 편이 낫다. 신뢰를 세탁해버리기 때문이다. 이번 실행이 증명한 가장 중요한 사실은 가짜 인용 8개를 잡아냈다는 게 아니다. 도구에게 자기 제작자를 채점해보라고 시켰을 때, 왼쪽 칸과 오른쪽 칸을 모두 갖춘 스코어보드를 내놓았다는 사실이다. 라벨이 아니라 결과물 자체를 믿어라. 진짜 신뢰는 오른쪽 칸에서 나온다.
코드 리뷰든 연구 검증이든 평가 하네스든, 품질을 판단하는 도구를 만들고 있다면 기준은 이래야 한다. "자체 데모를 통과하는가"가 아니라 "자기가 볼 수 없는 것을 말해주는가". 소리 내어 실패하는 도구를 만들어라.
AI-Native 시리즈 더 보기
이 모든 글은 Writing 섹션(홈페이지)에 있다.
AI-Native 시리즈의 일부. 검증기는 자신의 규칙을 스스로에게 적용했다 — 느낌이 아니라 검증하라, 자신의 사각지대를 밝혀라. Publish 버튼은 당신의 것이다.