모델은 기억하지 못합니다. 당신이 기억합니다.

예전에는 대규모 언어 모델(LLM)에 메모리가 있다고 생각했습니다.

각 채팅 세션이 자체적인 컨텍스트를 저장한다고 생각했습니다. 제 착각이었습니다.

LLM은 stateless입니다. 모델은 한 요청에서 다음 요청으로 아무것도 기억하지 못합니다.

채팅 기록을 볼 때, 여러분은 메시지 배열(array)을 보고 있는 것입니다. 대화를 구성하려면 매번 새로운 프롬프트와 함께 전체 기록을 모델에 다시 보내야 합니다.

SDK를 사용하면 이 과정은 숨겨집니다. SDK가 복잡한 작업을 대신 처리해 주기 때문입니다.

raw fetch를 사용하면 모든 것이 보입니다. 헤더, 바디, 그리고 메시지 배열을 직접 관리해야 합니다.

컨텍스트가 작동하는 방식은 다음과 같습니다:

• 메시지를 보냅니다. • 모델이 응답합니다. • 두 메시지를 모두 배열에 저장합니다. • 다음 질문을 위해 배열 전체를 다시 보냅니다.

모델은 현재 요청에 포함된 내용만 알 수 있습니다. 그 외의 모든 것은 사라집니다.

이 배열을 이해하는 것이 AI 개발의 기초입니다. 이는 RAG, 슬라이딩 윈도우(sliding windows), 시맨틱 검색(semantic search)과 같은 고급 방법론의 시작점입니다.

신뢰할 수 있는 AI 도구를 만들고 싶다면 추상화에 의존하는 것을 멈추십시오. raw request를 살펴보세요. 히스토리를 직접 제어하십시오.

전체 게시물: https://dev.to/marcochavezco/the-model-doesnt-remember-you-do-38jk