본문으로 건너뛰기

INDEPENDENT PRODUCT STUDIO

INSIGHT

같은 일에 100분과 18분, 차이는 브라우저 탭 하나였어요

브라우저로 글을 차례로 열어 처리하는 AI 에이전트 루틴이 같은 일을 하면서 100분이 걸리기도, 24분이 걸리기도 했어요. 원인은 모델이 아니라 오래 열려 있던 탭이었고, 규칙 세 줄을 바꾼 뒤 하루 실행 시간이 198분에서 58분으로 줄었어요.

같은 일에 100분과 18분, 차이는 브라우저 탭 하나였어요

저희 스튜디오는 반복 작업 30여 개를 AI 에이전트 루틴으로 돌리고 있어요. 정해진 시간이 되면 에이전트가 브라우저를 열고, 글을 읽고, 결과를 기록해요. 사람이 옆에서 지켜보지 않으니 느려져도 잘 티가 나지 않아요.

9월 27일에 루틴 전체를 한 번 훑어보다가 이상한 걸 찾았어요. 네이버 블로그 글 15편 안팎을 차례로 열어 읽고 처리하는 루틴 하나가, 하는 일은 매번 비슷한데 걸린 시간이 크게 달랐어요.

같은 일인데 100분, 73분, 24분

9월 26일에 이 루틴은 세 번 돌았어요.

  • 12:30 회차: 100분, 토큰 약 1,190만
  • 17:30 회차: 73분, 토큰 약 790만
  • 21:30 회차: 24분, 토큰 약 830만

세 번 모두 처리한 글 수는 비슷했고, 모델과 작업 지시문도 같았어요. 그러니 느린 이유가 "AI가 생각을 오래 해서"는 아니었어요.

원인은 오래 열려 있던 탭

원인 조사도 AI 에이전트에게 맡겼어요. 회차별 실행 기록을 한 줄씩 뜯어보니, 느렸던 두 번은 시작부터 달랐어요.

  • 새 탭을 여는 대신, 이미 열려 있던 네이버 탭에 붙으려고 했어요
  • 그 탭은 오래 방치돼 반응이 없는 상태였어요. 붙는 단계에서 30초 넘게 기다리다 시간 초과가 났어요
  • 그 뒤로는 브라우저와 상관없는 간단한 계산도 한 번에 1분씩 걸렸어요. 전체 시간 중 도구를 기다린 비율이 87%, 91%였어요

빨랐던 세 번째 회차는 멀쩡한 탭에 붙었고, 동작 대부분이 3~9초 안에 끝났어요.

왜 굳이 기존 탭에 붙었을까요? 지시문에 "로그인된 브라우저 탭에서"라는 표현이 있었어요. 사람은 "로그인된 상태로"라고 읽지만, 에이전트는 "지금 열려 있는 그 탭을 써라"로 읽었어요. 게다가 일이 끝나도 탭을 닫지 않으니, 다음 회차가 또 그 낡은 탭을 찾아갔어요.

작은 원인도 세 가지 더 있었어요.

  • 글 페이지로 이동할 때마다 "화면 준비 완료"를 30초씩 꽉 채워 기다렸어요. 이동은 이미 끝났는데도요. 24분짜리 회차에서만 13번, 약 6분 30초였어요
  • 글마다 넣어 둔 몇 초짜리 고정 대기가 모여 3분이 넘었어요
  • 글 한 편을 6~7번의 호출로 쪼개 처리해서, 호출마다 모델이 다시 생각하는 시간이 붙었어요

바꾼 규칙 세 줄

조사 결과를 보고 9월 27일 낮에 지시문에 "속도 규칙"을 넣었어요.

  1. 이미 열린 탭에 붙지 않는다. 새 탭 하나를 열어 끝까지 쓰고, 끝나면 닫는다
  2. 고정 대기는 없앤다. 호출 하나가 30초를 넘으면 탭을 바꾼다
  3. 처음에 도우미 함수를 만들어 두고, 글 한 편을 호출 한 번에 처리한다

모델, 처리할 글 수, 하루 상한은 그대로 뒀어요.

결과: 하루 198분에서 58분으로

  • 9월 26일(바꾸기 전): 100분, 73분, 24분. 하루 합계 약 198분
  • 9월 27일(바꾼 뒤): 22분, 18분, 18분. 하루 합계 약 58분
  • 하루 토큰: 약 2,810만에서 약 1,120만으로, 60%쯤 줄었어요

두 날 모두 정해 둔 하루 처리량을 채우고 끝났어요. 일은 그대로인데 시간은 3분의 1 이하로 줄었어요.

바꾸기 전 가장 빨랐던 24분짜리 회차보다도 더 빨라졌다는 점이 눈에 띄어요. 탭 문제만이 아니라 헛된 대기와 잘게 쪼갠 호출을 같이 줄인 효과로 보고 있어요. 다만 아직 이틀치 비교라서, 몇 주 더 지켜볼 생각이에요.

배운 것: 느린 자동화는 기다린 시간부터 보세요

AI 자동화가 느리면 모델을 바꾸거나 일을 줄이는 쪽부터 떠올리기 쉬워요. 이번에는 둘 다 답이 아니었어요. 실행 시간의 대부분은 모델이 생각한 시간이 아니라 브라우저를 기다린 시간이었어요.

그래서 이제 느린 루틴을 보면 이 순서로 확인해요.

  1. 걸린 시간 중 도구를 기다린 비율이 얼마인지
  2. 시작할 때 어떤 탭, 어떤 세션에 붙었는지
  3. 고정 대기와 잘게 쪼갠 호출이 몇 번인지

지시문의 말 한마디가 행동을 바꾼다는 것도 다시 배웠어요. "로그인된 탭에서"처럼 사람에게는 당연한 말이 에이전트에게는 전혀 다른 지시가 돼요. 브라우저를 쓰는 자동화라면 "무엇을 하라"뿐 아니라 "어떤 탭을 열고, 언제 닫는지"까지 적어 두는 게 안전해요.

숫자 출처: 저희 에이전트 실행 기록(회차별 시작, 종료 시각과 토큰 사용량)에서 직접 뽑았어요. 9월 26일과 27일, 여섯 회차 기준이에요.