Flowise와 LLM 활용한 자동화 에러 분석 시스템
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

Flowise와 LLM을 활용한 에러 분석 자동화 요약

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

  • 소프트웨어 개발자/엔지니어 (특히 백엔드 개발자, 프론트엔드 개발자, 프로젝트 매니저)
  • 난이도: 중간~고급 (LLM 활용, 워크플로우 구성, API 문서화 기술 필요)

핵심 요약

  • LLM을 활용한 자동화 에러 분석 시스템 구축: Flowise + ChatOpenAI + Structured Output Parser 조합으로 에러 원인 추론 및 해결 가이드 자동 생성 가능
  • Swagger 기반 API 문서화 강화: org.springdoc:springdoc-openapi-starter-webmvc-uispringdoc-openapi-starter-webmvc-api를 통해 LLM 메타데이터 제공으로 정확도 향상
  • 구조화된 출력 포맷 정의: action, reason, guide, inference 4가지 키-값 쌍을 포함하는 JSON 형식의 Structured Output Parser 사용

섹션별 세부 요약

1. 문제 상황

  • 클라이언트에 제공되는 에러 메시지가 불충분하거나 보안적 이슈로 추상화되어 원인 파악이 어려움
  • 시간 낭비팀 생산성 저하 발생

2. 해결 방안

  • LLM 활용: 요청 정보, API 스펙, 에러 스택 트레이스를 LLM에 제공하여 에러 원인 분석 및 해결 제안 자동화
  • Flowise 워크플로 구성: ChatOpenAI, API Loader, Structured Output Parser, Chat Prompt Template 활용

3. 구현 요소

  • LLM 모델: toss-standard (토스 자체 생성 모델) 활용
  • API 문서화 도구: SpringDoc 기반 Swagger UI 및 OpenAPI JSON/YAML 문서 제공
  • Structured Output Parser: LLM 응답을 JSON 형식으로 강제화 (4개 키-값 쌍 정의)

4. 프롬프트 설계 원칙

  • 역할 분리: 고급 BE 개발자, 주니어 FE, PM 기획자에 맞춘 간결한 설명 제공
  • 메타데이터 활용: API 스펙을 도메인 언어로 통합하여 상황 설명
  • 예시 제공: 추론 이유 명시로 정확도 향상 도모

5. 구현 예시

  • 1번 예시: ImageCardNotFound 에러 시 존재하지 않는 이미지 카드 ID 전달 요구
  • 2번 예시: IndexOutOfBoundsExceptionshareCode 파라미터 누락 시 지적
  • 3번 예시: Decrypt 에러 시 올바른 값 전달 요구

6. 코드 구현

  • AnalyzeErrorRequest/AnalyzeErrorResult 클래스 정의
  • LLMErrorAnalyzer 컴포넌트:

```kotlin

@Component

class LlmErrorAnalyzer(

@Qualifier("llmWebClient") private val llmWebClient: WebClient,

private val llmProperties: LlmProperties

) : ErrorAnalyzer

```

  • StackTrace 필터링 및 Method Signature 추출 로직 포함

7. 알림 정책

  • 알림 조건: 알림 요청 헤더 존재 시 발송
  • 중복 방지: 동일 에러는 10분 간격으로 발송
  • 로그 링크 첨부: 모호한 에러 시 로그 링크 포함

결론

  • LLM + Flowise 자동화 시스템으로 에러 분석 시간 최대 50% 절감 가능
  • Swagger API 문서화 강화구조화된 출력 포맷 정의가 핵심
  • toss-standard 모델 활용 시 정확도 90% 이상 달성 가능 (내부 테스트 기준)