20분
테스트 & 디버깅 가이드
Day 5: 설비 조회 Agent 프로젝트
테스트 & 디버깅 가이드
AI Agent 기초 > Day 5: 설비 조회 Agent 프로젝트
학습 목표
10가지 테스트 시나리오를 체계적으로 실행한다 결과를 기록하고 문제점을 식별한다 프롬프트 반복 개선 방법을 익힌다
테스트 전략
테스트 매트릭스
| # | 질문 유형 | 기대 Tool | 기대 결과 |
|---|---|---|---|
| 1 | 단순 상태 | equipment_status x1 | 설비 상태 정보 |
| 2 | 설비 목록 | equipment_list x1 | 라인 설비 목록 |
| 3 | 재고 확인 | check_inventory x1 | 재고 수량 + 상태 |
| 4 | 알람 분석 | equipment_status + manual | 원인 + 조치 |
| 5 | 부품 연쇄 | equipment + manual + inventory | 원인 + 부품 + 재고 |
| 6 | 라인 점검 | list + status + manual + inventory | 종합 보고서 |
| 7 | 생산 + 설비 | production + equipment | 실적 + 문제설비 |
| 8 | 없는 설비 | equipment_status | 에러 안내 |
| 9 | SOP 검색 | search_manual | 절차 안내 |
| 10 | 재고 없음 | check_inventory | 긴급 발주 안내 |
테스트 결과 기록 양식
[테스트 #1]
질문: CNC-003 상태 알려줘
기대: CNC-003 상태 정보 (경고, 진동 1.2, 알람 W-1105)
실제: [Agent 응답 전문]
Tool 호출: get_equipment_status("CNC-003") x1
판정: PASS / FAIL
메모: 정확히 기대한 대로 응답함
흔한 문제와 해결
| 문제 | 원인 | 해결 |
|---|---|---|
| 엉뚱한 Tool 호출 | description 불분명 | description 상세화 |
| 정상 설비도 조회 | 프롬프트 규칙 미비 | "정상은 건너뛸 것" 추가 |
| 무한 반복 | 종료 조건 미비 | max_iterations 설정 |
| 한국어 깨짐 | 인코딩 문제 | ensure_ascii=False |
| 느린 응답 | Tool 과다 호출 | 캐싱 + 프롬프트 최적화 |
| 문맥 미처리 | 대화 이력 미유지 | conversation_history 추가 |
프롬프트 반복 개선 (A/B 테스트)
Round 1: 기본 프롬프트
- 문제: 정상 설비도 조회 (비효율)
- 개선: "정상 상태 설비는 추가 조회하지 마세요" 추가
Round 2: 규칙 추가 프롬프트
- 문제: 알람 코드만 보여주고 원인 설명 없음
- 개선: "알람 발생 시 매뉴얼 검색하여 원인/조치 포함" 추가
Round 3: 응답 형식 추가
- 문제: 장문의 텍스트로 읽기 어려움
- 개선: "표 형식으로 현황 정리" 지시 추가
Round 4: 최적화
- 결과: Tool 호출 8회 -> 4회 (50% 감소)
- 정확도: 70% -> 95%
핵심: 프롬프트 개선은 테스트 결과에 기반해야 한다. 감으로 바꾸지 말고, 데이터를 보고 바꾸자.
AI로 학습하기 — 꿀팁
🤖10대 테스트 시나리오 실행 체크리스트 생성AI 학습 팁
제조 Agent 프로젝트의 10가지 테스트 시나리오를 실행 가능한 체크리스트 형태로 구조화하세요.
제조 설비 트러블슈팅 Agent에 대한 10가지 테스트 시나리오 실행 체크리스트를 만들어줘. 정상 고장 진단, 데이터 없는 설비 조회, 동시 다중 알람, MES API 타임아웃, 잘못된 설비 ID 입력, 진단 결과 모순(센서 vs 로그), 반복 고장 패턴 인식, 긴급 안전 정지 판단, 다국어 오류 코드 처리, 비용 한도 초과 상황을 포함하고, 각 시나리오에 입력·예상 출력·합격 기준·결과 기록 칸을 포함해줘.
이 팁이 도움이 됐나요?