Articlelangchain.com·2026년 8월 25일·0

Plan-and-Execute Agents

Quick Summary

LangChain의 Plan and Execute는 복잡한 장기 과제를 위해 계획과 실행을 분리한 실험적 에이전트 구조로, 신뢰성 향상을 기대하지만 언어 모델 호출 증가와 검증 부족이라는 한계가 있다.

Plan-and-Execute Agents 관련 대표 이미지

🖼️ 인포그래픽

Plan-and-Execute Agents 내용을 설명하는 본문 이미지

🖼️ 4컷 인포그래픽

Plan-and-Execute Agents의 핵심 내용을 4단계로 요약한 인포그래픽
Plan-and-Execute Agents 핵심 내용을 4단계로 압축한 4컷 인포그래픽

💡 한 줄 요약

LangChain의 Plan-and-Execute는 복잡한 장기 과제를 위해 계획과 실행을 분리한 실험적 에이전트 구조로, 신뢰성 향상을 기대하지만 언어 모델 호출 증가와 검증 부족이라는 한계가 있다.

📌 핵심 요약

  • LangChain은 2023년 5월 10일 BabyAGI와 Plan-and-Solve 논문에서 영감을 받은 Plan-and-Execute를 소개하고, 빠른 변경을 예상해 초기 버전을 실험 모듈에 배치했다.
  • 기존 Action 에이전트는 도구 선택·실행·관찰을 반복하며, 목표 복잡화와 신뢰성 요구 증가에 따라 과거 이력과 도구 사용 지침이 늘어나 프롬프트가 커지는 문제를 겪는다.
  • Python과 TypeScript로 구현된 Plan-and-Execute는 계획기가 단계 목록을 만들고 실행기가 각 단계를 수행하는 구조이며, 초기 실행기는 Action 에이전트다.
  • 계획과 실행의 분리는 각 역할의 신뢰성 향상과 소형 미세조정 모델로의 교체를 기대하게 하지만, 언어 모델 호출 횟수가 크게 늘어나는 단점이 있다.
  • 초기 구현은 이전 단계를 목록으로 전달하고 최초 계획을 재검토하지 않으며 단일 실행 체인을 사용한다. 벡터 저장소 활용, 계획 수정, 실행 체인 선택, 엄밀한 평가는 향후 과제다.

🧩 주요 포인트

  1. 목표 복잡화와 도구 사용 지침 증가 → Action 에이전트의 프롬프트 부담이 커져 상위 계획과 단기 실행을 분리할 필요성이 제기된다.
  2. 계획기와 Action 실행기의 역할 분담 → 기존 도구 실행 방식을 활용하면서 구성 요소별 전문화와 소형 미세조정 모델 적용 가능성을 연다.
  3. 언어 모델 호출 증가와 검증 부족 → 신뢰성·비용 개선을 확정할 수 없으며, 계획 수정과 엄밀한 평가가 구조의 효용을 판단하는 주요 과제로 남는다.

🧠 상세 정리

1. 새로운 에이전트 구조의 제안

LangChain 팀은 2023년 5월 10일 새로운 에이전트 실행 방식인 Plan-and-Execute를 소개했다. 기존에 지원하던 방식을 Action 에이전트라고 부르고, 새 방식은 먼저 계획을 세운 뒤 단계별로 실행한다는 점으로 구분했다. 이 제안은 BabyAGI와 Plan-and-Solve 논문에서 큰 영향을 받았으며, 복잡한 장기 계획을 다루는 데 적합할 것으로 설명됐다. 다만 언어 모델 호출이 더 많이 필요하다는 대가도 함께 제시했다. 초기 버전은 빠른 변경이 예상되어 실험 모듈에 포함됐으므로, 글은 완성된 표준보다 발전 중인 구조를 소개하는 성격을 갖는다.

2. 기존 Action 에이전트의 작동 방식과 부담

기존 LangChain 에이전트는 ReAct 논문이 제시한 틀을 따르며, 사용자 입력을 받으면 사용할 도구와 해당 도구의 입력을 결정한다. 도구 실행 결과를 관찰값으로 기록하고, 도구·입력·관찰의 이력을 다시 받아 다음 행동을 선택한다. 이 과정은 도구가 더 필요하지 않다고 판단하고 사용자에게 직접 답할 때까지 반복된다. 사용자 목표가 복잡해지면 최종 목표를 유지하고 이전 단계를 추론하기 위해 더 많은 과거 이력이 필요해진다. 동시에 운영 환경에서 신뢰성을 높이려는 개발자들은 도구 사용 지침을 추가한다. 글은 이 두 흐름이 프롬프트 크기를 빠르게 늘려 많은 언어 모델에서 문제를 일으킨다고 설명한다.

3. 계획기와 실행기로 나누는 구현

Plan-and-Execute의 핵심 절차는 수행할 단계를 먼저 계획하고, 각 단계에 적합한 도구나 행동을 차례로 결정하는 것이다. Python과 TypeScript 구현은 이를 계획기와 실행기라는 두 구성 요소로 나눈다. 계획기는 언어 모델의 추론 능력을 활용해 해야 할 일을 정하고 모호함과 예외 상황을 다루며, 출력 파서를 붙여 결과를 단계별 문자열 목록으로 변환할 수 있다. 초기 실행기는 Action 에이전트로 구현됐다. 실행기는 전체 계획 중 하나의 단계를 목표로 받아 필요한 도구를 선택하며, 해당 목표를 달성하기 위해 한 번 또는 여러 번의 행동을 수행할 수 있다.

4. 역할 분리의 기대 효과와 호출 비용

계획과 실행을 분리하면 한 언어 모델은 계획에 집중하고 다른 언어 모델은 실행에 집중할 수 있다. 글은 이러한 역할 분담이 양쪽의 신뢰성을 높이는 데 도움이 될 것으로 설명한다. 또한 구성 요소가 분리되어 있으면 향후 각각을 더 작은 미세조정 모델로 교체하기 쉬워진다. 반면 이 구조의 주요 단점은 언어 모델 호출이 훨씬 많아진다는 것이다. 저자들은 역할별로 더 작고 빠르며 저렴한 모델을 활용할 가능성에 기대를 표시하지만, 실제 비용 절감이나 신뢰성 향상을 입증한 결과를 제시하지는 않는다. 따라서 구조적 장점과 실증된 성능은 구분해서 읽어야 한다.

5. 긴 단계 이력과 계획 재검토

향후 개선 방향 중 하나는 긴 단계 시퀀스를 더 잘 지원하는 것이다. 초기 구현은 이전 단계를 목록으로 전달하지만, 계획이 길어질수록 중간 단계를 벡터 저장소에 보관하고 검색하는 방식이 필요해질 것으로 제안한다. 또 다른 과제는 실행 도중 계획을 다시 검토하는 기능이다. 당시 구현은 시작할 때 한 번 계획을 세우고 이후에는 이를 재검토하지 않는다. 글은 매 단계 또는 필요할 때 계획을 조정하는 장치를 검토할 수 있다고 설명한다. BabyAGI는 이미 중간 단계 저장에 벡터 저장소를 사용하고 반복마다 계획을 재검토하므로, 두 개선 방향의 참고 사례로 제시된다.

6. 평가 강화와 실행 체인 선택

글은 제안된 개선의 상당수가 이론적이거나 적어도 벤치마크로 검증되지 않았다고 명시하며, 에이전트 구조를 더 엄밀하게 평가할 방법이 필요하다고 설명한다. Plan-and-Solve 논문은 벤치마크를 활용해 출력을 평가한 참고 사례로 언급된다. 실행 구조 측면에서는 초기 구현이 단일 실행 체인만 사용한다는 제약도 제시된다. 향후에는 웹 조사에 최적화된 체인과 분석에 최적화된 체인처럼 여러 실행 체인을 두고, 계획기가 사용할 체인을 지정할 수 있다는 구상이다. 결론에서는 BabyAGI와 Plan-and-Solve의 기여를 다시 강조하고 Python 및 자바스크립트 구현을 시험해 보도록 안내한다.

🧾 핵심 주장 / 시사점

  • Plan-and-Execute는 기존 Action 에이전트를 실행기로 활용하므로, 변화의 핵심은 도구 실행 방식의 전면 교체보다 상위 계획 역할의 분리에 있다.
  • 소형 미세조정 모델 활용은 호출 증가의 부담을 완화할 가능성으로 제시됐으며, 실제 비용과 속도 개선이 확인된 결과는 아니다.
  • 장기 과제에 대한 기대와 별개로, 초기 구현에는 계획 재검토와 긴 이력 처리의 한계가 있어 향후 개선 방향과 현재 기능을 구분해야 한다.

✅ 액션 아이템

  • Action 에이전트의 과거 이력과 도구 사용 지침 증가가 프롬프트 부담에 미치는 영향 검토.
  • Plan-and-Execute의 신뢰성 향상 가능성과 언어 모델 호출 증가에 따른 비용 부담 비교.
  • 최초 계획을 재검토하지 않는 제약과 단일 실행 체인이 복잡한 장기 과제에 미치는 영향 평가.

❓ 열린 질문

  • Plan-and-Execute의 계획과 실행 분리는 Action 에이전트보다 신뢰성을 얼마나 높이는가?
  • 소형 미세조정 모델 적용은 언어 모델 호출 증가에 따른 비용 부담을 얼마나 줄일 수 있는가?
  • 최초 계획을 재검토하지 않는 제약은 복잡한 장기 과제 수행에 어떤 영향을 미치는가?

관련 문서

공통 태그와 주제 흐름을 기준으로 같이 보면 좋은 문서를 이어서 제안합니다.