AI는 왜 긴 대화 앞부분을 까먹나: 토큰, 컨텍스트, 환각을 실무 관점에서 보기

AI가 긴 대화 앞부분을 잊는 것처럼 보이는 이유는 사람처럼 기억해서 답하는 시스템이 아니기 때문이다. 대부분의 LLM은 주어진 컨텍스트 안에서 다음 토큰을 예측하고, 도구와 메모리는 그 한계를 보완하는 장치다.

AI와 대화하다 보면 이상한 순간이 생긴다. 처음에 분명히 조건을 말했는데 뒤로 갈수록 무시한다. 파일 내용을 읽었다고 했는데 나중에는 다른 내용을 말한다. 긴 작업을 맡겼더니 앞에서 정한 기준과 다른 방식으로 마무리한다.

이 현상을 "AI가 기억력이 나쁘다"로만 보면 대응이 어렵다. 더 실용적인 관점은 AI가 현재 문맥 안에서 답을 만든다고 보는 것이다. 모델은 대화 전체를 사람처럼 기억해 꺼내는 것이 아니라, 지금 주어진 입력과 문맥을 바탕으로 출력을 만든다.

토큰은 AI가 문장을 다루는 단위다

ai_context_memory 도식
글의 핵심을 정리한 도식 (본인 데이터·구조 기반)

사람은 문장을 단어와 의미로 읽지만, AI 모델은 텍스트를 토큰 단위로 처리한다. 토큰은 단어 하나와 정확히 같지 않다. 언어, 기호, 코드, 띄어쓰기 방식에 따라 잘리는 방식이 달라진다.

OpenAI의 prompt engineering 문서도 컨텍스트 창을 토큰 단위로 설명한다. 여기서 중요한 것은 토큰이 비용 계산만을 위한 개념이 아니라는 점이다. AI에게 어떤 정보를 얼마나 압축해서 줄지 결정하는 기준이 된다.

관점실무 의미
입력 길이긴 문서를 전부 넣는다고 항상 좋아지지 않는다
출력 길이긴 답변은 비용과 검토 부담을 늘린다
정보 밀도핵심 지시는 짧고 반복 가능한 형태가 좋다
한국어와 코드텍스트 종류에 따라 토큰 효율이 달라질 수 있다

컨텍스트 창은 작업 책상에 가깝다

컨텍스트 창은 AI가 지금 보고 있는 작업 책상이라고 생각하면 쉽다. 책상 위에 필요한 문서가 없으면 AI는 추측하게 된다. 반대로 책상 위에 너무 많은 문서를 올려두면 중요한 종이를 찾기 어려워진다.

그래서 긴 작업에서는 "모든 정보를 한 번에 넣기"보다 "필요한 정보를 단계별로 가져오기"가 낫다. 먼저 전체를 요약하고, 후보를 좁히고, 필요한 부분만 다시 읽고, 그 다음 초안이나 수정으로 넘어가는 방식이다.

방식문제더 나은 방식
긴 문서 전체를 한 번에 넣기핵심 지시가 묻힐 수 있다요약, 후보, 정독 순서로 나누기
오래된 조건을 대화 앞부분에만 두기뒤에서 조건이 약해질 수 있다중요한 조건을 체크리스트로 반복하기
여러 작업을 한 요청에 섞기완료 기준이 흐려진다탐색, 작성, 검증을 분리하기

OpenAI Responses API reference는 입력이 모델의 컨텍스트 창을 넘을 때 truncation 설정에 따라 동작이 달라질 수 있음을 설명한다. 모델별 컨텍스트 길이는 수시로 바뀌니 숫자를 외우기보다, 컨텍스트를 관리해야 한다는 실무 원칙에 집중하는 편이 안전하다.

AI가 앞부분을 까먹는 것처럼 보이는 이유

AI가 앞부분을 까먹는 것처럼 보이는 이유는 여러 가지가 섞여 있다.

첫째, 대화가 길어질수록 중요한 지시가 다른 정보 사이에 묻힌다. 둘째, 최근 입력이 더 강하게 작용할 수 있다. 셋째, 사용자가 중간에 새 조건을 추가하면 이전 조건과 충돌할 수 있다. 넷째, AI가 읽은 파일이나 도구 결과가 대화 안에서 어떻게 유지되는지 명확하지 않을 수 있다.

이 문제를 줄이려면 중요한 조건을 대화 앞부분에 한 번만 쓰지 말고, 작업 단위마다 다시 확인해야 한다.

지금까지의 작업 기준을 5줄로 요약해줘.
이 기준과 충돌하는 지시가 있는지 확인해줘.
다음 단계에서 바꾸지 말아야 할 항목을 따로 적어줘.

이런 요청은 AI를 의심하는 것이 아니라, 문맥을 다시 정렬하는 과정이다.

환각은 빈칸을 그럴듯하게 채우는 현상에 가깝다

AI 환각을 단순한 거짓말로 보면 대응이 어렵다. 실무적으로는 근거가 부족한 상황에서 그럴듯한 문장을 만드는 현상으로 보는 편이 낫다.

AI는 답변을 만들 때 모르는 부분을 항상 빈칸으로 남기지 않는다. 입력이 애매하거나 근거가 부족하거나 최신 정보가 없을 때도 자연스러운 문장을 만들 수 있다. 그래서 환각은 "나쁜 모델"의 문제만이 아니라 "검증 구조가 없는 작업"의 문제이기도 하다.

환각을 줄이는 방법은 다음과 같다.

방법효과
근거 파일 지정추측보다 확인된 자료를 쓰게 한다
모르는 부분 표시 요구빈칸을 억지로 채우지 않게 한다
최신 정보는 웹/공식 문서 확인오래된 지식 문제를 줄인다
답변과 근거를 분리어떤 부분이 추론인지 볼 수 있다
검증 명령 남기기결과를 다시 확인할 수 있다

도구 호출과 MCP는 기억을 대체하지 않는다

MCP, 웹 검색, 파일 읽기, 데이터베이스 조회 같은 도구는 AI가 현재 컨텍스트에 없는 정보를 가져오게 해준다. OpenAI의 function calling 문서는 tool calling을 모델 요청, 도구 호출, 애플리케이션의 도구 실행, 도구 출력 재전달, 최종 응답으로 이어지는 다단계 흐름으로 설명한다.

하지만 도구가 있다고 해서 답이 자동으로 맞아지는 것은 아니다. 도구가 가져온 정보가 오래되었을 수 있고, 잘못된 경로를 읽었을 수 있으며, 읽은 결과를 잘못 요약할 수도 있다.

MCP도 모델 자체의 기억을 늘리는 마법이 아니라, 외부 도구와 지식을 연결하는 방식으로 보는 편이 안전하다. OpenAI MCP 문서도 원격 MCP 서버를 모델이 추가 도구와 지식에 연결되는 방식으로 설명한다.

그래서 중요한 것은 도구를 썼는지가 아니라 도구 결과가 어떻게 쓰였는지다. 어떤 파일을 읽었는지, 어떤 링크를 확인했는지, 어떤 부분은 추론인지 구분해야 한다.

긴 작업을 맡길 때 쓰는 실전 순서

긴 작업은 한 번에 완성 답변을 요구하지 않는 편이 좋다. 다음 순서가 더 안정적이다.

순서요청목적
1관련 자료를 찾고 제외 기준을 남겨줘입력 범위 확인
2후보를 표로 묶고 위험 태그를 붙여줘판단 기준 확인
3상위 후보만 초안 구조로 만들어줘출력 범위 축소
4사용한 근거와 확인 필요 항목을 분리해줘환각 방지
5최종 답변 전에 기준을 다시 요약해줘컨텍스트 재정렬

이 방식은 느려 보일 수 있다. 하지만 긴 작업을 다시 하는 비용을 줄인다. AI 작업은 한 번에 길게 맡기는 것보다, 중간 결과를 확인하며 이어가는 편이 안전하다.

FAQ

AI가 앞에서 말한 지시를 왜 무시하나?

대화가 길어질수록 중요한 지시가 컨텍스트 안에서 희석될 수 있다. 핵심 지시는 짧게 다시 제시하거나, 체크리스트 형태로 반복하는 편이 안정적이다.

컨텍스트가 길면 무조건 좋은가?

아니다. 긴 컨텍스트는 더 많은 정보를 제공하지만, 동시에 검토할 정보도 늘린다. 핵심 정보만 구조화해서 제공하는 편이 결과가 더 좋을 때가 많다.

AI 환각을 완전히 없앨 수 있나?

완전히 없앤다고 가정하기보다 줄이고 검출하는 구조를 만드는 편이 현실적이다. 근거 지정, 최신 정보 확인, 모르는 부분 표시, 검증 명령이 필요하다.

MCP는 AI 기억력을 늘리는 기술인가?

MCP는 모델 자체의 기억을 늘린다기보다 외부 도구와 데이터를 연결하는 방식에 가깝다. 모델이 필요한 정보를 도구로 가져와 작업할 수 있게 해준다.

긴 문서를 AI에게 맡길 때 좋은 순서는 무엇인가?

전체 요약, 후보 분류, 위험 표시, 필요한 부분 정독, 최종 초안 작성 순서가 좋다. 처음부터 전체 문서를 바탕으로 완성 답변을 요구하면 근거 추적이 어려워진다.

마무리

AI가 긴 대화 앞부분을 까먹는 것처럼 보일 때는 모델을 사람처럼 기억하는 존재로 생각하지 않는 편이 낫다. AI는 현재 주어진 문맥 안에서 답을 만들고, 도구와 메모리는 그 문맥을 보완한다.

매일 쓰면서 굳어진 리셋 기준 세 가지도 박아 둔다. 첫째, 주제가 바뀌면 무조건 새 대화다. 이전 맥락은 도움이 아니라 오염이 된다. 둘째, 대화가 길어져 앞 조건이 흐려진 느낌이 오면 "지금까지 조건을 요약해 봐"로 점검하고, 어긋나 있으면 그 자리에서 고치는 대신 요약본을 들고 새 대화로 간다. 셋째, 꼭 지켜야 할 조건은 처음이 아니라 가장 최근 메시지에 다시 쓴다. 모델은 입력의 끝부분을 더 잘 따른다.

그래서 긴 작업을 맡길 때는 문맥을 관리해야 한다. 핵심 조건을 반복하고, 작업을 단계로 나누고, 근거와 추론을 분리하고, 최신 정보는 공식 문서로 확인해야 한다. AI를 잘 쓰는 일은 좋은 질문을 한 번 던지는 일이 아니라, 문맥을 계속 정리하는 일이다.

내 문장이 토큰으로 어떻게 쪼개지는지는 OpenAI 토크나이저 페이지에서 직접 확인할 수 있다. 컨텍스트를 아끼는 입력 설계 쪽은 프롬프트 엔지니어링 실전 패턴과 이어진다.

AI 동작원리 시리즈: ① 다음 토큰 예측 · ② 토큰과 요금 · ③ 어텐션 · ④ 학습 3단계 · ⑤ 환각과 샘플링 · ⑥ 컨텍스트 윈도우(이 글) · ⑦ 하네스

댓글

이 블로그의 인기 게시물

마와린세 패스 완전정리 — 이세시마 여행 [1/9]

우분투 26.04 LTS 설치·개발환경 세팅 가이드

Windows 패키지 매니저 비교 — winget·Chocolatey·Scoop