LangGraph 개요
LangGraph 개요 (LangGraph overview)
에이전트를 만들다 보면 "결정적 코드와 LLM이 판단하는 부분을 한 곳에서 관리하고 싶다"는 요구가 생겨요. LangGraph 는 오래 실행되는 상태를 가진 에이전트를 만들고 관리·배포하기 위한 저수준 오케스트레이션 프레임워크예요. 결정적인 수동 단계와 LLM 주도 단계를 같은 그래프에 섞어, 애플리케이션이 요구하는 대로 동작하는 맞춤형 에이전트를 만들 수 있게 해 줘요.
무엇에 특화되어 있나
LangGraph는 에이전트 오케스트레이션(orchestration) 에만 집중한 아주 저수준의 프레임워크예요. 모델과 도구 같은 에이전트 구성 요소에 익숙해진 뒤 쓰는 걸 권장해요. 문서에서는 LangChain 컴포넌트로 모델·도구를 통합하지만, LangGraph를 쓰기 위해 LangChain이 꼭 필요하진 않아요.
LangGraph와 관련된 LangChain 제품군의 역할은 이렇게 나뉘어요.
- Deep Agents: plan·서브에이전트·파일시스템 도구·컨텍스트 관리를 LangGraph 위에 얹은 에이전트 하네스.
- LangChain: 모델·도구·에이전트 루프를 위한 추상화와 통합을 제공하는 에이전트 프레임워크.
- LangGraph: durable execution, 스트리밍, 휴먼-인-더-루프, 영속성을 담당하는 오케스트레이션 런타임.
- LangSmith: 추적·평가·프롬프트·배포를 위한 플랫폼.
핵심 이점
LangGraph는 프롬프트나 아키텍처를 추상화하지 않고, 오래 실행되는 상태 있는 워크플로에 필요한 저수준 인프라를 제공해요.
- 결정적 단계와 에이전트 단계 혼합: 신뢰성·예측성이 필요한 곳엔 수동 결정 로직을, 유연성이 필요한 곳엔 LLM 판단을 같은 그래프에 배치해 에이전트 동작을 정밀하게 제어할 수 있어요.
- 영속성(Persistence): 실패를 견디며 오래 실행되고, 중단한 지점부터 정확히 재개할 수 있어요.
- 휴먼-인-더-루프: 실행 중 아무 시점에든 인간이 상태를 확인·수정할 수 있게 해 줘요.
- 포괄적 메모리: 짧은 기간의 작업 메모리와 세션을 넘는 장기 메모리를 모두 갖춘 상태 있는 에이전트를 만들 수 있어요.
- 프로덕션 배포: 상태 있고 오래 실행되는 워크플로의 특수한 요구를 처리하도록 설계된 확장 가능한 인프라로 배포할 수 있어요.
감사(Acknowledgements)
LangGraph는 Google의 Pregel 과 Apache Beam 에서 영감을 얻었고, 공개 인터페이스는 NetworkX 에서 영감을 받았어요. LangChain Inc가 만들었지만 LangChain 없이도 쓸 수 있어요.