토큰 사용량에 관한 조언은 대부분 문제의 반대쪽을 최적화합니다. 비용이 많이 드는 쪽은 여러분이 입력하는 프롬프트가 아닙니다. 토큰을 쓰는 것은 에이전트가 여러분을 대신해 읽어 들이는 모든 것입니다. 파일 내용, 명령 출력, 테스트 로그, 그리고 계속 늘어나는 대화 기록입니다.

아래 방법들은 기교의 정교함이 아니라 실제 절감 효과가 큰 순서로 나열했습니다.

파일을 덜 읽기

함수 하나를 고치려고 2,000줄짜리 파일을 여는 에이전트는 예산의 대부분을 다시는 쓰지 않을 맥락에 써 버린 것입니다. 먼저 검색하고, 필요한 범위만 여십시오.

이 절감은 누적됩니다. 에이전트가 읽은 파일은 세션이 끝날 때까지 대화 기록에 남기 때문입니다. 한 번 읽은 파일의 비용은 한 번으로 끝나지 않습니다. 세 번째 턴에서 읽은 파일은 스무 번째 턴에서도 여전히 실려 다닙니다.

명령 출력은 모델에 닿기 전에 걸러내기

빌드 로그, 테스트 러너, 패키지 매니저의 출력은 터미널을 지켜보는 사람을 위해 쓰인 것이지, 토큰 단위로 비용을 내는 모델을 위한 것이 아닙니다. 실패한 테스트 묶음은 수천 토큰짜리 스택 트레이스를 쉽게 쏟아내지만, 정작 필요한 것은 마흔 토큰 정도일 때가 많습니다.

시끄러운 명령은 신호만 뽑아내는 처리를 거치게 하십시오.

pytest -q 2>&1 | tail -30
npm run build 2>&1 | grep -E "error|warning" | head -20

화려하지 않은 방법이지만, 대개 얻을 수 있는 단일 절감 중 가장 큽니다.

작업 범위를 좁게 유지하기

긴 대화는 짧은 대화보다 턴당 비용이 큽니다. 매번 전체 기록이 다시 전송되기 때문입니다. 같은 범위를 다룬다면 장황한 세션 하나보다 집중된 세션 두 개가 더 저렴하고, 결과도 대체로 더 낫습니다. 모델이 무관한 스무 턴의 이력을 저울질하지 않아도 되기 때문입니다.

작업의 방향이 크게 바뀔 때 새 세션을 시작하는 것은 품질에 관한 판단인 동시에 비용에 관한 판단입니다.

에이전트가 읽을 수 있는 것을 붙여 넣지 않기

파일을 프롬프트에 붙여 넣으면 중복 계산됩니다. 여러분의 메시지에서 한 번, 그리고 에이전트가 수정하려고 그 파일을 열 때 또 한 번입니다. 경로만 알려 주십시오.

별 도움이 되지 않는 것

자기 프롬프트를 줄이는 일은 대체로 겉치레입니다. 공들여 압축한 지시문이 아끼는 것은 오십 토큰 남짓이지만, 불필요한 파일 읽기 한 번은 이천 토큰을 씁니다. 지시는 가장 명확하게 쓰되, 주의는 여러분이 무엇을 쓰는지가 아니라 에이전트가 무엇을 읽는지에 두십시오.

시스템 프롬프트나 도구 정의를 압축하는 것도 대다수 사용자에게는 마찬가지로 효과가 적으며, 시끄러운 테스트 실행 앞에서는 없는 것이나 다름없는 절감을 위해 안정성을 내주는 일이 됩니다.