
부제: 무해해 보이던 타임존 값 하나가 엉뚱한 지역 날씨를 부른 이야기
사용자 정보에 타임존을 저장해 뒀다. Asia/Seoul 같은 값이다.
시각을 사용자 현지 시간으로 계산하려고 넣은 것인데, 이 정보를 다른 사용자 정보와 함께 대화 컨텍스트에 넣고 있었다.
별생각 없이. 그냥 사용자 정보 중 하나니까.
지역을 안 물어봤는데 서울 날씨
어느 날 사용자가 지역을 말하지 않고 "날씨 어때?"라고 물었다.
그러면 에이전트가 "어느 지역이요?"라고 되물어야 자연스럽다.
그런데 에이전트가 곧바로 서울 날씨를 조회했다.
컨텍스트에 있는 타임존 Asia/Seoul을 보고, "이 사용자는 서울에 산다"고 넘겨짚은 것이다.
타임존은 시각 계산용으로 넣은 값이지 "거주지"가 아니다.
타임존과 사는 곳이 대개 겹치긴 하지만 항상은 아니다.
여행 중일 수도, 해외 사용자일 수도 있다.
모델은 그 값을 주소처럼 읽고 과하게 추론했다.
무해해 보이는 값이 추론을 오염시킨다
이게 컨텍스트 오염이다.
시스템이 쓰려고 넣은, 그 자체론 무해해 보이는 값이,
모델의 추론에 새어 들어가 엉뚱한 행동을 유발했다.
모델은 컨텍스트에 있는 건 뭐든 근거로 삼는다.
"이건 그냥 계산용인데"라고 우리가 생각해도, 모델은 그렇게 구분해 주지 않는다.
보이면 쓴다.
넣지 않는 것도 설계다
그래서 타임존을 옮겼다.
컨텍스트에 들어가는 사용자 정보에서 빼고, 컨텍스트에 안 들어가는 별도 설정(settings) 필드로 분리했다.
시각 계산엔 여전히 쓰되, 모델에게는 보이지 않는다.
그러자 지역을 안 물어보고 서울 날씨를 조회하던 문제가 사라졌다.
여기서 배운 게 있다.
컨텍스트에 무엇을 넣느냐만큼, 무엇을 빼느냐도 중요하다는 것.
시스템 내부용 값이 모델 눈에 띄면, 예상 못 한 추론을 부른다.
정리
- 시각 계산용으로 저장한 타임존(Asia/Seoul)을 사용자 정보와 함께 컨텍스트에 넣고 있었다
- 사용자가 지역을 안 밝히고 날씨를 묻자, 에이전트가 타임존을 "거주지"로 넘겨짚어 서울 날씨를 바로 조회
- 무해해 보이는 시스템용 값이 모델 추론에 새어 든 컨텍스트 오염
- 타임존을 컨텍스트에 안 들어가는 settings 필드로 분리 — 계산엔 쓰되 모델엔 안 보이게
컨텍스트에 넣는 정보는 "모델이 이걸 보고 무슨 추론을 할까"까지 내다봐야 한다.
무해해 보이는 값도 모델은 근거로 삼아 과잉 추론한다.
시스템 내부용 값과 모델에 보여줄 값을 분리하는 것 — 넣지 않는 것도 설계다.
'AI' 카테고리의 다른 글
| [에이전트] 학계 1순위 중요도 점수를 버린 이유, LLM 1~10점은 변별력이 없다 (0) | 2026.07.15 |
|---|---|
| [에이전트] 실측 0회 경로 방어 코드 어디까지 짤까 문서화된 미완성 (0) | 2026.07.14 |
| [에이전트] 도메인 지식 지연 로딩 Progressive Disclosure 스킬 (0) | 2026.07.12 |
| [프롬프트] LLM 프롬프트 중앙 관리 Langfuse SWR 캐싱 (0) | 2026.07.12 |
| [RAG] 하이브리드 검색 BM25 벡터 RRF 순위 결합 (0) | 2026.07.12 |