20

Mock 모드 - API가 죽어도 데모는 계속된다

Day 2: 데모 준비 - 3분 안에 9주를 증명하라

학습 목표

Mock 모드의 개념과 필요성을 이해한다 외부 API 장애 시에도 데모를 계속할 수 있는 전략을 학습한다

API가 죽어도 데모는 계속되어야 한다

OpenAI API가 느리거나 응답하지 않는 상황. 데모 도중 이런 일이 발생하면?

# 환경변수 하나로 Mock 모드 ON/OFF
# .env
DEMO_MOCK_MODE=true  # true면 Mock, false면 실제 API

# app/config.py
import os

MOCK_MODE = os.getenv("DEMO_MOCK_MODE", "false").lower() == "true"

Mock 응답 설계

# app/mock_responses.py

MOCK_DIAGNOSIS = {
    "E-CNC-001": {
        "error_code": "E-CNC-001",
        "diagnosis": "스핀들 베어링 과열로 인한 경보 발생",
        "severity": "high",
        "root_cause": "스핀들 베어링의 윤활유 부족 또는 마모. "
                      "정격 부하 초과 운전으로 인한 발열 가능성.",
        "actions": [
            {"step": 1, "action": "즉시 운전 정지 및 LOTO 설정",
             "caution": "안전 잠금장치 반드시 설정"},
            {"step": 2, "action": "적외선 온도계로 베어링 온도 측정",
             "caution": "85도 초과 시 냉각 후 점검"},
            {"step": 3, "action": "윤활유 상태 확인 (변색, 이물질)",
             "caution": None},
            {"step": 4, "action": "베어링 교체 이력 확인 (수명 8,000시간)",
             "caution": None},
            {"step": 5, "action": "필요 시 베어링 교체 (규격 7014C)",
             "caution": "전용 풀러 사용, 그리스 SKF LGMT2 30g 도포"},
        ],
        "sources": [
            "KOSHA H-72-2024 제3장 2절",
            "CNC 매뉴얼 - 스핀들 유지보수 섹션",
            "내부 트러블슈팅 가이드 TS-001",
        ],
        "confidence": 0.87,
        "response_time_ms": 2340,
    }
}

Mock 모드 적용 패턴

# app/services/diagnosis.py

from app.config import MOCK_MODE
from app.mock_responses import MOCK_DIAGNOSIS

async def diagnose(error_code: str):
    if MOCK_MODE:
        # Mock 응답 반환 (API 호출 없음)
        mock = MOCK_DIAGNOSIS.get(error_code)
        if mock:
            return mock
        return {"error": "Mock 데이터에 해당 에러코드 없음"}

    # 실제 API 호출
    result = await agent.invoke({"error_code": error_code})
    return result

언제 Mock 모드를 쓰는가

상황Mock 사용이유
라이브 데모백업으로 준비API 장애 대비
리허설적극 사용API 비용 절감
녹화사용 권장일관된 응답 보장
개발 중상황에 따라빠른 반복

Mock 모드는 "사기"가 아니다. **"시스템이 동작한다는 것을 신뢰성 있게 보여주는 전략"**이다.


핵심 정리

  1. 환경변수 하나로 Mock ON/OFF 전환
  2. 시나리오별 실제와 동일한 Mock 응답 준비
  3. Mock은 사기가 아닌 안정적 시연 전략
  4. 리허설과 녹화에서 적극 활용
AI로 학습하기 — 꿀팁
🧪Mock 모드 전략을 제조 현장 데이터로AI 학습 팁

데모용 Mock 데이터는 '현실적 수치 범위'가 핵심입니다. OEE 100%나 불량률 0% 같은 비현실적 수치는 청중의 신뢰를 오히려 낮춥니다. AI로 공정 유형별 현실적인 Mock 데이터 범위를 설계하세요.

제조 AI 데모용 Mock 데이터 전략을 설계해줘. 내 데모 시나리오: [결함 탐지/OEE 모니터링/수요예측 중 선택]. 출력: 1) 공정 유형별 현실적 KPI 수치 범위(자동차 조립 라인 OEE 82~91%, 불량률 0.3~1.2% 등 업계 벤치마크 기반), 2) 데모 임팩트를 극대화하는 Mock 시나리오 설계(이상 탐지 → 정상 → 이상 순서로 청중 긴장감 유도), 3) Mock 데이터가 너무 깔끔해서 'AI가 짜 맞춘 것처럼' 보이지 않도록 자연스러운 노이즈 추가 방법, 4) 환경변수 DEMO_MODE 토글 설계 패턴.
이 팁이 도움이 됐나요?