강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

이정호님의 프로필 이미지
이정호

작성한 질문수

[4주 과정] 『AI 에이전트 엔지니어링』완독 챌린지

[화] CHAPTER 1 에이전트 (p.47 ~ p.63)

2강 그래프 생성 문의드립니다.

해결된 질문

작성

·

29

0

python ch02/simple_customer_support_agent.py

실행 시, 저는 graph 가 저장되지 않았습니다.
graph를 저장하려면 코드를 어떻게 수정해야 할까요?

답변 1

0

민혁님의 프로필 이미지
민혁
지식공유자

안녕하세요, 이정호 님.

“그래프가 저장되지 않았다”는 말씀은 구체적으로 어떤 그래프를 뜻하시는 건가요?

혹시 동영상 강의에서 예시로 보여드린 이미지(설명용으로 생성한 그래프)를 말씀하시는지 확인 부탁드립니다.

해당 이미지는 강의 설명을 위해 생성한 것으로, 별도 저장 코드가 필요합니다.

상세히 알려주시면 빠르게 확인해서 안내해드리겠습니다.

감사합니다.

이정호님의 프로필 이미지
이정호
질문자

네, 맞습니다!

하습시 graph도 생성해서 확인할 수 있으면 이해에 도움이 될 것 같습니다!

if __name__ == "__main__":
    # 그래프 시각화 (Mermaid 텍스트를 파일로 저장)
    mermaid_text = graph.get_graph().draw_mermaid()
    with open("ch02/graph.md", "w", encoding="utf-8") as f:
        f.write(mermaid_text)
    print("그래프 시각화 저장 완료: ch02/graph.md")

    example_order = {"order_id": "B73973"}
    convo = [HumanMessage(content="주문 #B73973를 취소해주세요.")]
    result = graph.invoke({"order": example_order, "messages": convo})
    for msg in result["messages"]:
        print(f"{msg.type}: {msg.content}")

위 코드처럼 Mermaid를 이용해 그래프를 시각화한 다음
mermaid.live 에 붙여넣기 하면 시각화된 그래프를 얻을 수 있습니다.

(패키지 설치 x)

또는 .ipynb 에서 컴파일한 그래프를 호출해주면 됩니다.

# 예시
graph = graph_builder.compile()

graph
image.png

민혁님의 프로필 이미지
민혁
지식공유자

김정목님이 잘 답변해주셨지만, 바로 저장이 되게 하는 방법이 있어서 함께 말씀드립니다.

이번 도서 코드를 보시면 보통 graph.invoke() 가 있는데요. 해당 코드가 있는 위치 아래에 다음 코드를 입력하시면 이미지가 저장됩니다.

 

import os

png_bytes = graph.get_graph().draw_mermaid_png()

script_base = os.path.splitext(os.path.basename(__file__))[0]  # 예: langgraph_example
out_path = os.path.join(os.getcwd(), f"{script_base}.png")      # 예: <CWD>/langgraph_example.png

with open(out_path, "wb") as f:
    f.write(png_bytes)

print(f"그래프 이미지 저장: {out_path}")

감사합니다.

이정호님의 프로필 이미지
이정호

작성한 질문수

질문하기