랭그래프

소개

랭그래프는 여러 AI 에이전트와 언어 모델의 작업 흐름을 그래프 구조로 설계할 수 있게 돕는 프레임워크입니다. 랭체인에서 한 단계 더 나아가, 단순한 순차 처리 뿐 아니라 순환, 분기, 재시도와 같은 복잡한 상호작용까지 구조화된 방식으로 구현할 수 있도록 돕습니다.

랭그래프의 개념은 수학의 그래프 이론에서 가져온 것입니다. 즉, 각 작업 또는 작업을 처리하는 객체를 노드(Node)로, 그리고 노드 간의 연결 즉 작업의 흐름을 엣지(Edge)로 표현한는 방식입니다.

이를 통해 언어 모델이 어떤 순서로 작업하고, 어떤 조건에서 어떻게 행동하고 판단하여 작업을 처리하고 다음 단계로 넘어갈지를 명확하게 정의하여, 복잡하고 큰 규모의 LLM 중심의 서비스를 구축할 수 있습니다.

  • LLM 중심의 AI 서비스를 편하게 구축할 수 있게 도와주는 프레임워크
  • 수학의 그래프 이론처럼 노드(Node), 엣지(Edge) 로 서비스 구조를 설계
  • 순환, 분기 등 복잡하고 고도화된 AI 서비스를 구축하는 데 최적

랭체인과의 차이

항목 랭체인(LangChain) 랭그래프(LangGraph)
핵심 목적 LLM 기반 기능을 체인 형태로 빠르게 구성 복잡한 에이전트 흐름을 그래프 형태로 설계, 제어
구조 주로 순차적 체인 중심 노드 및 엣지 기반의 상태 그래프
흐름 제어 단순 연결에 강함 조건 분기, 반복, 되돌아가기, 멀티스텝 제어에 강함
상태 관리 상대적으로 단순 상태(State)를 명시적으로 관리
적합한 사용처 챗봇, RAG, 요약, 질의응답, 간단한 툴 호출 멀티에이전트, 복잡한 의사결정, 긴 실행 흐름
에이전트 구현 가능하지만 복잡해질수록 관리가 어려움 에이전트 워크플로우 구현에 최적화
제어권 추상화가 높아 빠르게 개발 가능 더 세밀한 제어 가능
학습 난이도 비교적 쉬움 개념이 더 많아 상대적으로 높음
대표 비유 “함수를 순서대로 연결한 파이프라인” “상태 머신이 있는 워크플로우 엔진”

랭그래프를 사용하는 이유

  1. 복잡한 워크플로우 구현 : 단순한 호출 체인을 넘어 조건 분기, 반복(순환), 자체적인 상황 판단에 따른 작업 수행 구조 등을 구현할 수 있음
  2. 상태와 메모리 관리 : 상태(state) 중심으로 설계되어, 멀티턴 대화 및 중간결과나 장,단기 메모리 등을 체계적으로 관리하기 쉬운 구조
  3. 확장성 : 하나의 그래프를 다른 그래프의 노드처럼 넣는 “서브그래프” 구조를 통해 각 그래프를 모듈처럼 조립하는 확장이 가능
  4. 중단 지점에서 재실행 : 장애지점 또는 사람의 개입이 필요한 시점에 워크플로를 중단했다가, 나중에 중단 지점부터 재실행이 가능

Reference

Do it! LLM을 활용한 AI 에이전트 개발 입문 (이성용 저)

https://docs.langchain.com/oss/python/langgraph/durable-execution

https://wikidocs.net/261584

Comments