피드로 돌아가기
I Was About to Rewrite My Chat Router. The Bug Was Two Lines in a Prompt.
Dev.toDev.to
AI/ML

코드 8자 수정으로 Architecture 재설계 없이 Hallucination 해결

I Was About to Rewrite My Chat Router. The Bug Was Two Lines in a Prompt.

Ali Afana2026년 5월 11일9intermediate

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의 바이트 단위 분석 선행

원문 읽기