본문 바로가기
책상 노트 책상 노트
실무자가 실제로 굴려본 업무도구·업무 자동화 기록

AI 비용, 설정 다음은 습관이 새고 있었습니다

읽는 시간 약 10분

설정을 손봐서 턴당 28,000토큰을 줄였습니다. 기본 프롬프트가 절반이 됐습니다. 그런데 며칠 더 써보니 체감이 기대만큼은 아니었습니다. 새던 곳은 분명히 막았는데도 그랬습니다.

이유는 단순했습니다. 설정은 한 번 고치면 끝나지만 그 위에서 하루에 수십 번 반복되는 제 행동은 그대로였고, 같은 얘기를 처음부터 다시 설명하고 큰 파일을 통째로 읽히고 필요도 없는 폴더에서 작업을 시작하는 습관이 고스란히 남아 있었기 때문입니다. 설정으로 막을 수 있는 건 거기까지였습니다.

이 글은 설정 이야기가 아니라 그다음 이야기입니다. 설정 정리 과정은 앞선 글에 따로 적어뒀고, 여기서는 그 뒤에 제가 바꾼 행동 일곱 가지만 적습니다. 개발자가 아니라 회사 일 돌리는 사람 기준입니다.

남은 비용은 도구가 아니라 제 손끝에서 나오고 있었습니다

설정과 습관은 비용이 붙는 방식이 다릅니다. 설정은 고정비입니다. 매 턴 일정한 양이 붙고, 한 번 걷어내면 그 뒤로는 안 붙습니다. 습관은 변동비입니다. 제가 어떻게 시키느냐에 따라 같은 일이 열 배 비싸지기도 합니다.

그래서 설정을 다 정리하고 나면 남는 건 전부 변동비입니다. 여기부터는 설정 화면을 아무리 뒤져도 안 나옵니다. 제가 어제 뭘 어떻게 시켰는지를 되짚어야 나옵니다.

정리하면서 알게 된 게 하나 더 있습니다. 제가 비용이라고 믿고 열심히 관리하던 것들 중 상당수는 애초에 비용이 아니었고 정작 비용인 줄 몰랐던 쪽에서 실제로 돈이 나가고 있었으니, 습관을 바꾸기 전에 뭐가 진짜 과금되는지부터 구분해야 했습니다.

정작 과금되는 쪽은 따로 있었습니다
세는 대상을 바꾸고 나서야 숫자가 맞아떨어졌습니다.

세션을 지워서 아끼려던 습관을 버렸습니다

저는 세션이 쌓이면 비용이 오른다고 믿었습니다. 그래서 오래되거나 안 쓸 것 같은 대화를 주기적으로 골라 지웠습니다. 관리한다고 생각했습니다.

확인해보니 세션은 로컬 데이터베이스에 저장만 될 뿐 모델에게 전송되지 않았습니다. 391개가 있든 3,000개가 있든 턴당 토큰은 똑같습니다. 모델이 받는 건 지금 열려 있는 대화 하나뿐입니다.

즉 제가 지운 세션들은 한 푼도 아껴주지 않았습니다. 대신 나중에 “그때 그거 어떻게 처리했더라” 하고 되짚어볼 기록만 조용히 깎아먹고 있었는데, 실제로 이번에 지난 기록을 훑어보니 제가 진행 중이라고 알고 있던 작업이 6건이었던 반면 실제로는 14건이었습니다. 지워버린 것 중에 뭐가 있었는지는 이제 알 방법이 없습니다.

지금은 반대로 합니다. 세션은 안 지웁니다. 대신 매 턴 실제로 전송되는 쪽, 그러니까 메모리 파일과 스킬 목록과 작업 폴더에 놓인 지침 파일만 관리합니다.

진행 상황을 매번 처음부터 설명하던 습관을 없앴습니다

제일 비쌌던 습관입니다.

새 대화를 열 때마다 저는 이렇게 시작했습니다. “지난번에 어디 폴더에서 뭘 하다가 여기까지 했는데, 이어서 하려고 하는데” 하고 배경을 한참 늘어놓습니다. 도구는 그걸 다 읽습니다. 그리고 다음 날 또 같은 설명을 합니다.

바꾼 방법은 지도 파일 한 장입니다. 작업 폴더에 20~45줄짜리 파일을 하나 만들어서 지금 진행 중인 작업 목록과 각 작업의 실제 경로, 이 폴더에서 하면 안 되는 것 몇 줄을 적어뒀고, 대화를 열면 이게 자동으로 읽힙니다. 턴당 300토큰이 듭니다.

지출입니다. 앞서 문제가 됐던 95KB짜리 파일과 정확히 같은 종류이고 크기만 다릅니다. 그래도 넣었습니다. 아낀 28,000토큰의 1%로 매일 반복되던 재설명이 사라졌기 때문입니다. 다만 이 파일이 커지면 그게 다시 95KB가 되므로, 상세한 내용은 별도 문서로 빼고 본문에는 “상세는 어느 파일 참조” 한 줄만 남기는 방식으로 굳혔습니다.

같은 주제로 세션을 새로 열던 습관을 위임으로 바꿨습니다

작업 기록을 전수 조사할 일이 생겼을 때 제가 먼저 꺼낸 말은 이거였습니다. “가벼운 모델로 세션 하나 새로 만들어서 돌릴까?”

그건 지금 없애려는 중복 세션을 손수 하나 더 만드는 셈이었습니다. 새 세션은 처음부터 다시 설명해야 하고, 그 세션의 결과물이 원래 대화로 자동으로 돌아오지도 않습니다.

대신 하위 작업으로 떼서 넘겼습니다. 이러면 하위 작업 쪽에서 원문을 아무리 많이 읽어도 그 중간 데이터가 제 대화에는 쌓이지 않고 정리된 결과만 돌아오는데, 실제로 이 방식으로 세션 391개와 문서 125개를 전수 조사했고 361줄짜리 보고서가 한 번에 올라왔습니다.

새 세션을 여는 것과 하위 작업에 맡기는 것은 겉으로는 비슷해 보입니다. 완전히 다릅니다. 하나는 대화를 늘리는 일이고, 다른 하나는 지금 대화를 지키면서 무거운 일만 밖으로 내보내는 일입니다.

한 턴에 오가는 토큰은 크기가이렇게 달랐습니다
설정으로 걷어낸 양과 습관 하나가 되돌리는 양을 나란히 놓았습니다.

목록 뽑는 일까지 모델에게 시키던 습관을 고쳤습니다

이건 규모가 커질수록 차이가 벌어집니다.

파일 125개의 이름과 경로와 수정일을 뽑는 작업을 생각해보면 여기엔 판단이 하나도 없습니다. 폴더를 훑어서 나열하면 끝입니다. 그런데 저는 그걸 그냥 “이 폴더 정리해줘”라고 통째로 시켰고, 도구는 파일을 하나씩 열어 읽었습니다. 읽은 만큼 컨텍스트에 쌓이고, 쌓인 만큼 과금됩니다.

지금은 두 단계로 나눕니다. 목록을 뽑는 단계는 데이터베이스 질의나 폴더 순회로 처리합니다. 모델을 아예 거치지 않으므로 여기서 발생하는 토큰은 0입니다. 실제로 세션 391개에서 노이즈를 걸러 126개로 줄이고 문서 목록까지 합쳐 94KB짜리 파일로 저장하는 데까지가 전부 0토큰이었습니다.

그다음 분류하고 판단하는 단계만 모델에게 넘깁니다. 실무자 말로 옮기면 이렇습니다. 세는 일과 판단하는 일을 섞어서 시키지 않습니다.

여기에 딸린 습관이 하나 더 있습니다. 큰 파일을 통째로 읽히지 않는 것입니다. 제 폴더에는 1.1MB짜리 문서가 하나 있는데, 이건 열면 그 자체로 한 세션 분량입니다. 검색으로 위치를 먼저 찾고 필요한 범위만 읽힙니다.

폴더를 옮겨 다니던 습관을 인자 지정으로 바꿨습니다

도구 앱 자체를 손볼 일이 생기면 저는 대화의 작업 위치를 그 폴더로 옮겼습니다. 자연스러운 행동입니다. 그 폴더에서 일할 거니까요.

그런데 그 폴더에는 개발자용 지침 파일이 95KB와 11KB로 두 개 들어 있었고 작업 위치에 놓인 지침 파일은 규칙상 매 턴 자동으로 실려 나가므로, 대화를 옮기는 순간 턴당 26,600토큰이 다시 붙는다는 뜻이었습니다.

지금은 대화를 옮기지 않습니다. 명령을 실행할 때 작업 경로만 인자로 넘깁니다. 이러면 그 폴더에서 명령은 정상적으로 실행되는데 지침 파일은 프롬프트에 붙지 않습니다. 결과는 같고 비용만 빠집니다.

필요할 때만 켜고, 켠 다음에 새로 시작합니다

재무 자료를 조회하는 외부 연동이 하나 있습니다. 예전에는 계속 물려뒀습니다. 언제 쓸지 모르니까요. 그 연동의 도구 목록이 매 턴 같이 실려 나가고 있었습니다.

지금은 기본 꺼짐입니다. 정산 작업을 시작할 때 켜고, 끝나면 내립니다. 대신 여기서 순서를 한 번 틀려봤습니다. 진행 중인 대화에서 그냥 켜버리면 애써 쌓아둔 프롬프트 캐시가 깨지면서 오히려 비용이 튑니다. 켠 다음에 새로 시작하는 게 맞았습니다.

설정을 바꾼 직후에도 마찬가지입니다. 바꾼 설정이 완전히 적용되는 시점은 다음 대화부터이고, 지금 열려 있는 대화는 이미 로드해둔 프롬프트를 끝까지 그대로 들고 가기 때문에 이걸 모르면 “분명히 껐는데 왜 그대로냐”에서 한참 헤맵니다. 제가 그랬습니다.

안 쓰는 것을 지우던 습관을 비활성으로 바꿨습니다

스킬 목록을 118개에서 76개로 줄였습니다. 이름과 한 줄 설명이 매 턴 전송되는 구조라 개수가 곧 비용입니다.

그런데 파일은 안 지웠습니다. 설정에서 비활성으로만 돌렸습니다. 필요해지면 한 줄로 되살아납니다. 지우면 되돌릴 때 만드는 비용을 다시 치릅니다. 세션을 지웠다가 기록만 잃은 경험이 딱 그 교훈이었습니다.

메모리 파일은 반대였습니다. 여기는 진짜로 매 턴 전송되는 데다 용량 한도까지 걸려 있어서, 2,200자 한도에 2,183자까지 차 있는 바람에 새 내용을 넣으려다 저장이 통째로 실패했습니다. 화면에서 분명히 지웠다고 생각한 항목이 파일에는 그대로 남아 있던 일도 있었습니다. 지금은 더 이상 안 쓰는 항목만 골라 정리하고, 남은 여유를 확인한 다음 새 내용을 넣습니다.

설정을 다 고친 뒤에 바꾼 것은제 손끝이었습니다
설정은 한 번에 끝나지만 습관은 하루에도 수십 번 반복됐습니다.

자동화를 붙이지 않는 것도 습관입니다

마지막은 방향이 조금 다릅니다.

설정 화면을 자동으로 열어보려다 좌표를 잘못 넘겨서 클릭이 엉뚱한 데로 간 적이 있습니다. 몇 번 시도하다 그냥 손으로 눌렀습니다. 그게 훨씬 빨랐습니다. 한 번 누르고 끝날 일에 자동화를 붙이면 시간도 잃고 토큰도 잃습니다.

반대 경우도 있었습니다. 파일 하나를 저장하는데 승인 창이 화면에 뜨지 않은 채 시간만 흐르다 두 번 연속 거부됐고, 결국 다른 이름으로 저장한 다음 탐색기에서 제가 직접 이름을 바꿨습니다. 30초짜리 일이었습니다.

반복되는 일은 도구에게 넘기고, 한 번으로 끝나는 일은 그냥 손으로 합니다. 이 구분이 안 서면 자동화가 오히려 비용이 됩니다.

정리

설정은 한 번에 끝나고 습관은 매일 반복됩니다. 그래서 설정으로 아낀 절반은 눈에 확 보이는데도, 남은 절반이 계속 새는 느낌이 들었던 겁니다.

바꾼 것을 세 줄로 줄이면 이렇습니다.

첫째, 매 턴 실제로 전송되는 것만 관리합니다. 세션 개수를 세는 대신 지침 파일, 스킬 목록, 메모리, 상시 연결한 외부 도구를 봅니다.

둘째, 판단이 필요 없는 일은 모델에게 시키지 않습니다. 목록을 뽑고 세는 일은 코드로 돌리면 0토큰이고, 분류와 판단만 넘기면 됩니다.

셋째, 같은 설명을 두 번 하지 않도록 지도 파일 한 장을 유지합니다. 이건 비용을 쓰는 쪽인데도 넣었습니다. 중복 대화가 줄어드는 쪽에서 더 크게 회수되기 때문입니다.

책상 노트 운영자
함께 보면 좋은 글
error: Content is protected !!