메모리, 계획, 도구: 진지한 AI 파워 유저가 반드시 이해해야 할 세 가지 기둥
요약
단순한 텍스트 생성을 넘어 복잡한 작업을 수행하는 AI 아키텍처의 핵심 요소인 메모리, 계획, 도구의 중요성을 설명합니다. 원샷 프롬프트의 한계를 지적하며 엔지니어링 관점에서의 접근 방식을 다룹니다.
핵심 포인트
- AI 생산성의 핵심은 모델 지능이 아닌 아키텍처에 있음
- 메모리, 계획, 도구는 AI를 에이전트로 만드는 3대 기둥
- 인컨텍스트 메모리와 외부 메모리의 차이 이해 필요
- 연속적이고 복잡한 작업을 위해 다단계 추론 아키텍처가 필수적임
매일 AI를 사용하는 대부분의 사람들은 여전히 AI를 매우 정교한 자동 완성 기능처럼 취급하고 있습니다. 질문을 입력하고, 답변을 읽고, 창을 닫습니다. 세션이 종료되면 컨텍스트 (Context)가 사라지고, 내일이면 그들은 다시 제로 상태에서 시작합니다. 어제 무엇을 작업했는지, 목표가 무엇인지, 혹은 어떤 도구에 접근할 수 있는지 전혀 모르는 AI와 함께 말이죠.
그러한 워크플로우 (Workflow)에는 명확한 한계가 있습니다. 그리고 대부분의 사람들은 왜 그런지 깨닫지 못한 채 그 한계에 부딪힙니다.
AI 생산성의 최전선이 이동한 이유는 새로운 모델 때문이 아닙니다. 그것은 새로운 아키텍처 (Architecture) 때문입니다. 언어 모델을 단순히 반응적인 텍스트 생성기에서, 당신을 대신해 지속적이고 복잡한 작업을 실제로 수행할 수 있는 무언가로 변화시키는 세 가지 특정 능력에 기반한 아키텍처입니다.
그 세 가지 능력은 바로 메모리 (Memory), 계획 (Planning), 그리고 도구 (Tools) 입니다.
각 능력이 실제로 무엇을 의미하는지 — 마케팅적인 관점이 아니라 엔지니어링 (Engineering) 관점에서 — 이해하는 것이 AI를 효과적으로 사용하는 것과 단순히 자주 사용하는 것 사이의 차이를 만듭니다.
원샷 프롬프트 (One-Shot Prompts)에 한계가 있는 이유
단일 프롬프트 상호작용은 경계가 정해진 이벤트입니다. 모델은 입력을 받고, 출력을 생성하며, 종료됩니다. 어떠한 상태 (State)도 앞으로 전달되지 않습니다. 당신이 다음에 무엇을 필요로 할지에 대한 추론 (Inference)도 이루어지지 않습니다. 세상 속에서 어떠한 행동도 취해지지 않습니다.
이러한 아키텍처는 개별적인 작업, 즉 문단 초안 작성, 문장 번역, 문서 요약 등에는 적합합니다. 하지만 작업이 연속성, 다단계 추론 (Multi-step reasoning), 또는 외부 시스템과의 상호작용을 요구하는 순간 무너집니다.
현실적인 전문가 시나리오를 생각해 보십시오: 당신은 AI가 매주 특정 시장 섹터를 모니터링하고, 새로운 전개 상황을 종합하며, 당신이 6개월 동안 구축해 온 연구 스레드 (Research thread)와 교차 참조하여, 기존의 결론을 변화시키는 항목들만 찾아내기를 원합니다. 원샷 프롬프트는 이를 수행할 수 없습니다. 그것은 당신의 6개월 치 연구 스레드에 접근할 수 없고, 스스로 일정을 예약할 능력도 없으며, 이전 작업과 관련하여 신호와 소음을 구별하는 메커니즘도 없습니다.
이것은 모델 지능의 한계가 아닙니다. 아키텍처 (Architecture)의 한계입니다. 그리고 이 점이 결정적인 차이입니다. 왜냐하면 아키텍처는 엔지니어링을 통해 극복할 수 있는 대상이기 때문입니다.
첫 번째 기둥: 메모리 (Memory)
AI 시스템의 맥락에서 메모리는 단일한 개념이 아닙니다. 메모리는 세 가지 뚜렷한 수준에서 작동하며, 각 수준은 서로 다른 특성과 실질적인 함의를 가집니다.
인컨텍스트 메모리 (In-context memory) — 인간이 활발한 작업 중에 머릿속에 담아두는 것과 유사한 모델의 작업 메모리 (Working memory)라고 생각하십시오 — 는 현재 컨텍스트 윈도우 (Context window) 안에 있는 모든 것, 즉 당신의 프롬프트, 이전 메시지, 붙여넣은 모든 문서 등을 의미합니다. 이는 빠르고 즉각적으로 사용 가능하지만, 세션이 종료되는 순간 사라집니다. 또한 컨텍스트 윈도우에는 엄격한 크기 제한이 있습니다. 6개월 치의 연구 아카이브를 활성 작업 메모리에 담아둘 수는 없습니다.
외부 메모리 (External memory) 는 모델 외부에 저장되어 관련이 있을 때 검색되는 정보, 즉 벡터 데이터베이스 (Vector databases), 구조화된 지식 저장소 (Structured knowledge stores), 문서 저장소 (Document repositories) 등을 의미합니다. 이것이 바로 프로덕션 AI 시스템이 장기 기억 (Long-term recall)과 유사한 기능을 구현하는 방식입니다. 모델은 인간처럼 "기억"하는 것이 아니라 "검색 (Retrieve)"합니다. 잘 설계된 검색 시스템은 적절한 순간에 적절한 문서를 표면으로 끌어올려, 모델이 지속적인 지식을 가진 것처럼 보이게 만듭니다.
파라메트릭 메모리 (Parametric memory) 는 훈련 과정에서 모델의 가중치 (Weights)에 내장되는 것으로, 모델의 공장 출고 시 설치된 일반 지식과 같습니다. 사람들이 모델이 무언가를 "안다"고 말할 때 보통 의미하는 것이 바로 이것입니다. 이를 변경하려면 비용이 많이 드는 재훈련 (Retraining)이나 미세 조정 (Fine-tuning)이 필요하며, 런타임 (Runtime) 중에 형태를 바꿀 수 없습니다. 당신이 할 수 있는 일은 인컨텍스트 학습 (In-context learning)과 검색을 통해 이를 덮어쓰거나 보완하는 것이며, 이것이 바로 나머지 두 가지 메모리 유형이 존재하는 목적입니다.
Lilian Weng의 널리 인용되는 LLM 기반 에이전트 아키텍처 개요인 LLM Powered Autonomous Agents는 이 분류 체계를 명확하게 제시했습니다: 인컨텍스트(in-context)는 단기 메모리(short-term)로, 외부 벡터 저장소(external vector stores)는 장기 메모리(long-term)로, 그리고 파라메트릭(parametric)은 기초적인 기질(foundational substrate)로 정의했습니다. 이 프레임워크는 여전히 유효합니다. 2023년 이후 변화된 점은 외부 메모리 구현의 정교함입니다. 이제 에이전트는 단순히 모든 것을 무차별적으로 추가하는 대신, 메모리에 선택적으로 기록하고, 오래된 정보를 가지치기(prune)하며, 저장된 사실 간의 충돌을 해결합니다.
구체적인 예시: 주간 경쟁사 요약 보고서
당신이 세 개의 경쟁 SaaS 제품을 모니터링하고 팀을 위해 매주 내부 요약 보고서를 작성하는 콘텐츠 전략가라고 가정해 봅시다.
메모리 인프라가 없다면, 매주 월요일은 똑같이 반복됩니다. 새로운 채팅 창을 열고, 컨텍스트를 다시 설명하고 ("나는 A, B, C 세 곳의 경쟁사를 추적합니다. 나의 초점은 가격 책정과 기능 발표입니다."), 찾은 링크들을 붙여넣고, 요약을 요청합니다. AI는 그럴듯한 결과물을 내놓습니다. 당신은 탭을 닫습니다. 화요일이 되면 그 컨텍스트는 사라집니다. AI는 당신이 지난주에 주목할 만한 가격 이상 징후를 표시했다는 사실이나, 보도 자료는 무시하고 변경 사항(changelog) 항목에만 집중하기로 결정했다는 사실을 전혀 알지 못합니다.
최소한의 메모리라도 갖춰져 있다면 — 당신의 고정된 컨텍스트를 포함하는 저장된 프롬프트 템플릿(prompt template)과 지난주부터 이어온 메모 파일(running notes file)을 붙여넣는 방식만으로도 — 역학 관계가 바뀝니다. AI는 이미 세 명의 경쟁사, 당신의 필터 기준, 그리고 당신이 지난주에 내린 결론을 알고 있습니다. 세션은 1단계가 아닌 4단계부터 시작됩니다. 8주 동안 이렇게 회복된 시간은 복리로 쌓여 몇 시간의 절약으로 이어집니다. 더 중요한 것은, 이제 AI가 "이번 주 경쟁사 B의 변경 사항 항목은 당신이 3주 차에 지적했던 가격 격차에 대한 직접적인 대응으로 보입니다"와 같은 말을 할 수 있다는 점입니다. 이는 이전 컨텍스트가 존재하기 때문에에만 가능한 연결입니다.
그것이 바로 메모리가 변화시키는 지점입니다. 마법이 아닙니다. 단지 과거에는 인간이 직접 짊어져야 했던 '연속성 (Continuity)'을 제공하는 것입니다.
메모리가 실제로 당신에게 변화시키는 것
메모리의 실질적인 함의는 연속성입니다. 잘 설계된 메모리를 갖춘 AI 시스템은 중단된 지점부터 프로젝트를 다시 시작할 수 있고, 시간이 지나도 당신의 선호도와 제약 사항에 대한 일관된 모델을 유지하며, 이미 설정된 컨텍스트를 다시 설명해야 하는 번거로움을 피할 수 있습니다.
메모리가 없다면, 당신이 외부 메모리 역할을 해야 합니다. 당신이 직접 이전 컨텍스트를 붙여넣고, 목표를 다시 설명하며, 지난 세션에서 무엇이 결정되었는지 추적해야 합니다. 이러한 인지적 부하 (Cognitive overhead)는 실재하며, AI와의 작업이 복잡해질수록 효율성이 급격히 떨어집니다.
저자의 의견: 제가 사람들의 AI 설정에서 가장 흔히 보는 투자 부족 사례는 바로 메모리입니다. 사람들은 매주 실행할 작업에 대해 완벽한 프롬프트를 만드느라 몇 시간을 소비하지만, 정작 다음 주에는 그 프롬프트가 어떻게 작동했는지, 무엇이 효과적이었는지에 대한 기록도 없이 똑같은 프롬프트를 처음부터 다시 실행합니다. 템플릿을 저장하고 버전을 관리하는 프롬프트 관리자 (Prompt manager)는 화려하지는 않지만, 바로 여기서 복리 효과가 시작됩니다.
이러한 격차 — 즉, 인간 계층의 메모리 문제 — 가 바로 Prompt Vault의 설계를 형성한 핵심입니다. 그 이면의 생각은 단순했습니다. 대부분의 사람들은 아직 AI가 자신의 프로젝트를 기억해 주기를 필요로 하지 않습니다. 그들에게 필요한 것은 브라우저 방문 기록 속으로 최고의 프롬프트 작업물을 잃어버리지 않도록 '자기 자신'이 노력하는 것입니다. Prompt Vault는 변수 슬롯과 원클릭 복사 기능을 갖춘 로컬 기반의 브라우저용 프롬프트 관리자입니다. 이는 AI 메모리 인프라를 대체하는 것이 아니라, 어떤 AI 메모리 시스템이라도 더 유용하게 만들어 주는 개인 계층의 토대입니다. 만약 당신이 가장 효과적인 프롬프트 템플릿을 나중에 다시 불러올 수 있는 어딘가에 저장해 두지 않았다면, 당신은 매번 처음부터 다시 구축하고 있는 셈입니다.
두 번째 기둥: 계획 (Planning)
계획은 AI 시스템의 아키텍처가 채팅 인터페이스가 암시하는 것과는 확연히 달라지기 시작하는 지점입니다.
모델에게 질문이 아닌 하나의 _목표 (goal)_를 부여할 때, 그 목표를 실행 가능한 단계들로 어떻게 분해할 것인가의 문제는 바로 계획 (planning) 문제입니다. 대부분의 사람들은 모델이 단 한 번의 패스 (single pass)를 통해 이를 암묵적으로 처리하도록 내버려 둡니다. 하지만 숙련된 사용자들은 계획 프로세스를 명시적으로 설계합니다.
이 차이는 매우 중요한데, 계획의 품질이 이후의 모든 과정을 결정하기 때문입니다. 제대로 분해되지 않은 계획은 기술적으로는 맞지만 구조적으로는 틀린 결과물을 만들어냅니다. 즉, 실제 의도와는 약간 다른 질문에 답하거나, 실제 의존 관계 (dependencies)와 맞지 않는 순서로 작업을 수행하게 됩니다.
선형 체인에서 계층적 계획으로 (From Linear Chains to Hierarchical Planning)
초기 에이전트 시스템은 선형 계획 (linear planning)을 사용했습니다. 이는 작업을 순차적인 목록으로 분해하여 단계별로 실행하는 방식입니다. 간단한 워크플로 (workflow)에는 효과적이지만, 다음 단계가 이전 단계에서 무엇을 발견했느냐에 따라 달라지는 작업에서는 실패합니다.
더 견고한 계획 아키텍처 (architectures)는 계획을 목록이 아닌 _트리 (tree)_로 취급합니다. 각 노드 (node)에서 모델은 여러 가지 후보 다음 행동을 평가하고, 가장 유망한 브랜치 (branch)를 탐색하며, 경로가 비효율적이라고 판단되면 되돌아가는 백트래킹 (backtrack)을 수행할 수 있습니다. 이는 계산 비용이 더 많이 들지만, 진정한 불확실성이나 모호함이 포함된 작업—즉, 대부분의 지식 노동—에서 훨씬 더 높은 신뢰성을 보여줍니다.
단순한 작업 분해와 계획을 구분 짓는 두 번째 메커니즘은 **자기 성찰 (self-reflection)**입니다. 성찰 루프 (reflection loop)를 가진 에이전트는 단순히 계획을 실행하는 데 그치지 않습니다. 현재의 궤적이 실제로 목표를 향해 가고 있는지 주기적으로 평가하고 조정합니다. 이것이 바로 에이전트가 작업 도중에 자신의 오류를 포착하여, 마지막에 자신 있게 틀린 결과를 내놓는 대신 올바른 방향으로 수정할 수 있게 만드는 메커니즘입니다.
구체적인 예시: 동일한 작업, 두 가지 계획
다시 콘텐츠 전략가(content strategist)의 사례로 돌아가 보겠습니다. 그녀는 AI에게 주간 요약본(weekly digest)을 작성하라고 요청합니다.
명시적인 계획 (explicit planning) 없이, 프롬프트는 다음과 같습니다: "이번 주 경쟁사 A, B, C의 새로운 소식을 요약해줘." AI는 무엇이 "새로운 것"인지, 어느 정도의 상세 수준을 포함할지, 경쟁사별로 그룹화할지 아니면 주제별로 그룹화할지, 언제 멈출지 등 스스로 암묵적인 결정을 내립니다. 계획이 암묵적이고 일관되지 않기 때문에 출력 결과는 매주 달라집니다. 어떤 때는 포괄적이고, 어떤 때는 피상적입니다.
명시적인 계획을 포함하면, 프롬프트가 분해(decomposition) 과정을 미리 구조화합니다:
1. 각 경쟁사에 대해, 지난 7일 동안의 변경 로그(changelog) 항목과 가격 페이지 변경 사항만 식별할 것. 블로그 게시물과 보도 자료는 무시할 것.
2. 발견된 각 항목에 대해 한 문장으로 작성할 것: 무엇이 변했는지, 그리고 그것이 무엇을 시사할 수 있는지.
...
목표는 동일합니다. 두 번째 버전은 매주 일관되고 파싱 가능한 (parseable) 출력을 생성합니다. 왜냐하면 무엇을 볼지, 어떻게 평가할지, 어떤 형식을 사용할지, 언제 멈출지와 같은 계획 결정 사항들이 모델의 즉각적인 판단에 위임된 것이 아니라, 인간에 의해 사전에 이루어졌기 때문입니다.
이것이 바로 "계획 프로세스를 명시적으로 설계(engineering)한다"는 것의 실질적인 의미입니다.
실전 계획: 당신이 제어할 수 있는 것
더 나은 계획의 이점을 얻기 위해 트리 탐색 (tree search) 알고리즘을 구현할 필요는 없습니다. 당신이 제어할 수 있는 것은 시작 단계에서 목표 구조를 얼마나 명확하게 지정하는지, 그리고 모델이 자신의 계획 프로세스를 명시적으로 만들도록 요구할지 여부입니다.
"경쟁 분석을 작성해줘"라고 말하는 프롬프트와, "먼저 비교할 세 명의 경쟁사를 식별하고, 그다음 네 가지 평가 차원을 정의한 뒤, 각 차원에 대해 각 경쟁사를 독립적으로 평가하고, 마지막으로 패턴을 종합해줘"라고 말하는 프롬프트의 차이는 바로 계획의 차이입니다. 두 번째 프롬프트는 분해 과정을 미리 구조화하여, 모델의 실행이 각 단계에서 더욱 신뢰할 수 있게 만듭니다.
이것은 복잡한 작업을 위해 프롬프트 체이닝 (prompt chaining)이 오버헤드를 감수할 만큼 가치 있는 이유와 동일한 논리입니다. 즉, 모델이 계획을 올바르게 추론하기를 기대하는 대신, 계획 구조를 외부화하는 것입니다. 프롬프트 체인의 각 단계는 사용자가 명시적으로 내린 계획 결정입니다.
더 길고 자율적인 워크플로우(workflows)의 경우, 계획 요구 사항은 더욱 깊어집니다. 적절한 중단 조건(stopping conditions)과 실패 처리(failure handling)를 갖추고, 여러 단계에 걸쳐 계획 및 재계획(replans)을 수행하는 AI 시스템을 프롬프트하기 위해 무엇이 필요한지에 대한 이해는 자율 AI 에이전트를 위한 프롬프트 엔지니어링 플레이북 (Prompt Engineering Playbook for Autonomous AI Agents)에서 자세히 다룹니다.
실질적인 함정: 가장 흔한 계획 실수는 모호한 종료 조건(terminal conditions)입니다. "분석을 완료하세요"는 종료 조건이 아닙니다. "경쟁사당 한 행, 사전 정의된 평가 차원당 네 개의 열을 가진 구조화된 비교 표를 생성하세요"가 종료 조건입니다. 정확한 종료 조건이 없는 에이전트는 불안해하는 완벽주의자처럼 행동합니다. 너무 일찍 작업을 마무리하고 미완성 초안을 "완료"라고 부르거나, 이미 세 번의 반복 전에도 충분했던 결과물을 계속 다듬으며 토큰을 낭비하고 더 나은 결과물도 내놓지 못합니다. 에이전트가 시작하기 전에 "완료"가 어떤 모습인지 명시하세요. 느낌이 아니라, 통과하거나 실패할 수 있는 테스트처럼 작성하십시오.
세 번째 기둥: 도구 (Tools)
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기