일단 한 대 쳐 보고

AI 작업을 여러 개 동시에 돌렸더니 사용량 한도가 1시간 20분 만에 찬 뒤 정한 규칙

AI 작업을 한꺼번에 8~9개 돌렸더니 5시간 단위 사용량 한도가 약 1시간 20분 만에 찼고, 돌고 있던 작업 3건이 중간에 끊겼습니다. 이후 세 가지를 정했습니다. 동시에 돌리는 개수에 상한(6개)을 두고, 끊겨도 이어받을 수 있게 진행 상황을 파일에 적으며, 사용량 수치가 지금 값인지 먼저 확인합니다. 이 글은 그 기록과, 상한을 거는 방법을 직접 실행해 본 결과입니다.

확인한 환경과 범위

작업 기록은 구독형 AI 코딩 도구를 매일 쓰며 남긴 것입니다. 그 도구에는 5시간 단위 한도와 주간 한도가 있었습니다. 다른 AI 서비스의 한도 방식이나 요금은 이 글에서 다루지 않습니다. 쓰는 서비스의 한도 규칙은 해당 서비스의 공식 안내에서 확인해야 합니다. 아래 명령은 Windows 11의 Git Bash에서 실행했습니다.

무슨 일이 있었나

야간에 밀린 일을 한 번에 처리하려고 보조 AI 작업(메인 AI가 하나씩 맡기는 별도 작업)을 8~9개 동시에 시작했습니다. 기록은 다음과 같습니다.

마지막 항목이 중요합니다. 주간으로 보면 쓴 양은 목표보다 적었습니다. 문제는 총량이 아니라 짧은 시간에 몰렸다는 것이었습니다. 5시간 한도는 몰아 쓰면 먼저 찹니다.

정한 규칙

1. 동시 개수에 상한을 둔다

동시 6개를 상한으로 했습니다. 6이라는 숫자는 이 환경에서 쓴 값일 뿐이고, 왜 6인지 한도 계산으로 증명한 것은 아닙니다. 8~9개에서 문제가 났으니 그보다 낮게 잡고, 사용량 변화를 보면서 조정하기로 한 값입니다. 처음부터 한도에 닿는 수를 알 수 없으므로, 늘릴 때는 한 번에 올리지 말고 한 구간씩 올리며 5시간 사용량이 얼마나 오르는지 기록합니다.

명령줄에서 같은 효과를 내는 방법이 xargs -P입니다. 작업 9개를 한 번에 최대 6개씩만 돌리는 예시입니다. AI를 부르는 대신 2초 sleep으로 대신했습니다.

#!/bin/bash
run() { echo "$(date +%T.%N | cut -c1-12) 시작 작업 $1"; sleep 2; echo "$(date +%T.%N | cut -c1-12) 끝   작업 $1"; }
export -f run
seq 1 9 | xargs -P 6 -I{} bash -c 'run {}'
00:14:48.428 시작 작업 1
00:14:48.440 시작 작업 2
00:14:48.469 시작 작업 3
00:14:48.501 시작 작업 4
00:14:48.520 시작 작업 5
00:14:48.637 시작 작업 6
00:14:50.498 끝   작업 1
00:14:50.638 끝   작업 2
00:14:50.640 끝   작업 3
00:14:50.670 시작 작업 7
00:14:50.687 끝   작업 4
00:14:50.823 끝   작업 5
00:14:50.838 끝   작업 6
00:14:50.822 시작 작업 8
00:14:50.839 시작 작업 9
00:14:52.841 끝   작업 7
00:14:52.920 끝   작업 8
00:14:52.942 끝   작업 9

작업 7이 시작되는 시각이 작업 1이 끝난 직후인 것을 볼 수 있습니다. 6개가 차 있는 동안 나머지는 기다립니다(출력 순서가 시각과 약간 어긋난 줄은 여러 작업이 동시에 화면에 쓰기 때문입니다). 이 스크립트는 동시 개수 제한이 어떻게 동작하는지 보여 주는 것이고, 사용량이 실제로 얼마나 줄어드는지는 각자 쓰는 도구의 사용량 화면으로 확인해야 합니다. 채팅창이나 앱을 사람이 여러 개 띄워 쓰는 경우에는 이런 명령 대신, 같은 시각에 열어 두는 창의 수를 정해 두는 식으로 같은 규칙을 적용하면 됩니다.

2. 끊겨도 이어받게 진행 상황을 적는다

끊긴 작업 3건은 자정 이후에 이어서 마칠 수 있었습니다. 작업 목록 파일에 항목별 상태(대기, 진행, 완료)와 어디까지 했는지를 남기고, 항목 하나가 끝날 때마다 저장해 두었기 때문입니다. 그래서 정한 규칙은 이렇습니다.

3. 사용량 수치가 최신인지 먼저 본다

사용량을 보고 결정하는 장치는 그 수치가 낡았을 때 틀린 결정을 합니다. 이번에는 기록 파일의 시각이 오래된 채로 20%가 표시되고 있었습니다. 수치를 쓰기 전에 읽은 시각을 같이 확인하고, 시각이 오래됐으면 그 수치는 믿지 않는 쪽으로 정했습니다. 앱이 보여 주는 사용량 화면을 직접 보는 것이 가장 확실합니다. 사용량을 자동으로 읽어 두는 장치를 따로 두지 않았다면 이 항목은 건너뛰어도 됩니다.

반대쪽 실수도 있었습니다

같은 시기 기록에는 반대 문제도 있었습니다. 한도를 아끼려고 한 작업만 이어서 돌렸더니 약 10시간 동안 주간 사용량이 2%p밖에 늘지 않았고, 주간 목표선 아래에 머물렀습니다. 쓰지 않고 한도가 새로 시작되면 그 몫이 사라지기 때문에 이것도 손실이었습니다. 그래서 규칙을 개수 상한 하나로 두지 않고, 목표선 아래에서는 동시 개수를 늘려도 되지만 상한은 넘지 않게 했습니다.

상황 동시 개수
주간 사용량이 목표선과 비슷하거나 위 1~2개
주간 사용량이 목표선보다 5%p 넘게 아래 상한 6개까지
5시간 사용량 경고나 한도 오류 새 작업 시작 안 함, 저장 후 종료

"5%p 넘게 아래" 기준은 이 기록에서 쓴 값입니다. 자기 사용량 단위에 맞게 바꿔 쓰시면 됩니다.

정리