무상태성

기본 모델은 대화와 대화 사이 상태를 직접 저장하지 않는다. 다만 ChatGPT나 Claude 같은 서비스는 별도 메모리 기능을 둘 수 있다.

쉽게 말하면

ChatGPT나 Claude에서 어제 대화한 내용을 오늘 새 채팅방에서 물었더니, 처음 듣는 것처럼 답한 적 있으신가요? 기본 모델은 대화와 대화 사이의 내용을 스스로 보관하지 않습니다.

같은 채팅방에서는 앞 대화를 다시 읽어 이어서 답할 수 있지만, 새 채팅방은 새 공책을 펴는 것과 같습니다. 다만 일부 서비스는 메모리 기능을 켜면 사용자 정보 일부를 별도로 저장해 다음 대화에 반영할 수 있습니다.

좀 더 정확히

무상태성은 “모델 자체가 요청 사이 상태를 저장하지 않는 구조”를 뜻합니다. 같은 대화창에서 문맥이 이어지는 이유는, 이전 대화가 매번 컨텍스트 윈도우 안에 다시 전달되기 때문입니다. 모델이 따로 기억을 쌓는 것이 아니라, 전달된 기록을 그때그때 다시 읽는 방식입니다.

여기서 중요한 점은 모델과 서비스가 다르다는 것입니다. 모델 수준에서는 무상태성이 기본이지만, 서비스 수준에서는 메모리 기능이나 사용자 설정을 저장해 다음 대화 시작 시 함께 넣어줄 수 있습니다. 그래서 사용자 입장에서는 “기억하는 것처럼” 보일 수 있습니다.

흔한 오해

“아까 말했잖아”라는 상황이 생기면 AI가 부주의하다고 느끼기 쉽지만, 대부분은 구조의 문제입니다. 중요한 정보가 대화 안에 없거나, 길이가 길어져 컨텍스트 윈도우 밖으로 밀리면 AI는 참조할 수 없습니다.

AI가 사용자를 기억하는 것처럼 보일 때도 있습니다. 이 경우는 현재 대화 기록을 다시 읽는 경우이거나, 서비스가 저장한 메모리/설정을 시작 시 함께 전달하는 경우입니다. 즉, “모델의 장기 기억”과 “서비스의 기능”은 구분해서 보는 것이 정확합니다.

AI에게 정보를 알려주면 모델이 바로 학습된다고 생각하기 쉽지만, 보통은 현재 대화에서만 쓰이는 참고 정보입니다. 새 대화를 시작하면 그 정보는 기본적으로 이어지지 않으며, 메모리 기능이 켜진 서비스인지에 따라 동작이 달라질 수 있습니다.

이걸 왜 알아야 하나요?

이걸 모르면 AI에게 “아까 말했잖아”라고 답답해지기 쉽습니다. 무상태성을 이해하면 대화 전략이 달라집니다. 중요한 맥락은 다시 넣고, 긴 작업은 중간 요약을 남기며, 사용하는 서비스에 메모리 기능이 있는지도 확인하게 됩니다. 그러면 같은 AI라도 결과 품질이 훨씬 안정됩니다.

관련 개념

  • 컨텍스트 윈도우 - 무상태성 안에서 AI가 참조할 수 있는 범위
  • 토큰 - 컨텍스트 윈도우를 채우는 단위
  • 프롬프트 - 무상태성을 보완하기 위해 맥락을 명시하는 기술