15분
"왜 갑자기 안 되죠?"
Day 4: 에러 처리 & 쿼리 검증
"왜 갑자기 안 되죠?"
Text2Cypher & NL2Query > Day 4: 에러 처리 & 쿼리 검증
학습 목표
Text2Cypher 프로덕션 에러 유형을 이해한다 에러 처리의 중요성을 파악한다
프로덕션 배포 3일차
오전 9시, 슬랙 알림이 울린다.
📢 #text2cypher-errors "삼성전자의 경쟁사" 쿼리 실패 (10회 연속) Error: SyntaxError: Invalid input 'MACH'
뭐지? 어제까지 잘 됐는데?
원인 분석
에디터 로딩 중...
MATCH가 아니라 MACH?
LLM이 오타를 냈다. temperature=0이어도 100% 완벽하진 않다.
더 큰 문제들
| 시간 | 에러 | 원인 |
|---|---|---|
| 09:00 | MACH 오타 | LLM 실수 |
| 09:15 | Label 'Compny' not found | 레이블 오타 |
| 09:30 | Property 'naem' not found | 속성 오타 |
| 10:00 | Query timed out | 무한 경로 탐색 |
| 10:30 | DELETE 시도 감지 | 악의적 질문 |
LLM은 완벽하지 않다. 에러 처리 없이 프로덕션은 불가능하다.
오늘 배울 것
| 문제 | 해결책 |
|---|---|
| 문법 오류 | 실행 전 검증 |
| 스키마 불일치 | 스키마 기반 검증 |
| 무한 루프 | 타임아웃 설정 |
| 위험한 쿼리 | 키워드 필터링 |
| 재시도 필요 | 에러 피드백 재생성 |
에러를 예방하고, 발생해도 자동 복구하는 시스템을 만든다.