본문 바로가기
C.W.K.
Stream
Lesson 09 of 12 · published

비용 관리

~10 min · cost, budget, api

Level 0견습생
0 XP0/101 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

AI CI 청구는 달라

일반적인 CI 비용은 러너 사용 시간에 달려 있어. 하지만 AI CI는 여기에 추가로 돈을 더 써:

  • API 토큰 — 평가를 위해 호출할 때마다 Anthropic이나 OpenAI 같은 곳에 요청이 닿아.
  • GPU 사용 시간 — CPU랑은 자릿수가 다르게 비싸.
  • 클라우드 송신 비용 — 모델이나 데이터셋을 주고받을 때 발생해.
  • 모델 레지스트리 저장 — 체크포인트가 계속 쌓이거든.

원칙 체크리스트

  1. (프롬프트 SHA, 모델 버전, 채점기 SHA)로 평가 결과를 캐싱해. 이게 안 바뀐 PR에서는 모델을 다시 호출하지 않아.
  2. 스모크와 전체 실행 구분 — PR에서는 작은 부분만 돌리고, main이나 nightly에서는 전체를 돌려.
  3. 문서만 변경됐을 땐 건너뛰기 — AI 워크플로에 paths-ignore를 설정해.
  4. 동시성 제어 — PR에 다시 푸시하면 진행 중인 작업을 취소해.
  5. 예산 알림 — API 제공자에 월 지출 한도를 걸어두고, 예산 차단기가 작동하면 CI를 즉시 실패시켜.
  6. 무거운 작업은 셀프 호스티드 러너로 — 홈랩 GPU를 쓰면 분당 비용이 무료야.

가시성

실행할 때 쓴 API 토큰 사용량을 GitHub 단계 요약에 추가해. 그러면 한 분기 동안 어떤 프롬프트나 테스트 패턴이 청구액을 지배하는지 확인할 수 있어.

Code

프롬프트 + 모델 + 채점기로 만든 평가 캐시 키·yaml
      - name: Compute eval cache key
        id: keys
        run: |
          prompt_sha=$(git ls-files prompts/ | xargs sha256sum | sha256sum | cut -d' ' -f1)
          scorer_sha=$(git ls-files evals/scorers/ | xargs sha256sum | sha256sum | cut -d' ' -f1)
          echo "prompt=$prompt_sha" >> $GITHUB_OUTPUT
          echo "scorer=$scorer_sha" >> $GITHUB_OUTPUT
      - uses: actions/cache@v4
        with:
          path: .eval-cache/
          key: eval-${{ vars.MODEL_VERSION }}-${{ steps.keys.outputs.prompt }}-${{ steps.keys.outputs.scorer }}
          # Same prompt + model + scorer = re-use prior eval results

External links

Exercise

AI 제공자의 지난달 API 청구 내역을 가져와. 비용 요인 상위 3가지(어떤 프롬프트? 어떤 테스트? 어떤 일정?)를 찾아내. 가장 큰 비용에 대해 최소 하나의 원칙(캐싱, 스모크 부분 실행, 경로-ignore)을 적용해봐.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.