Home / ์—์ด์ „ํŠธ ๊ธฐ์ดˆ / ๐Ÿ“ AI ์—์ด์ „ํŠธ ๊ธฐ์ดˆ
Note

๐Ÿ“ AI ์—์ด์ „ํŠธ ๊ธฐ์ดˆ

์—์ด์ „ํŠธ ๊ตฌ์„ฑ์š”์†Œ, ReAct, ReWoo, Tool Use, Human-in-the-Loop

โฑ 45๋ถ„ 69 / 189

AI ์—์ด์ „ํŠธ ๊ธฐ์ดˆ

์—์ด์ „ํŠธ ๊ตฌ์„ฑ์š”์†Œ, ReAct, ReWoo, Tool Use, Human-in-the-Loop

๋„๊ตฌ๋ฅผ ์“ฐ๋Š” AI๊ฐ€ ์—์ด์ „ํŠธ๋‹ค

LLM์ด ์ž์œจ์ ์œผ๋กœ ํŒ๋‹จํ•˜๊ณ  ํ–‰๋™ํ•˜๋Š” ์‹œ์Šคํ…œ์˜ ํ•ต์‹ฌ ์›๋ฆฌ

์—์ด์ „ํŠธ์˜ ์ •์˜์™€ ๊ตฌ์กฐ

์ •์˜ ยท ์ฑ—๋ด‡๊ณผ์˜ ์ฐจ์ด ยท ์—์ด์ „ํ‹ฑ ๋ฃจํ”„ ยท ์ž์œจ์„ฑ ๋ ˆ๋ฒจ

PART 1 ยท ์—์ด์ „ํŠธ์˜ ์ •์˜์™€ ๊ตฌ์กฐ

์ •์˜์™€ ๊ตฌ์กฐ

์ฑ—๋ด‡๊ณผ์˜ ์ฐจ์ด์—์„œ ์ž์œจ์„ฑ ์ˆ˜์ค€๊นŒ์ง€ โ€” ์—์ด์ „ํŠธ๋ฅผ ๋ชจ๋ธ์ด ์•„๋‹ˆ๋ผ ์‹œ์Šคํ…œ์œผ๋กœ ๋ณด๋Š” ๊ด€์ 

๋‹ต๋ณ€์„ ๋„˜์–ด ํ–‰๋™ํ•˜๋Š” AI

LLM์ด ๋„๊ตฌ๋ฅผ ํ˜ธ์ถœํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํŒ๋‹จํ•˜์—ฌ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜๋Š” ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค.

  • ์ฑ—๋ด‡ vs ์—์ด์ „ํŠธ โ€” ๋‹ต๋ณ€๋งŒ vs ํŒ๋‹จํ•˜๊ณ  ํ–‰๋™
  • ์—์ด์ „ํ‹ฑ ๋ฃจํ”„ โ€” Perception โ†’ Reasoning โ†’ Action โ†’ Memory
  • ๊ตฌ์„ฑ์š”์†Œ 5๊ฐ€์ง€ โ€” Tools ยท Memory ยท Guardrails ยท Context ยท Orchestration
  • ์ž์œจ์„ฑ 4๋‹จ๊ณ„ โ€” Manual โ†’ Assisted โ†’ Supervised โ†’ Autonomous
takeaway

์ฑ—๋ด‡๊ณผ์˜ ์ฐจ์ด์—์„œ ์ถœ๋ฐœํ•ด ๋ฃจํ”„ ยท ๊ตฌ์„ฑ์š”์†Œ ยท ์ž์œจ์„ฑ ๋‹จ๊ณ„๊นŒ์ง€ โ€” ์—์ด์ „ํŠธ๋ฅผ ๋ชจ๋ธ์ด ์•„๋‹ˆ๋ผ ์‹œ์Šคํ…œ์œผ๋กœ ๋ณด๋Š” ๊ด€์ ์„ ์„ธ์›๋‹ˆ๋‹ค.

PART 1 ยท ์—์ด์ „ํŠธ์˜ ์ •์˜์™€ ๊ตฌ์กฐ

์ฑ—๋ด‡ vs ์—์ด์ „ํŠธ

๋‹ต๋ณ€ํ•˜๋Š” AI์—์„œ ํ–‰๋™ํ•˜๋Š” AI๋กœ

์ฑ—๋ด‡

๋‹ต๋ณ€๋งŒ ์ƒ์„ฑ

  • LLM๋งŒ ์‚ฌ์šฉ โ€” ํ…์ŠคํŠธ ์ž…๋ ฅ โ†’ ํ…์ŠคํŠธ ์ถœ๋ ฅ
  • ์‹คํ–‰ ํ๋ฆ„ ๊ณ ์ • (์งˆ๋ฌธโ†’๋‹ต๋ณ€)
  • "๊ฐ•๋‚จ์—ญ ์ดํƒˆ๋ฆฌ์•ˆ ์ถ”์ฒœํ•ด์ค˜" โ†’ ์ผ๋ฐ˜์  ์ •๋ณด ๋‚˜์—ด
  • ์™ธ๋ถ€ ์‹œ์Šคํ…œ ์ ‘๊ทผ ๋ถˆ๊ฐ€

์ฑ—๋ด‡์€ ํ•™์Šต๋œ ๋ฐ์ดํ„ฐ ๋ฒ”์œ„ ์•ˆ์—์„œ๋งŒ ๋‹ต๋ณ€ํ•ฉ๋‹ˆ๋‹ค. ์‹ค์‹œ๊ฐ„ ์ •๋ณด, ์˜ˆ์•ฝ ์‹คํ–‰, ๋ฐ์ดํ„ฐ ์กฐํšŒ ๊ฐ™์€ "ํ–‰๋™"์€ ๋ถˆ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์—์ด์ „ํŠธ

ํŒ๋‹จํ•˜๊ณ  ํ–‰๋™

  • LLM + ๋„๊ตฌ + ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜
  • ๋ชจ๋ธ์ด ๋‹ค์Œ ํ–‰๋™์„ ๋™์  ๊ฒฐ์ •
  • "๊ฐ•๋‚จ์—ญ ์ดํƒˆ๋ฆฌ์•ˆ ์ถ”์ฒœํ•ด์ค˜" โ†’ ๊ฒ€์ƒ‰ ๋„๊ตฌ ํ˜ธ์ถœ โ†’ ์‹ค์‹œ๊ฐ„ ๊ฒฐ๊ณผ
  • API, DB, ํŒŒ์ผ, ์ฝ”๋“œ ์‹คํ–‰ ๊ฐ€๋Šฅ

์—์ด์ „ํŠธ๋Š” ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•  ๋•Œ๊นŒ์ง€ ์ถ”๋ก ๊ณผ ํ–‰๋™์„ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค. ๋„๊ตฌ๋ฅผ ํ˜ธ์ถœํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํŒ๋‹จํ•˜์—ฌ ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

PART 1 ยท ์—์ด์ „ํŠธ์˜ ์ •์˜์™€ ๊ตฌ์กฐ

์—์ด์ „ํ‹ฑ ๋ฃจํ”„

์ปจํ…์ŠคํŠธ โ†’ LLM โ†’ ๋„๊ตฌ๋ฅผ ๋ชฉํ‘œ ๋‹ฌ์„ฑ๊นŒ์ง€ ๋ฐ˜๋ณต

PART 1 ยท ์—์ด์ „ํŠธ์˜ ์ •์˜์™€ ๊ตฌ์กฐ

์—์ด์ „ํŠธ ๊ตฌ์„ฑ์š”์†Œ

ํ”„๋กœ๋•์…˜ ์—์ด์ „ํŠธ๋ฅผ ์ด๋ฃจ๋Š” 5๊ฐ€์ง€ ํ•ต์‹ฌ ์š”์†Œ

PART 1 ยท ์—์ด์ „ํŠธ์˜ ์ •์˜์™€ ๊ตฌ์กฐ

์ž์œจ์„ฑ 4๋‹จ๊ณ„

์—์ด์ „ํŠธ์—๊ฒŒ ๋ถ€์—ฌํ•˜๋Š” ๊ถŒํ•œ์˜ ํญ โ€” ์ˆ˜๋™ ๋ณด์กฐ๋ถ€ํ„ฐ ์™„์ „ ์ž์œจ๊นŒ์ง€

takeaway

๋‹จ๊ณ„๋Š” ์ž‘์—… ์œ„ํ—˜๋„์™€ ์‹ ๋ขฐ๊ฐ€ ์ •ํ•ฉ๋‹ˆ๋‹ค โ€” ํ”„๋กœ๋•์…˜์€ Supervised(์Šน์ธ ๊ฒŒ์ดํŠธ)์—์„œ ์‹œ์ž‘ํ•ด ์‹ ๋ขฐ๊ฐ€ ์Œ“์ธ ์ž‘์—…๋ถ€ํ„ฐ ์ž์œจ๋กœ ๋„“ํž™๋‹ˆ๋‹ค.

ํ•ต์‹ฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜

ReAct ยท ReWoo ยท Tool Use ํ”„๋กœํ† ์ฝœ

PART 2 ยท ํ•ต์‹ฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜

ํ•ต์‹ฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜

์—์ด์ „ํŠธ๊ฐ€ ์ถ”๋ก ํ•˜๊ณ  ํ–‰๋™ํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ํŒจํ„ด๊ณผ ๋„๊ตฌ ํ˜ธ์ถœ ํ”„๋กœํ† ์ฝœ์˜ ์กฐ๊ฐ

ReAct ยท ReWoo ยท Tool Use

ReAct๋Š” ๋งค ์Šคํ… ํŒ๋‹จํ•˜๊ณ  ReWoo๋Š” ๊ณ„ํš ํ›„ ๋ณ‘๋ ฌ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค โ€” ๋„๊ตฌ ํ˜ธ์ถœ์€ 6๋‹จ๊ณ„ ๋ฉ”์‹œ์ง€ ํ”„๋กœํ† ์ฝœ๋กœ ์˜ค๊ฐ‘๋‹ˆ๋‹ค.

  • ReAct โ€” ๋งค ์Šคํ… ์ถ”๋ก  ํ›„ ํ–‰๋™, ๋†’์€ ์ ์‘๋ ฅ
  • ReWoo โ€” ๊ณ„ํš ๋จผ์ € + ๋ณ‘๋ ฌ ์‹คํ–‰, LLM 2ํšŒ ํ˜ธ์ถœ
  • Tool Use 6๋‹จ๊ณ„ โ€” toolSpec โ†’ tool_use โ†’ toolResult
  • ํŒจํ„ด ์„ ํƒ โ€” ๋Œ€ํ™”ํ˜•์€ ReAct, ๋ณ‘๋ ฌยท๋น„์šฉ ๋ฏผ๊ฐ์€ ReWoo
takeaway

ReAct๋Š” ์ ์‘๋ ฅ์„, ReWoo๋Š” ํ† ํฐ ํšจ์œจ์„ ์–ป์Šต๋‹ˆ๋‹ค โ€” ์ž‘์—… ์„ฑ๊ฒฉ์ด ํŒจํ„ด์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

PART 2 ยท ํ•ต์‹ฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜

ReAct ํŒจํ„ด

Reasoning + Acting์„ ๋งค ์Šคํ… ๋ฐ˜๋ณต โ€” ์—์ด์ „ํŠธ์˜ ๊ธฐ๋ณธ ํŒจํ„ด

ํ•œ ์Šคํ…์˜ ๊ตฌ์กฐ

  1. 1
    Thought

    ์ง€๊ธˆ๊นŒ์ง€์˜ ๋Œ€ํ™”ยท๋„๊ตฌ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๊ณ  ๋‹ค์Œ ํ–‰๋™์„ ์ถ”๋ก  โ€” "๋ฌด์—‡์ด ๋” ํ•„์š”ํ•œ๊ฐ€"

  2. 2
    Action

    ์ถ”๋ก ์ด ๊ณ ๋ฅธ ๋„๊ตฌ๋ฅผ ํ˜ธ์ถœ โ€” ๋„๊ตฌ ์ด๋ฆ„๊ณผ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋ชจ๋ธ์ด ๊ฒฐ์ •

  3. 3
    Observation

    ๋„๊ตฌ ๊ฒฐ๊ณผ๊ฐ€ messages[]์— ์Œ“์—ฌ ๋‹ค์Œ Thought์˜ ์ž…๋ ฅ์ด ๋จ

  4. 4
    ๋ฐ˜๋ณต ๋˜๋Š” ์ข…๋ฃŒ

    ์ •๋ณด๊ฐ€ ์ถฉ๋ถ„ํ•ด์ง€๋ฉด ๋„๊ตฌ ํ˜ธ์ถœ ๋Œ€์‹  ์ตœ์ข… ๋‹ต๋ณ€ ์ƒ์„ฑ

์‹ค์ œ ํŠธ๋ ˆ์ด์Šค โ€” ํ•œ ์š”์ฒญ์ด ๋‘ ์Šคํ…์„ ๋„๋Š” ๊ณผ์ •

takeaway

๋งค ์Šคํ… ์ค‘๊ฐ„ ๊ฒฐ๊ณผ์— ๋ฐ˜์‘ํ•ด ๋‹ค์Œ ํ–‰๋™์„ ๋ฐ”๊พธ๋Š” ๊ฒƒ์ด ReAct์˜ ๊ฐ•์ ์ž…๋‹ˆ๋‹ค.

PART 2 ยท ํ•ต์‹ฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜

ReWoo ํŒจํ„ด

๊ณ„ํš์„ ๋จผ์ € ์„ธ์šฐ๊ณ  ๋„๊ตฌ๋ฅผ ๋ณ‘๋ ฌ ์‹คํ–‰ โ€” HotpotQA ๋ฒค์น˜๋งˆํฌ ๊ธฐ์ค€ ํ† ํฐ ์ตœ๋Œ€ 5๋ฐฐ ํšจ์œจ

3์—ญํ•  ๋ถ„์—… โ€” Reasoning WithOut Observation

  1. 1
    Planner โ€” ์„ค๊ณ„๋„ ์ž‘์„ฑ (LLM 1ํšŒ)

    ์ „์ฒด ๋„๊ตฌ ํ˜ธ์ถœ ๊ณ„ํš์„ ํ•œ ๋ฒˆ์— ์ˆ˜๋ฆฝ โ€” ์•„์ง ์—†๋Š” ๊ฒฐ๊ณผ๋Š” #E1ยท#E2 ํ”Œ๋ ˆ์ด์Šคํ™€๋”๋กœ ์ฐธ์กฐ

  2. 2
    Worker โ€” ์ผ๊ด„ ์‹คํ–‰ (LLM 0ํšŒ)

    ๊ณ„ํš์˜ ๋„๊ตฌ๋ฅผ ๋ชจ๋ธ ๊ฐœ์ž… ์—†์ด ์‹คํ–‰ โ€” ์˜์กด์„ฑ ์—†๋Š” ํ˜ธ์ถœ์€ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ

  3. 3
    Solver โ€” ์ฆ๊ฑฐ ์ข…ํ•ฉ (LLM 1ํšŒ)

    ํ”Œ๋ ˆ์ด์Šคํ™€๋” ์ž๋ฆฌ์— ์‹ค์ œ ๊ฒฐ๊ณผ๋ฅผ ์ฑ„์›Œ ์ตœ์ข… ๋‹ต๋ณ€ ์ƒ์„ฑ

๊ฐ™์€ ์š”์ฒญ์˜ ์‹คํ–‰ ๊ณ„ํš์„œ โ€” Planner ์ถœ๋ ฅ

python
Plan: ๊ฐ•๋‚จ์—ญ ์ดํƒˆ๋ฆฌ์•ˆ ๋ง›์ง‘์„ ์ฐพ๋Š”๋‹ค
#E1 = search_restaurants(location="๊ฐ•๋‚จ์—ญ",
                         cuisine="์ดํƒˆ๋ฆฌ์•ˆ")

Plan: ํ‰์  1์œ„ ์‹๋‹น์„ ์ €๋…์œผ๋กœ ์˜ˆ์•ฝํ•œ๋‹ค
#E2 = book_table(restaurant=#E1[0],
                 time="19:00")
takeaway

๊ด€์ฐฐ์„ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ๊ณ„ํš์„ ๋จผ์ € ์™„์„ฑํ•ฉ๋‹ˆ๋‹ค โ€” LLM ํ˜ธ์ถœ์ด ๊ณ„ํšยท์ข…ํ•ฉ 2ํšŒ๋กœ ๊ณ ์ •๋˜๋Š” ๊ฒƒ์ด ์Šคํ…๋งˆ๋‹ค ๋ชจ๋ธ์„ ๋ถ€๋ฅด๋Š” ReAct์™€์˜ ๊ฒฐ์ •์  ์ฐจ์ด์ž…๋‹ˆ๋‹ค.

PART 2 ยท ํ•ต์‹ฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜

ReAct vs ReWoo

์ž‘์—… ์„ฑ๊ฒฉ์— ๋”ฐ๋ผ ํŒจํ„ด์„ ์„ ํƒ

๊ตฌ๋ถ„ReActReWoo
์ „๋žต๋งค ์Šคํ… ํŒ๋‹จ๊ณ„ํš ๋จผ์ €, ์ผ๊ด„ ์‹คํ–‰
LLM ํ˜ธ์ถœNํšŒ (์Šคํ…๋งˆ๋‹ค)2ํšŒ (๊ณ„ํš + ์ข…ํ•ฉ)
ํ† ํฐ ํšจ์œจ๋‚ฎ์Œ๋†’์Œ (HotpotQA ๊ธฐ์ค€ ์ตœ๋Œ€ 5๋ฐฐ)
์‹คํ–‰ ์‹œ๊ฐ„์ง๋ ฌ โ€” ๋А๋ฆผ๋ณ‘๋ ฌ โ€” ๋น ๋ฆ„
์ ์‘๋ ฅโœ“ ๋†’์Œ (์ค‘๊ฐ„ ๊ฒฐ๊ณผ์— ๋ฐ˜์‘)๋‚ฎ์Œ (๊ณ„ํš ์‹คํŒจ ์‹œ ์žฌ๊ณ„ํš)
์ ํ•ฉํ•œ ๊ฒฝ์šฐ๋Œ€ํ™”ํ˜•, HITL, ๊ฒฐ๊ณผ ์˜์กด์„ฑ ๋†’์„ ๋•Œ๋ฉ€ํ‹ฐ๋„๊ตฌ, ๋ณ‘๋ ฌ ๊ฐ€๋Šฅ, ๋น„์šฉ ๋ฏผ๊ฐ
takeaway

๋Œ€ํ™”ํ˜•์ด๊ฑฐ๋‚˜ ๊ฒฐ๊ณผ ์˜์กด์„ฑ์ด ๋†’์œผ๋ฉด ReAct, ๋ณ‘๋ ฌ ๊ฐ€๋Šฅํ•˜๊ณ  ๋น„์šฉ์— ๋ฏผ๊ฐํ•˜๋ฉด ReWoo โ€” ์ ์‘๋ ฅ๊ณผ ํšจ์œจ์˜ ๋งž๊ตํ™˜์ž…๋‹ˆ๋‹ค.

PART 2 ยท ํ•ต์‹ฌ ๋ฉ”์ปค๋‹ˆ์ฆ˜

Tool Use 6๋‹จ๊ณ„

LLM๊ณผ ๋„๊ตฌ ์‚ฌ์ด์˜ ๋ฉ”์‹œ์ง€ ํ”„๋กœํ† ์ฝœ

์—์ด์ „ํŠธ๋Š” ๋ชจ๋ธ์ด ์•„๋‹ˆ๋ผ ํ•˜๋„ค์Šค๊ฐ€ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

๋„๊ตฌ ยท ๋ฃจํ”„ ยท ์•ˆ์ „์žฅ์น˜๋ฅผ ๊ฐ–์ถ˜ ์‹œ์Šคํ…œ ์„ค๊ณ„