Inflearn brand logo image
Inflearn brand logo image
์ฑ„๋„ํ†ก ์•„์ด์ฝ˜

LangGraph๋ฅผ ํ™œ์šฉํ•œ LLM Agent ๊ฐœ๋ฐœ

๋Œ€๊ธฐ์—… AI Agent ๋‹ด๋‹น์ž์˜ ๋…ธํ•˜์šฐ๋ฅผ ๊ฐ€๋“ ๋‹ด์€ LangGraph. ํ˜„์—…์—์„œ ์–ป์–ด๋งž์œผ๋ฉด์„œ ์Šต๋“ํ•œ ์ง€์‹์„ ์ „๋‹ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค

Thumbnail

์ดˆ๊ธ‰์ž๋ฅผ ์œ„ํ•ด ์ค€๋น„ํ•œ
[AI ยท ChatGPT ํ™œ์šฉ, LangGraph] ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.

์ด๋Ÿฐ ๊ฑธ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์–ด์š”

  • LLM Agent

  • LLM

  • Prompt Engineering

  • Retrieval Augmented Generation(RAG)

  • AI Agent

LLM ์—์ด์ „ํŠธ ๊ฐœ๋ฐœ!
LangGraph๋กœ ๋” ์‰ฝ๊ณ  ๊ฐ•๋ ฅํ•˜๊ฒŒ



LLM ์—์ด์ „ํŠธ๋Š” ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ๋ฅผ ์ดํ•ดํ•˜๊ณ  ๋ณต์žกํ•œ ์ž‘์—…์„ ์ž๋™ํ™”ํ•˜๋ฉฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ํ•ต์‹ฌ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์—์ด์ „ํŠธ ์„ค๊ณ„์™€ ๊ตฌํ˜„ ๊ณผ์ •์€ ๊ตฌ์กฐ์ ์œผ๋กœ ๋ณต์žกํ•˜๊ณ  ๋ฐ˜๋ณต ์ž‘์—…์ด ๋งŽ์•„ ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. LangGraph๋Š” ์ด๋Ÿฌํ•œ ๊ณผ์ •์„ ๋‹จ์ˆœํ™”ํ•ด, ๊ฐ•๋ ฅํ•œ LLM ์—์ด์ „ํŠธ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€์ค๋‹ˆ๋‹ค.


์ด๋ก ์€ ์ปดํŒฉํŠธํ•˜๊ฒŒ
๋””๋ฒ„๊น…๊ณผ ์ตœ์ ํ™”๋Š” ์‹ค์ „์ฒ˜๋Ÿผ

โœ… ๋ฐฉ๋Œ€ํ•œ ๊ณต์‹๋ฌธ์„œ์—์„œ ํ•ต์‹ฌ๋งŒ!

LangGraph ๊ณต์‹๋ฌธ์„œ๋Š” ๋ฐฉ๋Œ€ํ•˜์ง€๋งŒ, ํ•„์š”ํ•œ ์ •๋ณด๋Š” ํ•œ์ •์ ์ž…๋‹ˆ๋‹ค. ํ˜„์—… ์—”์ง€๋‹ˆ์–ด์˜ ๊ฒฝํ—˜์„ ๋‹ด์•„ ์ง์ ‘ ์„ ์ •ํ•œ ์ฃผ์š” ์ปจ์…‰์œ„์ฃผ๋กœ ์ปค๋ฆฌํ˜๋Ÿผ์„ ์ค€๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค.

โœ… ํ˜„์—…์—์„œ ์“ฐ์ด๋Š” ๋ฐฉ์‹ ๊ทธ๋Œ€๋กœ!

ํ”„๋กฌํ”„ํŠธ ์ž‘์„ฑ๊ณผ ๋””๋ฒ„๊น… ๊ณผ์ •์„ ํŽธ์ง‘ ์—†์ด ๊ทธ๋Œ€๋กœ ๋ณด์—ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ฐ•์˜๋ฅผ ํ†ตํ•ด ์‹ค์ œ ์—”์ง€๋‹ˆ์–ด๋“ค์ด ์–ด๋–ป๊ฒŒ ์—๋Ÿฌ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š”์ง€ ๊ฒฝํ—˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜ ์ถ”์ฒœํ•ด์š”

LangChain ๊ฒฝํ—˜์ด ์žˆ๋Š” ๊ฐœ๋ฐœ์ž

LangChain์˜ ํ•œ๊ณ„๋ฅผ ๊ฒฝํ—˜ํ–ˆ๋‹ค๋ฉด ์ด ๊ฐ•์˜๋ฅผ ํ†ตํ•ด ์—์ด์ „ํŠธ ๊ฐœ๋ฐœ์— ๋‚ ๊ฐœ๋ฅผ ๋‹ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

LLM Agent๊ฐ€ ๊ถ๊ธˆํ•œ ๊ฐœ๋ฐœ์ž

2025 CES ์—์„œ ์—”๋น„๋””์•„ ์  ์Šจ ํ™ฉ์ด ์–ธ๊ธ‰ํ•œ Agentic AI์— ๋Œ€ํ•ด ํ˜„์—… ์ „๋ฌธ๊ฐ€๊ฐ€ ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค

๊ธฐ์ˆ  ์ฐฝ์—…๊ฐ€ ๋ฐ ์Šคํƒ€ํŠธ์—… ํŒ€

AI ๊ธฐ๋ฐ˜ ์ œํ’ˆ์ด๋‚˜ ์„œ๋น„์Šค๋ฅผ ๊ฐœ๋ฐœํ•˜๊ณ ์ž ํ•˜ํ•œ๋‹ค๋ฉด ์—์ด์ „ํŠธ ๊ฐœ๋ฐœ ์ตœ์‹  ๊ธฐ์ˆ ์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

์ˆ˜๊ฐ• ํ›„์—๋Š”

  • LangGraph์™€ LangChain์˜ ์ฐจ์ด์  ์ดํ•ด: ๋‘ ํ”„๋ ˆ์ž„์›Œํฌ์˜ ๊ตฌ์กฐ์  ์ฐจ์ด์™€ ํ™œ์šฉ ๋ฐฉ์‹์„ ํŒŒ์•…ํ•ด, ํ”„๋กœ์ ํŠธ์— ๊ฐ€์žฅ ์ ํ•ฉํ•œ ๋„๊ตฌ๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์—์ด์ „ํŠธ ์„ค๊ณ„ ๋ฐ ๊ตฌํ˜„: Retrieval ์—์ด์ „ํŠธ, Self-RAG, Corrective RAG ๋“ฑ ๋‹ค์–‘ํ•œ ์—์ด์ „ํŠธ๋ฅผ ์„ค๊ณ„ํ•˜๊ณ  ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋ณต์žกํ•œ ์›Œํฌํ”Œ๋กœ์šฐ ๊ตฌ์„ฑ: Multi-Agent ์‹œ์Šคํ…œ๊ณผ RouteLLM์„ ํ™œ์šฉํ•ด ๋ณต์žกํ•œ ์ž‘์—…์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๋„๊ตฌ ํ™œ์šฉ ๋Šฅ๋ ฅ: LangGraph ๋‚ด์—์„œ ๋‹ค์–‘ํ•œ ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์—์ด์ „ํŠธ์˜ ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•˜๊ณ , ๋ฌธ์ œ ํ•ด๊ฒฐ ๋Šฅ๋ ฅ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


์ด๋Ÿฐ ๋‚ด์šฉ์„ ๋ฐฐ์›Œ์š”

1โƒฃ ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง ์ „๋žต

๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋”๋ผ๋„ ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋ธ์— ๋”ฐ๋ผ ํ”„๋กฌํ”„ํŠธ๋ฅผ ๋‹ค๋ฅด๊ฒŒ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. LangGraph์˜ PromptTemplate๊ณผ
ChatPromptTemplate์„ ์‚ฌ์šฉํ•ด ์ƒํ™ฉ์— ๋งž๋Š” ํ”„๋กฌํ”„ํŠธ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค.

2โƒฃ LLM ์—์ด์ „ํŠธ ์ตœ์ ํ™” ๊ฟ€ํŒ

gpt-4o์™€ ๊ฐ™์€ ๋น„์‹ผ ๊ณ ๊ธ‰ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๋Š” ๋Œ€์‹ , ์ž‘์—…์„ ์ž‘์€ ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„๊ณ  gpt-4o-mini์™€ ๊ฐ™์€ ๊ฒฝ๋Ÿ‰ ๋ชจ๋ธ์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค. ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ž‘์€ ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„์–ด ๋น„์šฉ๊ณผ ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.

3โƒฃ LangGraph ๋„๊ตฌ(tool) ํ™œ์šฉ์˜ ๋ชจ๋“  ๊ฒƒ

LangChain์˜ ๊ธฐ๋ณธ ๋„๊ตฌ ํ™œ์šฉ๋ฒ•์€ ๋ฌผ๋ก , ํ•„์š”์— ๋”ฐ๋ผ ์—์ด์ „ํŠธ๊ฐ€ ์ง์ ‘ ํ™œ์šฉํ•  ์ปค์Šคํ…€ ํˆด(custom tool)์„ ๊ฐœ๋ฐœํ•ด ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค. ๋˜ํ•œ, ์‚ฌ๋žŒ์ด ์ž‘์—…์— ๊ฐœ์ž…ํ•˜๋Š” ์‹œ์Šคํ…œ(human-in-the-loop)์„ ์„ค๊ณ„ํ•ด ๋” ์‹ ๋ขฐ๋„ ๋†’์€ ์—์ด์ „ํŠธ๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๊ฐ•์˜๋ฅผ ๋งŒ๋“  ์‚ฌ๋žŒ

  • (ํ˜„) GS ๊ทธ๋ฃน GenAI Platform ๊ฐœ๋ฐœ ๋ฐ ์šด์˜

  • (์ „) ์‹œ๋ฆฌ์ฆˆ C ์˜๋ฃŒ ์ธ๊ณต์ง€๋Šฅ ์Šคํƒ€ํŠธ์—… Tech Lead

  • (์ „) ํ•ญํ•ดํ”Œ๋Ÿฌ์Šค AI ์ฝ”์Šค ์ฝ”์น˜

GS ๊ทธ๋ฃน ํ•ด์ปคํ†ค ์ฝ”์นญ๊ณผ ๋‹ค์–‘ํ•œ ํ˜„์—… ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐœ๋ฐœ/์šด์˜ํ•˜๋ฉด์„œ ์–ป์€ ๋…ธํ•˜์šฐ๋ฅผ ๋‹ด์•˜์Šต๋‹ˆ๋‹ค.

๊ถ๊ธˆํ•œ ์ ์ด ์žˆ๋‚˜์š”?

Q. LangChain๊ณผ LangGraph์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

LangChain์€ ์ฃผ๋กœ ์ฒด์ธ ํ˜•ํƒœ๋กœ ์ž‘์—…์„ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐ˜๋ฉด, LangGraph๋Š” ๊ทธ๋ž˜ํ”„ ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋” ๋ณต์žกํ•œ ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. LangGraph๋Š” ์œ ์—ฐํ•œ ๋…ธ๋“œ ์—ฐ๊ฒฐ์„ ํ†ตํ•ด ๋‹ค์–‘ํ•œ ์—์ด์ „ํŠธ ์ž‘์—…์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

Q. LangChain์„ ์ฒ˜์Œ ์ ‘ํ•˜๋Š”๋ฐ ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ•ด๋„ ๋˜๋‚˜์š”?

ํŒŒ์ด์ฌ ํ™œ์šฉ ๊ฒฝํ—˜์ด ์žˆ๋‹ค๋ฉด ๊ฐ•์˜๋ฅผ ์ˆ˜๊ฐ•ํ•˜์‹œ๋Š”๋ฐ๋Š” ๋ฌธ์ œ ์—†์ง€๋งŒ LangChain ๋ฌธ๋ฒ•์— ์ต์ˆ™ํ•˜์ง€ ์•Š์œผ์‹œ๋ฉด ์ดํ•ดํ•˜๋Š”๋ฐ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

LangChain์ด ์ฒ˜์Œ์ด์‹œ๋ผ๋ฉด ๊ฐ•์‚ฌ์˜ ์ดˆ๊ธ‰ ๊ฐ•์˜๋ฅผ ์ถ”์ฒœ๋“œ๋ฆฝ๋‹ˆ๋‹ค

Q. ์ˆ˜๊ฐ• ์ค‘ ์ดํ•ด๋˜์ง€ ์•Š๋Š” ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•˜๋‚˜์š”?

์ˆ˜๊ฐ• ์ค‘ ๊ถ๊ธˆํ•œ ์ ์ด ์žˆ์œผ๋ฉด ์–ธ์ œ๋“ ์ง€ ์ธํ”„๋Ÿฐ ์งˆ๋ฌธ์œผ๋กœ ์˜ฌ๋ ค์ฃผ์„ธ์š”! ์ตœ๋Œ€ํ•œ ๋น ๋ฅด๊ฒŒ ๋‹ต๋ณ€ ๋“œ๋ฆฌ๊ณ ,
ํ•„์š” ์‹œ ์ถ”๊ฐ€ ์ดฌ์˜์„ ํ†ตํ•ด ๊ฐ•์˜๋ฅผ ์—…๋ฐ์ดํŠธ ํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค

์ˆ˜๊ฐ• ์ „ ์ฐธ๊ณ  ์‚ฌํ•ญ

์‹ค์Šต ํ™˜๊ฒฝ

  • ์šด์˜ ์ฒด์ œ ๋ฐ ๋ฒ„์ „(OS): MacOS

    • ํŒŒ์ด์ฌ์„ ๊ตฌ๋™ํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด๋ผ๋ฉด Windows, Linux ๋“ฑ ์šด์˜์ฒด์ œ์™€ ๊ด€๊ณ„์—†์ด ๊ฐ•์˜๋ฅผ ๋”ฐ๋ผ์˜ค์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

  • ์‚ฌ์šฉ ๋„๊ตฌ:

    • ๋ชจ๋“  ๋ผ์ด๋ธŒ ์ฝ”๋”ฉ์€ Notebook ํ™˜๊ฒฝ์—์„œ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    • ํŠน๋ณ„ํžˆ ์ถ”์ฒœํ•˜๋Š” ์—๋””ํ„ฐ๋Š” ์—†์ง€๋งŒ ๊ฐ•์˜์—์„œ๋Š” Cursor๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค

ํ•™์Šต ์ž๋ฃŒ

  • ๊ฐ•์˜์—์„œ ์‚ฌ์šฉ๋œ Notebook๋“ค์˜ ์†Œ์Šค์ฝ”๋“œ๋ฅผ GitHub Repository๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค

    • ๊ฐ•์˜ ์˜์ƒ์—๋Š” ์—†๋Š” "์ฃผ์„"๊ณผ "Markdown"์„ ํ†ตํ•œ ๋ถ€์—ฐ์„ค๋ช…์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ด๋ก  ์„ค๋ช…์„ ์œ„ํ•œ Notion ํŽ˜์ด์ง€๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค

์„ ์ˆ˜ ์ง€์‹ ๋ฐ ์œ ์˜์‚ฌํ•ญ

  • ํ•„์ˆ˜ ์ง€์‹: Python

  • ์„ ํƒ ์ง€์‹ : LangChain

    • ์ด ๊ฐ•์˜๋Š” LangChain ๊ฒฝํ—˜์ด ์žˆ๋Š” ๋ถ„๋“ค์„ ํƒ€๊ฒŸ์œผ๋กœ ํ•˜๋Š” ์ค‘๊ธ‰๊ฐ•์˜ ์ž…๋‹ˆ๋‹ค.

      • LangChain ์‚ฌ์šฉ ๊ฒฝํ—˜์ด ์—†์–ด๋„ ๊ฐ•์˜๋ฅผ ์ดํ•ดํ•˜์‹ค ์ˆ˜๋„ ์žˆ์ง€๋งŒ, LangChain ์‚ฌ์šฉ๊ฒฝํ—˜์ด ์ „๋ฌดํ•˜๋ฉด ๊ฐ•์˜๋ฅผ ๋”ฐ๋ผ์˜ค๋Š”๋ฐ ์–ด๋ ค์šฐ์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

      • LangChain์„ ๋จผ์ € ๊ณต๋ถ€ํ•˜๊ณ  ์‹ถ์œผ์‹œ๋ฉด ๊ฐ•์‚ฌ์˜ ์ดˆ๊ธ‰ ๊ฐ•์˜๋ฅผ ์ถ”์ฒœ๋“œ๋ฆฝ๋‹ˆ๋‹ค

์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜
์ถ”์ฒœ๋“œ๋ ค์š”!

ํ•™์Šต ๋Œ€์ƒ์€
๋ˆ„๊ตฌ์ผ๊นŒ์š”?

  • LLM์— ๊ด€์‹ฌ์žˆ๋Š” ๊ฐœ๋ฐœ์ž

  • LLM Application์„ ๋ฐฐํฌ/์šด์˜์ค‘์ธ ๊ฐœ๋ฐœ์ž

  • LLM Application์„ ๊ณ ๋„ํ™” ํ•˜๊ณ ์‹ถ์€ ๊ฐœ๋ฐœ์ž

์„ ์ˆ˜ ์ง€์‹,
ํ•„์š”ํ• ๊นŒ์š”?

  • Python

์•ˆ๋…•ํ•˜์„ธ์š”
๊ฐ•๋ณ‘์ง„์ž…๋‹ˆ๋‹ค.

3,500

๋ช…

์ˆ˜๊ฐ•์ƒ

201

๊ฐœ

์ˆ˜๊ฐ•ํ‰

206

๊ฐœ

๋‹ต๋ณ€

4.9

์ 

๊ฐ•์˜ ํ‰์ 

8

๊ฐœ

๊ฐ•์˜

๋”๋ณด๊ธฐ

์ปค๋ฆฌํ˜๋Ÿผ

์ „์ฒด

22๊ฐœ โˆ™ (5์‹œ๊ฐ„ 34๋ถ„)

๊ฐ•์˜ ๊ฒŒ์‹œ์ผ: 
๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ์ผ: 

์ˆ˜๊ฐ•ํ‰

์•„์ง ์ถฉ๋ถ„ํ•œ ํ‰๊ฐ€๋ฅผ ๋ฐ›์ง€ ๋ชปํ•œ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.
๋ชจ๋‘์—๊ฒŒ ๋„์›€์ด ๋˜๋Š” ์ˆ˜๊ฐ•ํ‰์˜ ์ฃผ์ธ๊ณต์ด ๋˜์–ด์ฃผ์„ธ์š”!