피드로 돌아가기
Dev.toAI/ML
원문 읽기
코드 8자 수정으로 Architecture 재설계 없이 Hallucination 해결
I Was About to Rewrite My Chat Router. The Bug Was Two Lines in a Prompt.
AI 요약
Context
Multi-tenant AI sales chatbot에서 상품 카탈로그 데이터가 아닌 마케팅 문구를 기반으로 허위 상품을 안내하는 Hallucination 발생. Grounded-LLM playbook에 따라 Retrieval Pipeline과 Router 기반의 데이터 제약 구조를 갖추었음에도 불구하고 모델이 부정확한 정보를 선택적으로 참조함.
Technical Solution
- System Prompt 내의 모호한 Labeling으로 인해 모델이 마케팅 텍스트를 Inventory List로 오인한 지점 식별
Store:라는 일반적인 식별자가 LLM의 Training Data 내 Catalog JSON/CSV 패턴과 일치하여 우선순위가 높게 설정된 현상 파악- 변수 레이블을
Store:에서About the store (brand voice / background — NOT a product catalog):로 변경하여 데이터의 성격을 명시적으로 규정 - 모델이 참조해야 할 Source of Truth인
category_overview데이터와 마케팅 문구 사이의 의미적 위계 설정 - Architecture 중심의 Behavior Control과 Prompt 중심의 Tone/Labeling Control을 결합한 계층적 데이터 제공 구조 적용
실천 포인트
- LLM에 제공하는 Context 데이터의 Label이 Training Data의 일반적인 패턴(예: Store:, Product:)과 충돌하는지 검토 - Retrieval 결과값이 정확함에도 Hallucination이 발생할 경우, Prompt 내 데이터 간의 우선순위 및 레이블의 명확성 확인 - 구조적 변경(Architecture Rewrite) 전, 실제 모델에 전달되는 최종 Raw Prompt의 바이트 단위 분석 선행