#AI

LLM에게 수백 MB 로그를 통째로 주지 마세요 — 근거를 "검증"할 수 있는 AI 이슈 분석 에이전트 개발기

LLM에게 수백 MB 로그를 통째로 주지 마세요 — 근거를 "검증"할 수 있는 AI 이슈 분석 에이전트 개발기
01

Summary

수백 MB 로그를 LLM에 그냥 넣지 마세요! '환각 제로' AI 분석 에이전트 개발기

건초더미에서 바늘을 찾는 비효율을 해결하고, 분석 시간을 3시간에서 15분으로 줄인 삼성전자의 엔지니어링 인텔리전스 혁신

본 아티클은 모바일 B2B 솔루션 개발 과정에서 발생한 대규모 로그 분석의 비효율을 해결하기 위해 개발된 데스크톱 에이전트(EIA)의 여정을 다룹니다. 무작정 LLM에 의존하는 대신 결정적 전처리 파이프라인과 엄격한 프롬프트 계약, 그리고 클린 아키텍처를 도입하여 비용과 환각 문제를 완벽히 통제한 기술적 설계 노하우를 공유합니다.

  • 01LLM 의존도를 낮추고 규칙 기반 코드로 핵심 결함 신호를 먼저 추출하는 결정적 전처리 파이프라인 구축
  • 02환각(Hallucination)을 원천 차단하기 위해 세 겹의 장치(인용 제약 프롬프트, 고정 출력 구조, 원문 대조 UI) 도입
  • 03Electron 기반 상주형 에이전트의 안정성을 극대화하는 신규 감지 로직 및 장애 대응 회복탄력성 설계
  • 04의존성 방향을 검증하는 'dependency-cruiser' 룰을 빌드에 적용하여 클린 아키텍처 구조를 강제로 사수

RECOMMENDATION

대형 시스템 로그 분석에 LLM을 접목하고자 하는 엔지니어나, LLM의 비용 및 정확도 문제로 실무 도입을 망설이는 데브옵스/플랫폼 팀에게 필독을 권장합니다. 단순 프롬프트 엔지니어링을 넘어 시스템 아키텍처적 관점에서 생성형 AI 기술을 안전하게 내재화하는 훌륭한 롤모델이 될 것입니다.

The Problem

개발자가 이슈 해결 전 수백 MB의 대용량 로그 파일을 직접 분석하며 많은 시간을 낭비하는 문제가 있었습니다. 또한, 이를 해결하기 위해 LLM에 로그 전체를 입력하는 시도는 높은 비용과 긴 컨텍스트에 따른 정확도 저하 및 환각(Hallucination) 현상으로 실패했습니다.

The Solution

규칙 기반 알고리즘을 통한 결정적 전처리 파이프라인(스트리밍 스캔, 시그니처 정규화 등)을 도입하여 LLM에는 정제된 신호만 전달했습니다. 또한 프롬프트 내 엄격한 인용 규율 설정, 출력 구조 고정, 소스 원문 대조 UI를 구축하고, 클린 아키텍처 및 의존성 검증 규칙을 적용하여 안정적인 에이전트를 구현했습니다.

The Result

결함당 평균 3시간 소요되던 로그 분석 시간을 약 15분 수준으로 단축했습니다. 또한, 신규 감지 오류와 알림 폭주 현상을 제어하고 원본 데이터를 바탕으로 협업하는 데이터 기반 분석 문화를 정착시켰습니다.

Trade-off

파일당 스캔 용량(48MB), 신호 개수(40개), 발췌 줄 수(24줄)에 대한 폭주 방지 상한선이 존재하여 극단적으로 거대한 로그의 일부 유실 가능성이 있으며, 결정적 전처리를 위한 규칙 패턴을 지속적으로 수동 관리해야 하는 한계가 존재할 것으로 추정됩니다.

03

Key Concepts

Concept · 01

결정적 전처리 파이프라인 (Deterministic Preprocessing Pipeline)

LLM에 비정형 데이터를 가공 없이 전달하는 대신, 정규식 등 규칙 기반 코드를 사용하여 크래시 스택, ANR 등의 정형화된 결함 신호만을 사전에 추출하는 방식입니다.

  • 압축 로그를 실시간으로 메모리에서 훑어내어 디스크 낭비를 방지하는 스트리밍 스캔 구현
  • 타임스탬프와 주소 정보를 정규화하여 중복 항목을 제거하는 시그니처 정규화 적용
  • 팀의 패키지명 기반으로 대상 프로세스 ID(pid)를 필터링하여 노이즈 차단
Concept · 02

환각 제어 프롬프트 계약 (Hallucination Control Prompt Contract)

LLM이 그럴듯한 거짓 정보를 생성해 내는 것을 구조적으로 예방하기 위해 프롬프트 제약 조건, 구조화된 출력 스키마 및 물리적 UI 설계를 결합하는 안전장치입니다.

  • [SOURCE] 태그를 사용하여 로그의 출처(파일명, 라인 번호)를 명확히 인용하도록 프롬프트 규율 강제
  • 리포트 영역을 다섯 개 섹션으로 고정하고, 증거가 없으면 지어내는 대신 공란 표시 유도
  • 사용자가 AI의 분석 근거와 원본 데이터를 원클릭으로 비교 검증할 수 있는 대조 UI 구축
Concept · 03

클린 아키텍처 및 빌드 규칙 검증 (Clean Architecture with Build Linting)

소프트웨어의 의존성이 오직 내부 도메인 영역으로만 흐르도록 설계하고, 정적 분석 도구를 활용하여 이 규칙이 빌드 단계에서 엄격히 유지되도록 보장하는 기법입니다.

  • 도메인 영역의 Node, Electron, React 등 외부 프레임워크 의존성을 완전히 제거
  • dependency-cruiser 라이브러리를 사용해 빌드 타임에 아키텍처 의존성 규칙을 자동 검사하도록 설정
  • Mock 데이터를 이용해 실데이터 결합 없이 프론트엔드 전체 UI를 독립적으로 개발하는 유연성 확보