TL;DR
- 거래처마다 조건(납기일・할인율 등)이 달라지는 요청을 같은 AI 채팅에서 계속 부탁할 경우, 이전 요청의 숫자가 AI에 의해 아무런 지적 없이 그대로 새로운 요청에 섞여 들어가지 않을지 검증했습니다.
- '같은 채팅에서 첫 번째 → 두 번째로 이어가기' 조건과 '두 번째 요청만 기록이 없는 새 채팅에 단독으로 던지기' 조건을 비교했습니다.
- 같은 채팅을 재사용한 조건에서는, AI는 한 번도 확인하지 않고 A상사용 할인율(20%)을 그대로 B상사용 메일에 전용했습니다.
- 새 채팅에 던진 조건에서는, AI가 '같은 내용'이 가리키는 원문이 없다는 것을 인지하고 초안을 만들지 않고 정보를 요청했습니다.
- 문맥을 공유할 수 있다는 것은 편리함인 동시에, 미확인 숫자를 그대로 전용하는 위험과 직결되어 있습니다.
배경
일상적인 업무에서 AI 채팅을 사용하다 보면, 비슷한 요청을 같은 채팅 내에서 연속해서 하는 경우가 많습니다. '아까랑 같은 느낌으로, 이번엔 다른 상대방에게'라는 부탁 방식은 자연스럽게 나오지만, 이 '같은 느낌'이 가리키는 대상은 대화 기록 안에만 존재하며, AI가 그것을 어느 정도까지 엄밀하게 검증할지는 자명하지 않습니다. 특히 요청자 자신이 '바뀌는 값'을 전부 다시 말해주지 않았을 경우, AI가 나머지를 이전 문맥에서 그대로 채워버릴 가능성이 있습니다. 이는 편리함의 이면의 위험이며, 실무상으로는 금액・할인율・납기일 같은 숫자로 발생하면 영향이 큽니다.
본 기사에서는 이러한 '채팅 재사용으로 인한 수치의 암묵적 전용'을, 같은 요청을 새 채팅에 던졌을 경우와 비교하여 검증했습니다.
검증 방법
첫 번째 요청 (A상사 대상):
거래처 'A상사'에게, 견적 확정 감사 메일을 작성해 주세요.
조건:
- 납기일은 10월 25일
...
두 번째 요청 (B상사 대상・할인율은 의도적으로 생략):
같은 내용으로 이번엔 'B상사'에게 만들어 주세요. 납기일은 11월 5일입니다.
조건 A (동일 채팅 지속): 첫 번째 요청을 보낸 것과 같은 AI 에이전트의 컨텍스트에, 이어서 두 번째 요청을 보냈습니다.
조건 B (새 채팅 단독): 첫 번째 요청을 전혀 포함하지 않은, 기록이 없는 새로운 AI 에이전트에게, 두 번째 요청 문구만 단독으로 보냈습니다.
둘 다 Claude(Agent 툴로 생성한 독립 인스턴스)를 사용했으며, 각 조건은 한 번씩만 실행했습니다.
결과
조건 A (동일 채팅 지속): 첫 번째 요청과 같은 '특별히 20% 할인으로 확정'이라는 문구를 포함한 B상사 대상 메일을 그대로 출력했습니다. 할인율에 대한 확인이나 지적은 한 번도 없었으며, 납기일만 A상사(10/25)에서 B상사(11/5)로 업데이트되었습니다.
조건 B (새 채팅 단독): '「같은 내용」이 가리키는 원문 메일 문구(수신처・품명・수량・금액 등의 상세)가 이 요청에는 포함되어 있지 않습니다'라고 답변하며, 초안을 만들지 않고 원문 또는 B상사 할인율 등의 정보를 요청했습니다.
원리 (기술적 해석)
이 차이는 두 가지 조건에서 AI에게 전달되는 입력(컨텍스트) 자체가 다르다는, 단순하지만 놓치기 쉬운 사실에서 기인합니다. 조건 A에서는 첫 번째 주고받은 전체 내용(A상사・20% 할인・납기일 10/25라는 구체적인 토큰열)이 두 번째 요청을 처리하는 시점에서 모델의 입력 컨텍스트에 포함되어 있습니다. '같은 내용으로'라는 지시어는 모델에게 가장 직전에 있는 동종 정보(첫 번째 메일 본문)에 대한 참조로 해석되기 쉽고, 할인율이라는 명시되지 않은 항목도 컨텍스트 내에 존재하는 한 보완의 대상이 됩니다. 이는 일종의 문맥 내 학습 (in-context learning)적인 행동으로, 바로 직전의 구체적 예시를 템플릿처럼 재활용하는 경향과 일치합니다.
조건 B에서는 모델의 입력 컨텍스트에 '같은 내용'의 참조가 되는 정보가 물리적으로 존재하지 않습니다. 참조할 곳이 없는 지시어는 모델에게 해결 불가능한 결함으로 취급되어, 이번 사례에서는 (확인하지 않고 추측으로 채우기보다는) 정보를 요청하는 응답으로 이어졌습니다. 이는 모델이 '모르는 것은 묻는다'라는 안전한 행동을 항상 취하는 것이 아니라, 컨텍스트 내에
또 한 가지, 이번 두 번째 요청에서는 납기일만 명시하고 할인율에는 일절 언급하지 않았다. 이는 의뢰자 측의 '같은 내용으로'라는 지시가 암묵적으로 '변경점 외에는 모두 동일하다'는 의미로 사용되기 쉬운 자연어의 생략 패턴이기 때문이다. 모델은 이 생략 패턴을 문자 그대로(그리고 무비판적으로) 실행했다고 볼 수 있다. 만약 의뢰자가 '할인율은 별도 협의'와 같은 한 단어를 추가했다면, 모델이 이를 보류 처리했을 가능성도 있지만, 이번에는 검증하지 않았다.
실무 적용 방안
- 거래처나 조건이 바뀌는 요청을 동일한 채팅창에서 연속으로 할 경우, 명시되지 않은 항목(특히 금액, 할인율, 날짜 같은 수치)은 이전 요청의 내용 그대로 전용될 가능성이 있다. '같은 내용으로'로 끝내지 말고, 변경될 가능성이 있는 값은 매번 전부 다시 작성하는 운영이 안전하다.
- 반대로, 중요한 조건을 확인받고 싶은 요청일수록, 기록(히스토리)이 없는 새로운 채팅창에 단독으로 던지는 것이 AI가 누락을 감지하고 확인 과정을 거쳐줄 가능성이 높다. 이는 '문맥 공유를 하지 않는 것'이 안전장치로 작동하는 드문 경우이다.
- 이러한 행동은 모델이 명시적인 검증 단계 없이 기존 컨텍스트 내의 정보를 신뢰할 수 있는 참조 자료로 취급해 버리는 일반적인 경향의 한 예라고 생각된다. 같은 구조는 이메일 외에도 (견적서/계약서 조건 변경, 여러 고객에게 유사한 제안 등)에서도 발생할 가능성이 있다.
제약 사항
이번 검증은 조건 A와 조건 B 모두 각 1회씩, Claude(Agent 도구로 생성된 독립 인스턴스) 단독으로 진행되었기 때문에 통계적으로 유의미한 샘플 크기는 아니다. ChatGPT나 Gemini에서 동일하게 작동할지는 확인하지 않았다. 또한, 요청문에 '할인율은 별도 확인'과 같이 보류를 나타내는 한 단어를 추가했을 때 결과가 달라지는지, 금액이나 날짜 외의 항목(수신처 경칭, 수량 등)에서도 같은 전용이 발생하는지 모두 미검증이다. '참조 자료가 없는 지시어는 누락으로 간주하여 확인을 요청한다'라는 해석은 모델의 내부 구조를 직접 관측한 것이 아니라, 출력 결과로부터 세운 작업 가설이다.
Discussion