AI 외부 Provider 호출 보호와 Fallback 설계

2026. 5. 29. 21:32·IL/TIL

1. 핵심 메시지

  • AI 개인화는 살리되, 외부 AI에 미션 생성 흐름이 종속되지 않게 한다.
  • 외부 AI 호출은 비용과 장애 리스크가 있다.
  • AI는 후보를 만들고, 최종 확정은 서비스 정책이 한다.
  • 실패 시 seed template fallback으로 미션 생성은 유지한다.

2. 현재 상태와 고도화 방향

  • 베타 배포: seed template 기반 미션 + AI 말투 개인화
  • 현재 고도화: AI가 title/description/category/difficulty까지 제안
  • seed template은 제거하지 않고 fallback 안전망으로 유지

 

3. 주요 흐름

  1. fallback 미션 먼저 생성
  2. requestId로 기존 결과 확인
  3. rate limit 통과 시 외부 AI 호출
  4. AI 후보 검증
  5. 성공 시 mission 반영, 실패 시 fallback 유지

4. 의사결정 1: rate limit 위치

  • Gateway/Nginx: HTTP 요청 기준이라 내부 gRPC/batch 보호가 어렵다.
  • mission 하루 제한: 비즈니스 제한이지 AI 비용 보호 정책은 아니다.
  • 결정: provider 호출 직전: ai 모듈 경계에서 제한한다.

5. 의사결정 2. Redis + fail-closed

  • in-memory는 서버가 늘어나면 전체 호출량 제한이 깨진다.
  • Redis는 여러 ai 인스턴스가 같은 카운터를 공유한다.
  • Redis 장애 또는 limit 초과 시 provider 호출을 막고 fallback으로 내려간다

6. 의사결정 2: Redis + fail-closed

  • AI 결과는 그대로 확정하지 않는다.
  • 길이, 금지 표현, 캐릭터 말투 형식, category/difficulty 정책을 검증한다.
  • 실패 시 사용자 에러가 아니라 fallback 전환으로 처리한다.

7. 결과와 회고

  • 외부 AI 호출량을 애플리케이션 레벨에서 제어했다.
  • AI/Redis 장애가 있어도 미션 생성 흐름은 유지된다.
  • fallback 여부와 error type으로 AI 품질 저하를 관측할 수 있다.

회고

AI 기능은 잘 생성되는지 뿐만 아니라 비용, 재시도, 장애, 잘못된 출력까지 함께 설계해야 한다.

저작자표시 비영리 (새창열림)

'IL > TIL' 카테고리의 다른 글

알림 및 장애 대응 Runbook  (1) 2026.06.02
RAG 개인화 리뷰... 튜터님의...?  (0) 2026.06.01
최종프로젝트 인프라 모니터링 설계  (0) 2026.05.28
사용자/제품 로그 설계  (0) 2026.05.27
CloudFront 기반 이미지 에셋 관리 방식 채택  (0) 2026.05.26
'IL/TIL' 카테고리의 다른 글
  • 알림 및 장애 대응 Runbook
  • RAG 개인화 리뷰... 튜터님의...?
  • 최종프로젝트 인프라 모니터링 설계
  • 사용자/제품 로그 설계
견지
견지
개발로 개발하는지 새발로 개발하는지 내가 개인 건지 새인 건지 사람인 건지
  • 견지
    개발새발
    견지
  • 전체
    오늘
    어제
    • 분류 전체보기 (33)
      • ... (0)
      • IL (33)
        • TIL (29)
        • WIL (4)
        • MIL (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • Github
  • 공지사항

  • 인기 글

  • 태그

    java
    JavaScript
    oracle
    JSP
    CSS
    HTML
    DB
    git
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
견지
AI 외부 Provider 호출 보호와 Fallback 설계
상단으로

티스토리툴바