
AI로 글이나 이미지를 만들어 쓰다 보면 어느 순간 같은 고민에 닿습니다. 만드는 건 빨라졌는데, 이게 맞는지 확인하는 일은 그대로 제 몫으로 남아 있다는 것. 숏폼 영상에 들어갈 이미지를 자동으로 생성하는 파이프라인을 만들면서, 저는 이 "확인" 단계까지 자동화해 보기로 했습니다. 그 과정에서 한 가지를 분명히 배웠습니다. 만든 AI한테 "이거 맞아?"라고 물어보면 거의 다 "맞다"고 합니다.
자기 검수의 함정
처음에는 단순하게 생각했습니다. 이미지를 만든 다음, 같은 흐름 안에서 "방금 만든 거 문제없는지 봐줘"라고 한 번 더 시키면 되지 않을까. 실제로 글을 쓰는 쪽 도구는 만든 AI가 자기 결과를 스스로 점검하는 단계를 이미 갖고 있었습니다.
그런데 자기가 만든 걸 자기가 검사하면, 웬만하면 통과시킵니다. 사람도 자기 글 오타는 잘 못 잡는 것과 비슷합니다. 그래서 저는 글 쪽 도구의 그 "스스로 점검"을, 분리된 검사자 + 객관적인 통과·실패 기준 + 횟수 제한으로 바꾸는 데서 시작했습니다. 자기 검수만으로는 약하다는 게 출발점이었습니다.
만드는 쪽과 검사하는 쪽을 분리한다
핵심은 간단합니다. 만드는 AI와 검사하는 AI를 분리하는 것.
저는 이미지를 만드는 단계 다음에, 검사 전용 에이전트를 따로 호출하도록 했습니다. 같은 대화 안에서 이어 묻는 게 아니라, 검사만 하는 별도 컨텍스트에서 "이 이미지가 기준을 통과하는가"를 항목별로 통과·실패로 판정하게 했습니다. 만든 맥락을 모르는 채로 결과만 보고 판정하니, 그제야 "그럴듯하지만 틀린" 것들이 걸리기 시작했습니다.
무엇을 자동으로 다시 만들고, 무엇은 손대면 안 되나
여기서 중요한 구분이 하나 있었습니다. 검사에 실패했다고 전부 자동으로 다시 만들면 오히려 나빠집니다.
검사 항목은 일곱 개였는데, 자동으로 다시 만드는 대상은 그중 눈에 보이는 기계적 결함 몇 가지(같은 구도가 계속 반복됨, 화면 안전영역 침범 같은 것)로만 한정했습니다.
- 개수·용량·중복 같은 결정론적 검사는 이미 별도 스크립트가 보고 있었습니다. 그래서 루프가 같은 걸 또 만들지 않게 했고, 이게 실패하면 자동으로 고치는 대신 "실제 버그"로 사람에게 올렸습니다.
- 캐릭터 외형 일관성은 자동 재생성에서 빼버렸습니다. 자동으로 다시 만들면 외형이 매번 조금씩 흔들려서, 고치려다 더 망가지기 때문입니다. 이건 사람이 직접 봅니다.
자동으로 고쳐도 되는 것과, 자동으로 건드리면 안 되는 것을 나누는 일이 사실상 설계의 절반이었습니다.
무한 반복을 막는 장치
자동으로 "실패 → 다시 만들기"를 걸면 가장 무서운 게 무한 반복입니다. 그래서 상한을 2회로 뒀습니다. 같은 장면이 두 번 실패하면 자동을 멈추고 사람 게이트로 넘깁니다.
다시 만들 때 결과가 달라지는 이유도 짚어둘 만합니다. 같은 모델이라도 호출할 때마다 무작위성이 있고, 저는 seed를 고정하지 않았습니다. 그래서 다시 부르는 것 자체가 변주가 됩니다. 실제로 한 편을 돌려봤더니, 검사 일곱 개 중 하나(캐릭터 일관성)를 잡아냈고 설계대로 사람에게 넘어갔습니다. 그리고 다른 기계적 결함 하나는 다시 만들기로 돌렸더니 이미지 속에 엉뚱하게 박혀 있던 영문 글자가 사라졌습니다. 무작위 재생성이 결함을 일부 자연히 고쳐준 셈입니다.
검수도 공짜가 아니다
이 구조를 만들면서 알게 된 함정도 정리해 둡니다.
- 기준 게이밍: 검사 기준만 맞추려다 정작 중요한 품질이 조용히 떨어질 수 있습니다.
- 진동: 한 기준을 고치면 다른 기준이 깨지기도 합니다.
- 비용: 자동 반복은 토큰을 더 씁니다. 부분만 다시 만들고 횟수를 제한해서 묶어두긴 했지만, 검수도 분명히 비용입니다.
"검수를 너무 많이 시키면 생기는 일"을 따로 다루는 글이 있을 만큼, 과한 검수는 흔한 문제입니다.
개발이 아니어도 쓸 수 있는 원칙
이건 이미지 파이프라인 이야기지만, 같은 원리는 글이나 다른 작업에도 적용해볼 수 있습니다. 사실 지금 이 블로그 글을 만드는 파이프라인도, 글을 쓰는 단계와 품질을 검사하는 단계를 다른 에이전트로 분리해 두었습니다.
정리하면 이렇습니다.
- 만든 AI에게 검사를 맡기지 말고, 검사는 다른 AI(또는 새 대화)에게 시킵니다.
- 통과·실패 기준을 미리 글로 정합니다. "느낌상 괜찮다"가 아니라 항목별로.
- 자동으로 다시 시켜도 되는 것(기계적 결함)과 사람이 봐야 하는 것(정체성·일관성·사실관계)을 나눕니다.
- 다시 시키는 횟수에 상한을 둡니다. 두 번 실패하면 사람에게.
- 검수도 비용이라는 걸 인정하고, 전부가 아니라 자동화로 이득인 부분만 묶습니다.
자동화의 목표는 사람을 빼는 게 아니라, 사람이 봐야 할 것만 남기는 것이었습니다. 검수를 자동화할수록, 오히려 마지막에 사람이 보는 게 무엇이어야 하는지가 더 또렷해졌습니다.