피드로 돌아가기![[Day 3] I Had a Local LLM Analyze a Year of My Credit Card Statements](/_next/image?url=https%3A%2F%2Ftsewlmecqtvqphyhezcm.supabase.co%2Fstorage%2Fv1%2Fobject%2Fpublic%2Fthumbnails%2Fc9216779-8708-41f8-b434-85f4b8660567.webp%3F&w=3840&q=75)
Dev.toAI/ML
원문 읽기
Pandas 사전 집계 기반 Local LLM 분석으로 데이터 정확도 100% 달성
[Day 3] I Had a Local LLM Analyze a Year of My Credit Card Statements
AI 요약
Context
Raw CSV 데이터를 Local LLM에 직접 입력하여 가계 지출 패턴을 분석하려는 시도 수행. 모델 크기(7B, 72B)와 관계없이 LLM이 대량의 수치 데이터를 직접 집계할 때 심각한 Hallucination과 계산 오류가 발생하는 한계 확인.
Technical Solution
- 데이터 전처리를 통한 정제: cp932 인코딩 변환 및 쉼표 포함 상호명 처리 로직을 통한 데이터 무결성 확보
- 집계 책임 분리(Separation of Concerns): LLM의 추론 능력과 전통적인 계산 도구의 정확성을 분리하여 아키텍처 설계
- Pandas 기반 Pre-aggregation: Python Pandas 라이브러리를 활용해 Raw 데이터를 요약 정보로 변환하여 입력 토큰량 감소 및 정확도 향상
- Local LLM 런타임 최적화: Ollama를 통한 Qwen2.5 모델 배포 및 DGX Spark의 대용량 Memory(121GB)를 활용한 72B 모델 로딩
- 데이터 보안 강화: SSH 직접 전송 방식을 채택하여 Git History에 민감한 개인 금융 데이터가 남는 리스크 제거
실천 포인트
- LLM에 수치 분석 요청 전, Pandas나 SQL로 사전 집계된 Summary 데이터를 제공하고 있는지 확인 - 민감 데이터 처리 시 Git과 같은 버전 관리 시스템 대신 보안 전송 프로토콜(SSH 등) 사용 검토 - 모델 파라미터 크기 증가가 수치 계산의 정확도를 보장하지 않음을 인지하고 로직적 해결책 우선 고려