한 줄 정의

Manifest는 앱이 LLM에게 바로 묻지 않고, 중간 서버에 먼저 요청을 보내게 하는 도구야. 그 서버가 OpenAI, Anthropic, 로컬 모델, 사내 모델 중 어디로 보낼지 고르고, 실패하면 다른 모델로 넘겨.

모델 제공사가 2곳 이상이고, 실패 시 다른 모델로 넘김 규칙이 3개 이상 생기면 Manifest를 검토할 만해. API는 호출 약속이고, SDK는 코드에서 그 약속을 쓰기 쉽게 하는 도구야. Manifest는 그 둘보다 뒤쪽에서 어떤 모델로 보낼지와 비용 기록을 관리하는 developer tools에 가까워.

실제로 무엇을 하나

  • 여러 모델 제공사의 API 키, 이미 구독 중인 계정, 로컬 모델, 사내 호출 주소를 한곳에 등록해.
  • 앱은 /auto 주소로 요청을 보내고, Manifest는 질문 난이도나 요청 조건을 보고 모델을 골라. 배포 전에는 /auto 요청 로그, 예산 알림 기준, 키 교체 절차를 확인하면 돼.
  • 요청별 비용을 기록하고 limit notification을 걸어. 실패하면 다음 모델로 넘기는 규칙도 여기서 관리해.

왜 중요한가

AI 앱이 커질수록 “모든 요청을 제일 비싼 모델로 보낼지”가 비용 문제가 돼. Manifest는 쉬운 요청, 어려운 요청, 실패한 요청을 나누는 규칙을 애플리케이션 코드 밖으로 빼려는 도구야.

다만 모든 프롬프트와 키가 중간 서버를 지나가니 보안 책임도 커져. 감사 로그, 키 교체, 모델 제공사별 데이터 보관 정책을 같이 봐야 해.

언제 쓰고 언제 넘기나

  • 쓸 때: OpenAIAnthropic, 로컬 모델을 섞고 모델별 비용을 요청 단위로 보고 싶다면 맞는 문제를 푼다.
  • 쓸 때: 에이전트 작업 흐름에서 실패 시 다른 모델로 넘기고, 팀별 예산 한도 알림을 걸어야 한다면 라우팅 규칙과 예산 알림을 한곳에서 확인할 수 있어.
  • 넘길 때: 모델이 1~2개뿐이고 요청량이 작다면 라우팅 서버, 로그, 비밀키 관리가 더 큰 일이 돼.

주의해서 볼 점

README의 비용 절감 수치는 프로젝트 쪽 주장이야. 실제 절감률은 요청 구성, 실패 시 다른 모델로 넘기는 규칙, 모델 제공사 가격표, 실패 재시도 정책에 따라 달라져.

중앙 서버가 생기면 모든 프롬프트, 키, 응답 메타데이터가 지나간다. 직접 운영하더라도 감사 로그, 키 교체, 모델 제공사별 데이터 보관 조건을 같이 검토해야 해.