[한영자막] AI 에이전트에 학습하는 메모리를 제공해 보세요 — Jake Broekhuizen, LangChain
한 줄 핵심
에이전트의 메모리는 단순 저장소가 아니라 실행에서 얻은 경험을 다음 실행의 지속적 맥락으로 바꿔, 관찰 가능한 에이전트를 시간이 갈수록 더 나아지게 만드는 핵심 메커니즘이다.
시간별 요약
-
0:00
에이전트에 메모리 제공하기 코딩 에이전트, 지원 에이전트, 연구 에이전트 등 어떤 에이전트든 실행을 거듭할수록 더 나아지도록 메모리를 붙이는 방법이 핵심 주제로 제시된다.
-
0:18
다음 실행은 더 나아져야 합니다 대부분의 팀은 한 번의 실행보다 다음 실행이 개선되어야 한다는 직관을 갖고 있으며, 이후 설명은 그 목표를 달성하는 구조를 예시로 풀어간다.
-
0:28
금융 도우미의 말투 문제 금융 도우미 사례에서 말투와 어휘가 규정에서 벗어나는 문제가 발생했고, 이를 사람 손으로 추적 기록을 읽고 컨텍스트를 고치는 방식은 확장성이 떨어진다. 에이전트의 상호작용이 곧 학습의 재료가 되어야 한다는 요구가 여기서 나온다.
-
2:12
관찰과 학습은 다릅니다 에이전트를 관찰하는 것과 그 관찰을 미래 실행을 위한 교훈으로 바꾸는 것은 전혀 다른 일이며, 메모리는 그 간극을 메우는 장치로 설명된다.
-
2:38
늘어나는 추적 기록 에이전트는 실행할수록 더 많은 trace와 로그를 만들어 내며, 이를 통해 호출된 도구, 추론 과정, 참고한 산출물을 파악할 수 있다. 관측 가능성은 신뢰성 높은 에이전트를 만드는 기반이다.
-
3:08
로그를 신호로 바꾸기 저장된 trace가 미래 컨텍스트를 바꾸지 못하면 같은 실수가 반복된다. 목표는 로그를 단순한 기록이 아니라 다음 실행을 안내하는 신호로 전환하는 것이며, 적응형 에이전트는 실행 결과를 바탕으로 스스로를 수정한다.
-
3:47
메모리란 무엇인가요 메모리는 미래 실행에서 참조되는 지속 가능한 컨텍스트다. trace, transcript, log는 일어난 일의 증거일 뿐이며, 그 교훈이 장기적으로 유지될 때 비로소 메모리가 된다.
-
4:14
의미·일화·절차 메모리 메모리는 사실과 선호를 담는 의미 메모리, 경험과 예시를 담는 일화 메모리, 행동 규칙과 지침을 담는 절차 메모리로 나뉜다. 이 구분은 언어 기반 에이전트를 이해하는 데 유용하다.
-
5:14
행동을 바꾸는 절차 메모리 눈에 띄는 개선은 대개 절차 메모리에서 나온다. 금융 도우미의 말투 수정도 새 사실을 주입한 것이 아니라, 사용자와 상호작용할 때 따라야 할 규칙을 바꾼 결과다.
-
5:44
작업 메모리와 장기 메모리 작업 메모리는 현재 실행에 필요한 중간 계산, tool 결과, 가져온 파일 같은 임시 맥락이고, 장기 메모리는 앞으로의 턴에서 참조할 지속 맥락이다. 구현 방식은 프롬프트 주입, tool 조회, 스토어 접근, 파일 로드, 런타임 상태 변경 등으로 다양하지만 구분 자체가 중요하다.
-
7:46
읽기·쓰기 순환 에이전트는 먼저 장기 메모리에서 현재 작업에 필요한 맥락을 읽고, 실행 중에는 trace를 남기며, 이후 그 증거 중 일부를 다시 장기 메모리에 써 넣는 순환을 돈다. 모든 증거를 메모리화하면 미래 추론이 어려워지므로 필터 단계가 중요하다.
-
8:59
무엇을 기억할지 결정하기 핵심은 어떤 증거를 유의미한 신호로 보고 어떤 것은 기록으로 남길지 판별하는 일이다. 이렇게 선별된 신호가 장기 컨텍스트를 갱신하고, 그 결과 다음 실행이 더 나아지는 선순환이 만들어진다.
-
9:46
기록·분석·갱신 메모리 시스템은 결국 3단계로 단순화된다: 일어난 일을 기록하고, 무엇이 중요한지 분석하고, 그 결과를 미래 실행이 쓸 수 있도록 컨텍스트를 갱신한다. 구현은 달라도 이 구조는 유효한 출발점이다.
-
10:13
LangSmith와 Context Hub LangSmith에서는 관측 단계에서 tool call과 서브 에이전트 호출, 가져온 컨텍스트를 보고, 분석 단계에서 trace에서 신호를 추출한 뒤, LangSmith의 Context Hub에 저장해 다음 실행이 다시 불러오게 한다. 이 흐름이 경험을 지속 컨텍스트로 바꾸는 구체적 예다.
-
11:27
금융 도우미에 적용하기 금융 도우미는 Context Hub에서 instructions, skills, markdown files, policies, rules를 불러와 실행하고, trace에서 말투 이탈이나 실패한 tool call, 사용자 수정을 포착한다. 이후 필요한 static skill markdown files를 갱신해 다음 실행에서 말투가 개선되도록 만든다.
-
12:28
교훈 1: 대부분은 이력으로 에이전트가 쏟아내는 출력물 전부를 메모리로 바꾸면 안 되고, 대부분은 참조 가능한 이력으로 남겨야 한다. 메모리 업데이트는 그중 극히 일부, 즉 실제 행동을 바꿀 가치가 있는 신호에만 적용해야 한다.
-
13:13
교훈 2: 캐시와 실행 경로 장기 실행 에이전트에서는 메모리를 갱신했더라도 runtime state나 cache 때문에 다음 실행에서 그 변경이 보이지 않을 수 있다. 따라서 무엇을 캐시할지, 무엇을 hot path에서 갱신 가능하게 둘지 신중히 설계해야 한다.
-
14:04
교훈 3: 중요한 규칙은 사람 검토 절차 메모리처럼 행동의 대부분을 좌우하는 규칙과 정책은 자동 갱신보다 사람 검토가 필요하다. 중요한 변경은 hot reload 전에 노출하고 검토하는 장치가 있어야 한다.
-
14:59
경험을 다음 실행의 개선으로 메모리는 정보를 저장하는 상자가 아니라 경험을 컨텍스트로 바꿔 다음 실행의 품질을 높이는 장치다. 이 순환을 만들면 에이전트는 시간이 지날수록 실제로 더 좋아진다.
실무 인사이트
- 실무에서는 모든 trace를 학습 재료로 쓰기보다, 행동 변화를 유발하는 소수의 신호만 선별해 장기 메모리에 반영하는 설계가 중요하다.
- 장기 메모리 갱신이 실제 실행 경로에 반영되는지 캐시와 runtime state까지 함께 점검해야, '업데이트했는데도 행동이 안 바뀌는' 문제를 줄일 수 있다.
- 톤, 정책, 안전 규칙처럼 영향이 큰 절차 메모리는 자동화만 믿지 말고 사람 검토를 끼워 넣어야 안정적으로 운영할 수 있다.