개발 중 AI API 호출 비용을 획기적으로 줄이는 방법
We stopped paying for AI calls during development. One line of code.
핵심 요약
AI API 호출을 로컬 파일에 캐싱하여 개발 및 테스트 비용을 절감하고 결정론적 응답을 보장하는 도구 소개.
- 비용 절감 — 개발 및 테스트 단계에서 반복되는 API 호출을 로컬 파일로 대체해 비용을 아낌.
- 결정론적 테스트 — 매번 동일한 응답을 받아 테스트의 일관성을 유지하고 회귀 오류를 쉽게 포착함.
- 구현 방식 — 데코레이터 패턴을 활용해 기존 코드에 간단히 적용할 수 있는 구조를 제공함.
- 기능 확장 — 향후 CI 환경에서의 라이브 호출 차단 및 메타데이터 관리 기능을 추가할 예정임.
친구랑 AI API를 많이 사용하는 앱을 만들고 있었음. 앱을 실행할 때마다 실제 API를 호출하니까 비용이 너무 빨리 쌓이고, 반복 작업도 느리고 비싸졌음. 그래서 이걸 해결하려고 작은 도구를 하나 만들었음. 첫 실행 때 에이전트의 LLM 호출 내용을 파일에 기록하고, 테스트나 개발 시에는 그 파일에서 다시 불러오는 방식임. 개발할 때 매번 똑같은 결정론적 응답을 받을 수 있고, 로직이 바뀌어서 뭔가 깨지면 회귀 오류를 바로 잡아낼 수 있음.
이런 식으로 생겼음:
@fixture("fixtures/analyze_entry")
def analyze_entry(entry: str) -> str:
response = Anthropic().messages.create(
model="claude-opus-4-5",
max_tokens=1024,
messages=[{"role": "user", "content": f"Analyze the mood and themes in this diary entry: {entry}"}]
)
return response.content[0].text
그냥 넣기만 하면 됨. 현재 Anthropic 쪽은 관심이 있으면 확장할 의향이 있음. 프로젝트에 써보고 싶으면 알려주셈.

