카드뉴스 개발로그 · 1화
카드뉴스가 8컷 원화를 보지 않고 따로 그렸다: 두 단계 제작선의 첫 주
AC POST의 논문을 쉽게 보려고 두 단계 제작선을 만들었다. 앤디가 8컷 원화를 그리고 라틸리언스가 카드뉴스로 옮긴다. 첫 주에는 카드가 원화를 보지 않았고, 품질을 잡으려던 규칙이 형식을 가뒀고, 프롬프트가 카드 위로 새어 나왔다.
AC POST는 매일 아침 논문과 기사를 한 부의 신문으로 낸다. 그런데 논문 요약은 폰에서 읽기에 여전히 길었다. 일간지의 뉴스를 쉽게 보려고 카드뉴스를 만들기로 했다. 이 연재는 그 카드뉴스가 헤르메스의 텔레그램 봇에서 시작해 게시판과 검증 보고서, 하루 두 번 나가는 시황 카드가 되기까지의 기록이다.
두 단계 제작선
구조는 두 단계로 잡았다. 먼저 앤디봇이 논문 하나를 쉬운 8컷짜리 원화로 그린다. 그러면 라틸리언스봇이 그 원화를 이어받아 4:5 비율의 카드뉴스 세트로 옮긴다. 원화는 이야기의 흐름을 잡고, 카드는 그 흐름에 글자를 얹어 넘겨 보게 하는 역할이다.
5월 16일 저녁에 이 제작선을 AC POST에 붙였다. 처음에는 범위부터 틀렸다. 논문 160편을 전부 카드로 만들려 하고 있었다. 만들 것은 AC POST의 AI 리서치 섹션에 올라온 논문뿐이었다.
카드가 원화를 보지 않았다
다음 날 점심, 결과를 나란히 놓고 보니 이상했다. 앤디의 8컷 원화는 잘 나왔다. 그런데 그걸 바탕으로 만들었다는 카드뉴스는 전혀 다른 그림이었다. 라틸리언스가 원화를 보지 않고 논문 내용만 보고 새로 그리고 있었다. 내가 원한 건 8컷 원화와 장면이 일치하는 카드뉴스였다. 두 번째 단계가 첫 번째 단계의 결과를 실제로 입력으로 받게 고쳤다.
그날 저녁에는 대체로 만족했고, 다음 날부터 적용할 다섯 가지를 적었다. 이미 만든 논문은 다시 만들지 않는다. 그날 만든 총량을 “1/20”처럼 이미지 위에 찍지 않는다. 챕터 제목이 빠진 카드는 에러로 친다. 레포 분석도 같은 방식으로 원화와 카드뉴스를 만든다. 그리고 이 모두를 매일 정해진 시각에 자동으로 돌린다.
품질을 잡으려다 형식을 가뒀다
제작선을 붙이기 한 주 전에도 비슷한 일이 있었다. 앤디에게 8장짜리 카드뉴스를 부탁했더니, 1/8부터 8/8까지 여덟 장이 아니라 한 장 안에 8컷을 그려 왔다. 이걸 막으려고 카드 수와 레이아웃을 규칙에 박아 넣자 반대 문제가 생겼다. 한 장을 부탁해도, 다섯 장이나 아홉 장을 부탁해도 같은 8장 틀로 나왔다. 품질 기준과 형식을 같은 규칙으로 묶은 탓이었다.
그래서 둘을 떼었다. 높은 품질 기준만 공통으로 두고, 카드 수와 형식과 장면은 매번 요청과 원문에서 정한다. 카드뉴스는 4장에서 9장 사이에서 내용에 맞게 정하고, “정확히 8장”이라고 명시했을 때만 장수를 고정한다.
5월 22일에는 라틸리언스 카드의 소제목 자리에 내용 대신 프롬프트 문구가 찍혀 나왔다. 모델에게 준 지시와 화면에 보일 글이 한 통로로 섞인 것이다. 소제목은 원문 내용에서만 만들고, 프롬프트와 제작용 지시는 카드에 그려지는 글자에 들어가지 못하게 막았다. 5월 25일에는 라틸리언스 결과물에 붙는 논문과 레포 요약의 형식이 마음에 들지 않아, 따로 받아 보던 DeepSeek 분석을 API로 걸어 자동으로 받게 했다.
배운 것
여러 단계로 만드는 생성물에서는 뒤 단계가 앞 단계의 결과를 실제로 봐야 한다. 이름만 이어져 있고 입력이 끊겨 있으면 각 단계는 저마다 그럴듯한 다른 것을 만든다. 그리고 품질 규칙과 형식 규칙은 다르다. 품질은 고정해도 되지만 형식을 고정하면 사용자의 요청이 템플릿에 진다.