LangGraph 실전 예제: 간단한 AI 챗봇 흐름 만들기 (초보자 가이드)

LangGraph 실전 예제: 간단한 AI 챗봇 흐름 만들기 (초보자 가이드)

LangGraph의 개념을 이해했다면, 이제 실제로 어떻게 사용하는지 확인해보는 것이 중요합니다.

이번 글에서는 LangGraph를 활용한 간단한 AI 챗봇 흐름을 초보자도 이해할 수 있도록 단계별로 설명해보겠습니다.

복잡한 기능이 아니라 기본 구조를 이해하는 데 집중합니다.

이번 예제에서 만들 것

아래와 같은 간단한 흐름을 만들어보겠습니다.

사용자 질문 → 처리 → 답변 생성

이 구조는 LangGraph의 기본 개념을 이해하기에 가장 좋은 예제입니다.

전체 구조 이해하기

이번 예제에서는 다음 3가지 요소를 사용합니다.

  • Node → 작업 수행
  • Edge → 흐름 연결
  • State → 데이터 전달

이 세 가지를 연결하면 하나의 AI 흐름이 완성됩니다.

Python 코드 예제

from langgraph.graph import StateGraph
from typing import TypedDict

# 상태 정의
class State(TypedDict):
    input: str
    output: str

# 노드 정의
def chatbot_node(state: State):
    user_input = state["input"]
    return {"output": f"AI 응답: {user_input}"}

# 그래프 생성
graph = StateGraph(State)

# 노드 추가
graph.add_node("chatbot", chatbot_node)

# 시작 → 노드 연결
graph.set_entry_point("chatbot")

# 그래프 컴파일
app = graph.compile()

# 실행
result = app.invoke({"input": "안녕하세요"})
print(result)

코드 쉽게 이해하기

코드를 하나씩 나눠서 보면 이해하기 쉽습니다.

1. State 정의

State는 입력과 출력을 저장하는 공간입니다.

  • input → 사용자 질문
  • output → AI 응답

2. Node 정의

chatbot_node는 실제 작업을 수행하는 함수입니다.

입력을 받아서 결과를 생성하는 역할을 합니다.

3. Graph 구성

StateGraph를 사용해서 전체 흐름을 구성합니다.

  • 노드 추가
  • 시작 지점 설정

4. 실행

invoke()를 사용해서 입력을 전달하면 전체 흐름이 실행됩니다.

흐름을 그림으로 보면

[입력] → [chatbot Node] → [출력]

이처럼 매우 단순한 구조지만, LangGraph의 핵심 개념이 모두 포함되어 있습니다.

이 구조를 확장하면?

이 기본 구조에 기능을 추가하면 더 복잡한 시스템을 만들 수 있습니다.

  • 검색 기능 추가
  • 조건 분기 추가
  • 여러 Node 연결

이렇게 확장하면 AI Agent 형태로 발전할 수 있습니다.

초보자가 꼭 이해해야 할 포인트

이 예제에서 가장 중요한 것은 아래 3가지입니다.

  • Node는 작업을 수행한다
  • State는 데이터를 전달한다
  • Graph는 흐름을 만든다

이 개념만 이해하면 LangGraph를 활용할 준비가 된 것입니다.

마무리

LangGraph는 처음에는 어렵게 느껴질 수 있지만, 이처럼 간단한 예제부터 시작하면 쉽게 이해할 수 있습니다.

기본 구조를 이해한 뒤에는 기능을 하나씩 추가하면서 더 복잡한 흐름을 만들어보는 것이 좋습니다.

다음 단계에서는 AI Agent 구조를 기반으로 자동화 시스템을 만드는 방법을 소개해보겠습니다.

AI 개발을 시작했다면 LangGraph 실습을 통해 직접 흐름을 만들어보는 것을 추천드립니다.

Comments

Popular posts from this blog

Embedding이란 무엇인가? (AI에서 텍스트를 숫자로 바꾸는 핵심 기술)

Vector DB란 무엇인가? (AI 시대 필수 데이터베이스 쉽게 이해하기)

AI로 하루 10개 블로그 글 자동 작성하는 방법 (완전 자동화 시스템 만들기)