KSCOLD LogoKSCOLD
Blog
Feed
Product
Admin Night
Vault
Guestbook
Info

Vault 목록

LangGraph Edge

연결된 노트와 함께 읽기

LangGraph Edge

2026년 7월 16일

LangGraph Edge

정의

Edge는 LangGraph에서 노드 간 실행 순서를 정의하는 연결선이다.

Python

위 코드는 다음 흐름을 만든다.

Mermaid스크롤로 확대 · 드래그로 이동

START와 END

START는 그래프의 시작점이다.

END는 그래프의 종료점이다.

Python

이 둘은 실제 작업 노드라기보다, LangGraph가 실행 흐름을 이해하기 위한 특수 노드이다.

고정 Edge

고정 Edge는 항상 같은 다음 노드로 이동한다.

Python

이 경우 retrieve가 끝나면 무조건 generate가 실행된다.

여러 개의 시작 Edge

START에서 여러 노드로 edge를 연결할 수도 있다.

Python

이 구조는 하나의 입력에서 여러 작업으로 퍼지는 fan-out이다.

Mermaid스크롤로 확대 · 드래그로 이동

이후 여러 노드를 하나의 노드로 합칠 수도 있다.

Python

이 구조는 fan-in이다.

Mermaid스크롤로 확대 · 드래그로 이동

관련: Parallel Agent Fan-out

조건부 Edge

조건부 Edge는 State를 보고 다음 노드를 결정한다.

Python

예를 들어 LLM 응답에 tool call이 있으면 tool 노드로 가고, 없으면 종료할 수 있다.

Mermaid스크롤로 확대 · 드래그로 이동

조건부 Fan-out

조건부 Edge의 라우터는 노드 하나가 아니라 여러 노드 이름을 반환할 수도 있다.

Python
Mermaid스크롤로 확대 · 드래그로 이동
  • 이 구조는 LangGraph Conditional Fan-out이다.
  • found=True이면 DB/CSV 노드가 함께 실행된다.
  • found=False이면 Web 노드만 실행된다.

예시 코드 의미

Python

그래프가 시작되면 retrieve부터 실행한다.

Python

retrieve가 context를 만든 뒤 generate를 실행한다.

Python

generate가 answer를 만든 뒤 그래프를 종료한다.

한 줄 정리

Edge는 LangGraph에서 "어떤 노드 다음에 어떤 노드를 실행할지"를 정하는 연결 규칙이다.

관련:

  • LangGraph StateGraph
  • LangGraph Node
  • LangGraph START
  • LangGraph END
  • Routing Workflow
  • Parallel Agent Fan-out
  • LangGraph Conditional Fan-out

Synapse Map Insight

builder.add_edge(START, "retrieve") builder.add_edge("retrieve", "generate") builder.add_edge("generate", END)
from langgraph.graph import START, END
builder.add_edge("retrieve", "generate")
builder.add_edge(START, "news_agent") builder.add_edge(START, "stock_agent")
builder.add_edge("news_agent", "reporter") builder.add_edge("stock_agent", "reporter")
builder.add_conditional_edges("chatbot", tools_condition)
def route(state): if state["found"]: return ["db_agent", "csv_agent"] return ["web_agent"] builder.add_conditional_edges( "entry", route, ["db_agent", "csv_agent", "web_agent"], )
builder.add_edge(START, "retrieve")
builder.add_edge("retrieve", "generate")
builder.add_edge("generate", END)