Contents
- Frontend framework: ์ฌ์ฉ์๊ฐ ๋ํ/์์ ์ ์์ฒญํ๋ UI (part1)
- Agent development framework: ์์ด์ ํธ ๋ก์ง(๋ฃจํ, ์ํ, ๋๊ตฌ ์ฐ๊ฒฐ)์ ๋ง๋๋ ํ๋ ์์ํฌ (part1)
- Agent memory: ๋ํ/์ธ์ ์ํ์ ์ฅ๊ธฐ ๊ธฐ์ต ์ ์ฅ (part1)
- Agent tools: ๊ฒ์, DB, ์ฌ๋ด API ๋ฑ โํ๋โ์ ์ํํ๋ ๋๊ตฌ ๋ฌถ์ (part1)
- Agent design patterns: ์ฑ๊ธ ์์ด์ ํธ vs ๋ฉํฐ ์์ด์ ํธ ๋ฑ ๊ตฌ์กฐ ํจํด (part3)
- Agent runtime: ์์ด์ ํธ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ค์ ๋ก ๋์๊ฐ๋ ์คํ ํ๊ฒฝ (part3)
- AI models: ์ถ๋ก /์์ฌ๊ฒฐ์ ์์ง(part 3)
- Model runtime: ๋ชจ๋ธ์ ์๋นํ๋ ์ธํ๋ผ(๊ด๋ฆฌํ API/์ปจํ ์ด๋/GKE ๋ฑ) (part 3)
Introduction

Agentic AI๋ฅผ ํ ๋ฌธ์ฅ์ผ๋ก ์ ๋ฆฌํ๋ฉด,ย ์ฌ์ฉ์ ์๋๋ฅผ ์ดํดํ๊ณ โ ์ฌ๋ฌ ๋จ๊ณ ๊ณํ์ ์ธ์ฐ๊ณ โ ๋๊ตฌ๋ฅผ ํธ์ถํด ์คํ๊น์ง ๋๋ด๋ย ์์จ ์์คํ
์ด๋ค. ๋จ์ํ โ๋ต๋ณ์ ์์ฑํ๋ ๋ชจ๋ธโ์ด ์๋๋ผ,ย ๊ณํ(Planning)ย ๊ณผย ๋๊ตฌ(Tools)ย ๋ฅผ ํตํด ์ค์ ์
๋ฌด๋ฅผ ์๋ฃํ๋๋ก ์ค๊ณ๋ ์ํคํ
์ฒ์ธ ๊ฒ์ด๋ค.
์ฌ์ฉ์์ ๋ชฉ์ ์ ๋ฐ๋ผ์, ์์ ์ ๋ฌธ์ ๋ฅผ ํ ์ต๋ํ ํจ์จ์ ์ธ agent framework๋ฅผ ๊ตฌ์ถํ๋ฉด ๋๋ ๊ฒ์ด๊ณ , ํ๋ณด๊ตฐ์ผ๋ก๋ ๋ค์ํ framework๊ฐ ์กด์ฌํ๋ค. ์ด๋ฒ ์๊ฐ์๋ ์ด๋ ํ framework๋ค์ด ์กด์ฌํ ์ ์๋์ง google์์ ์ ๊ณตํ๋ ๋ฌธ์๋ฅผ ๋ฐํ์ผ๋ก ์ญ ์ ๋ฆฌํด๋ณด์.
Choose a design pattern for your agentic AI system ย |ย Cloud Architecture Center ย |ย Google Cloud Documentation
Single - agent system

Single-Agent System(๋จ์ผ ์์ด์ ํธ ์์คํ
)์ ํ๋์ AI ์์ด์ ํธ๊ฐ ์ฌ์ฉ์์ ์์ฒญ์ ์ดํดํ๊ณ , ํ์ํ ๊ณํ์ ์ธ์ด ๋ค, ๋๊ตฌ๋ฅผ ์ฌ์ฉํด ์์
์ ์ํํ๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ์์ด์ ํธ ๊ตฌ์กฐ์ด๋ค.
๋ณต์กํ ํ์
์ด ํ์ํ์ง ์์ ์ค๊ฐ ์์ค์ ์ํฌํ๋ก์ฐ์ ์ ํฉํ๋ฉฐ, ๊ตฌ์กฐ๊ฐ ๋จ์ํด ๊ตฌํ๊ณผ ๋๋ฒ๊น
์ด ๋น๊ต์ ์ฝ๋ค. ๋ํ ๋ฉํฐ ์์ด์ ํธ ์์คํ
์ ๋นํด ์ด์ ๋น์ฉ๊ณผ ๊ด๋ฆฌ ๋ถ๋ด์ด ๋ฎ๋ค๋ ์ฅ์ ์ด ์์ต๋๋ค.
Multi-agent sysetms
ํ์ง๋ง, ์ค์ ํด๊ฒฐํด์ผํ ๋ฌธ์ ๊ฐ ๋ณต์กํด์ง๋ฉด ์ฐ๋ฆฌ ์ธ๊ฐ์ด ํ์ฌ๋ฅผ ๋ง๋ ๊ฒ๊ณผ ๋์ผํ๊ฒ. ์๋์ ์ฌ์ง ์ฒ๋ผ multi - agent ์์คํ
์ ๊ตฌ์ถ ํ ์ ์๋ค.

๋ฉํฐ ์์ด์ ํธ๋ ๋ค์ํ ๊ตฌ์กฐ๋ก ์ค๊ณ๊ฐ๋ฅํ๊ณ , ์ฌ๋ฌ ๋ํ์ ์ธ ๊ตฌ์กฐ๋ค์ ์ดํด๋ณด์.
Sequential pattern

๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ผ๋ก, ์ฐ์ด์ด ์ฌ๋ฌ step์ผ๋ก ์์
ํ๋ process์ ๊ฒฝ์ฐ, ์ฐ์์ ํจํด agent๊ฐ ์ ํฉํ๋ค. ์์๋ก ๋ด๊ฐ ์งํํ๋ CAD opeartion โ Meshing โ Fluid simulation โ solid simulation โ Sensitivity analysis์ ๊ฒฝ์ฐ ์ฆ ๋ฐ๋ณต์ ์ธ seqeuntial pattern์ ์ ํฉํ๋ค.
Parallel pattern
๋์์ ์ฌ๋ฌ ์์
๋ค์ ์งํํ๊ณ ์ถ์๋, ์ ํฉํ ๋ณ๋ ฌ ๋ฐฉ์์ด๋ค. ๊ฐ์ task๋ฅผ ์ฃผ์ด์ ๋ค๋ฅธ ๋ชจ๋ธ๋ค์ ๋น๊ตํ ์ ๋ ์๊ณ , ์๋ก ๋
๋ฆฝ์ ์ธ ์ผ์ ๋์์ ์ฒ๋ฆฌํ๋ฉด ์๋๊ฐ ๊ต์ฅํ ๋น ๋ฅด๋ค.

์๋ฅผ ๋ค์ด์, ์ฌ์ฉ์๊ฐ โํ
์ฌ๋ผ ์ต๊ทผ ํฌ์ ๋ฆฌ์คํฌ ๋ถ์ํด์คโ๋ผ๊ณ ์์ฒญํ๋ฉด,
- Agent 1 โ ์ต๊ทผ ๋ด์ค ์์ง
- Agent 2 โ ์ฌ๋ฌด์ ํ ๋ถ์
- Agent 3 โ ๊ฒฝ์์ฌ ๋น๊ต
- Agent 4 โ ์์ฅ ๊ฑฐ์๊ฒฝ์ ์งํ ๋ถ์
์ด ๋ค ๊ฐ๊ฐ ๋์์ ์คํ๋๊ณ , ๋ง์ง๋ง์ ํ๋์ ์์ฝ ์์ด์ ํธ๊ฐ ๊ฒฐ๊ณผ๋ฅผ ํตํฉํ๋ค.
์ด ๊ตฌ์กฐ๊ฐ ๋ฐ๋ก parallel ํจํด์ด๋ค
Review and critique pattern

Review and Critique ํจํด์ ์์ฑ(Generator) ์์ด์ ํธ์ ๊ฒํ (Critic) ์์ด์ ํธ๋ฅผ ๋ถ๋ฆฌํด์, ๊ฒฐ๊ณผ๋ฌผ์ ํ์ง์ ๋์ด๋ ๋ฉํฐ ์์ด์ ํธ ์ค๊ณ ๋ฐฉ์์ด๋ค. ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ โ๋ง๋ค๊ณ โ ๊ฒํ ํ๊ณ โ ํ์ํ๋ฉด ์์ ํ๋คโ๋ผ๋ ๋ฐ๋ณต ํ๋ฆ์ด๋ค. ์ด ํจํด์ Loop ํจํด์ ํ ๊ตฌํ ํํ๋ก ๋ณผ ์ ์๋ค.
์๋ฅผ ๋ค์ด,์ฌ์ฉ์๊ฐ โ๋ก๊ทธ์ธ ๊ธฐ๋ฅ ์ฝ๋ ์์ฑํด์คโ๋ผ๊ณ ์์ฒญํ๋ฉด:
- Generator โ ์ฝ๋ ์์ฑ
- Critic โ ๋ณด์ ์ทจ์ฝ์ ๊ฒ์ฌ (SQL injection, ์ธ์ฆ ๋๋ฝ ๋ฑ)
- ๋ฌธ์ ๊ฐ ์์ผ๋ฉด ์์ ์์ฒญ
- ์์ ๊ธฐ์ค ํต๊ณผ ํ ์ต์ข
์น์ธ
Iterative refinement pattern

Review and critique pattern์ ๋น์ทํ์ง๋ง, quality evaulator๋ฅผ ํตํด์ ํต๊ณผํ์ง ๋ชปํ๋ค๋ฉด, prompt์์ฒด๋ฅผ ์์ ํด๋ฒ๋ฆฐ๋ค๋ ์ฐจ์ด๊ฐ ์๋ค. ์ฆ prompt๋ฅผ ๊ณ์ํด์ ๊ฐ์ ํด์ผ์ง ํ๋ฆฌํฐ๊ฐ ์ฌ๋ผ๊ฐ๋ ์์
์ด๋ค. (์ด์ ๋ฐ๋๋ก review pattern์ ๊ฐ์ prompt์์ ๋ค๋ฅธ ์ก์
์ ์ทจํด ๊ฒฐ๊ณผ๋ฅผ ๊ธฐ์ค์น๋ณด๋ค ์ฌ๋ฆฌ๋ ์์
)
์๋ฅผ ๋ค์ด, โAI ๊ธฐ๋ฐ ์คํํธ์
์ฌ์
๊ณํ์ ์์ฑํด์คโ๋ผ๋ ์์ฒญ์ด ๋ค์ด์ค๋ฉด:
- 1์ฐจ ์ด์ ์์ฑ
- ๋
ผ๋ฆฌ ๊ตฌ์กฐ ๊ฐ์
- ์์ฅ ๋ถ์ ์ถ๊ฐ
- ์ฌ๋ฌด ๋ชจ๋ธ ๊ตฌ์ฒดํ
- ํํ ๋ค๋ฌ๊ธฐ
์ด ๊ณผ์ ์ ๋ฐ๋ณตํ๋ฉด์ ์ ์ ์์ฑ๋๋ฅผ ๋์ธ๋ค.
Coordinate pattern

์ด๋ฒ์๋ parallel pattern๊ณผ ๊ต์ฅํ ๋น์ทํ๊ฒ ์๊ฒผ์ง๋ง, dynamically routes request๋ผ๋ ์ฐจ์ด์ ์ด ์กด์ฌํ๋ค. ์ฆ, Coordinator ํจํด์ AI ๋ชจ๋ธ์ด ์ค์ผ์คํธ๋ ์ด์
์ ํ๋ค. ๋ผ๋ ์ ์ด ๊ฐ๋ ฅํ ์ฐจ์ด์ ์ด๋ค.
๊ตฌ์กฐ๋ฅผ ์ดํด๋ณด๋ฉด, ์ค์ coordinator agent๊ฐ ์กด์ฌํ์ฌ, ์ฌ์ฉ์์ ์์ฒญ์ ๋ถ์ ํ, ์ด๋ค ์ ๋ฌธ agent๋ฅผ ํธ์ถํ ์ง ๊ฒฐ์ ํ๋ค. ์ดํ ์ค์๊ฐ ์ํฉ, ์กฐ๊ฑด์ ๋ฐ๋ผ ์ผ๋ถ๋ง ์คํํ๊ฑฐ๋ ๋ค๋ฅธ ๊ฒฝ๋ก๋ก ๋ถ๊ธฐ ํ ์ ์๋ค.
์์: ๊ณ ๊ฐ ์๋น์ค ์์คํ
์์ ์ฌ์ฉ์ ์์ฒญ์ด:
- โ๋ฐฐ์ก ์ธ์ ์?โ โ ์ฃผ๋ฌธ ์กฐํ agent ํธ์ถ
- โํ๋ถํ๊ณ ์ถ์ดโ โ ํ๋ถ ์ฒ๋ฆฌ agent ํธ์ถ
- โ์ ํ ๊ณ ์ฅ๋ฌ์ดโ โ ๊ธฐ์ ์ง์ agent ํธ์ถ
์ด๊ฑด ํญ์ ๋์ผํ๊ฒ ๋ณ๋ ฌ ์คํํ๋ ๊ฒ ์๋๋ผ
์์ฒญ ๋ด์ฉ์ ๋ฐ๋ผ ๋ผ์ฐํ
์ด ๋ฌ๋ผ์ง๋ค.
์ฆ,
Coordinator = โ์งํ๊ด์ด ์ํฉ ๋ณด๊ณ ์ ์ ํ ๋ถ๋๋ง ํฌ์ โ
Hierarchical task decomposition pattern

Coordinate pattern์์ ํ๋จ๊ณ ๋ ๋์๊ฐ์, ๊ณ์ธต๊ตฌ์กฐ์ธ subsubagent ๊น์ง ์ ์์ ํ ์ ๊ฐ ์๋ค. ์์ coordinator์ ๋น๊ตํด๋ณด์.
| ๊ตฌ๋ถ | Coordinator | Hierarchical Decomposition |
| ๊ตฌ์กฐ | 1๋จ๊ณ ๋ผ์ฐํ | ๋ค๋จ๊ณ ํธ๋ฆฌ ๊ตฌ์กฐ |
| ๋ณต์ก์ฑ | ์ค๊ฐ | ๋งค์ฐ ๋์ |
| ๊ณํ ๊น์ด | ์์ | ๊น์ (multi-layer planning) |
| ์ ํฉํ ๋ฌธ์ | ๊ตฌ์กฐํ๋ ์ ๋ฌด | ๋ชจํธํ๊ณ ๋ณต์กํ ๋ฌธ์ |
๋ฌธ์์์ ์ค๋ช ํ๊ธฐ๋ฅผ ๊ต์ฅํ ๋ชจํธํ๊ณ , ๋์ด๋๊ฐ ๋์ ๋ฌธ์ ์ ์ ํฉํ๊ณ , ์ด๋ฅผ ์์ ๋ฌธ์ ๋ค๋ก ์ชผ๊ฐ์ด์ ํด๊ฒฐํ๋ค.
์ฌ์ฉ์๊ฐ:
โAI ๊ธฐ๋ฐ ์ ์ฝ ๊ฐ๋ฐ ์ ๋ต ๋ณด๊ณ ์๋ฅผ ์์ฑํด์คโ
๋ผ๊ณ ์์ฒญํ๋ค๊ณ ๊ฐ์ ํ์.
Root Agent๋ ์ด๊ฑธ ๋ฐ๋ก ์์ฑํ์ง ์๋๋ค. ๋์ :
1. ์ฐ๊ตฌ ๋ฐฐ๊ฒฝ ์กฐ์ฌ
2. ๊ธฐ์กด ๊ธฐ์ ๋ถ์
3. ์์ฅ ๋ถ์
4. ๋ฆฌ์คํฌ ํ๊ฐ
5. ์ ๋ต ์ข ํฉ
์ผ๋ก ๋ถํดํ๋ค.
๊ทธ๋ฆฌ๊ณ
- ์ ๋ณด ์์ง agent
- ๋ฐ์ดํฐ ๋ถ์ agent
- ๋ณด๊ณ ์ ์์ฑ agent
๋ฑ์ผ๋ก ๋ค์ ๋๋์ด ์์ ์ ์์ํ๋ค.
์ด๊ฒ ๋ฐ๋ก ๊ณ์ธต์ ๋ถํด๋ค.
Swarm pattern

Swarm ํจํด์ ์ฌ๋ฌ ์ ๋ฌธ ์์ด์ ํธ๊ฐ ์ํ์ ์ผ๋ก(all-to-all) ํ์
ํ๋ฉด์ ํ๋์ ๋ณต์กํ ๋ฌธ์ ๋ฅผ ๋ฐ๋ณต์ ์ผ๋ก ๊ฐ์ ํด ๋๊ฐ๋ ๊ตฌ์กฐ๋ค. ๊ณ์ธต์ ๊ตฌ์กฐ(Hierarchical)์ฒ๋ผ ์์์ ์๋๋ก ๋ช
๋ น์ด ๋ด๋ ค๊ฐ๋ ๋ฐฉ์์ด ์๋๋ผ, ์์ด์ ํธ๋ค์ด ์๋ก ์ํธ์์ฉํ๋ฉฐ ์ง๋จ ์ง์ฑ์ ํ์ฑํ๋ ๋ชจ๋ธ์ ๊ฐ๊น๋ค.
๋ค์ ๋๊ฐ์ง ์ข
๋ฅ์ ์์ด์ ํธ๋ก ๊ตฌ์ฑ๋๋ค.
- Dispatcher Agent
- ์ฌ์ฉ์ ์์ฒญ์ ํด์
- ์ด๋ค ์์ด์ ํธ๊ฐ ๋จผ์ ์์ํ ์ง ๊ฒฐ์
- Swarm Agents (์ ๋ฌธ ์์ด์ ํธ ๊ทธ๋ฃน)
- ์๋ก์ ๊ฒฐ๊ณผ๋ฅผ ์ฐธ๊ณ
- ํผ๋๋ฐฑ์ ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ ์ ์ง์ ์ผ๋ก ๊ฐ์
- ์ค์ ํต์ ๋ณด๋ค๋ ํ์
์ค์ฌ
์ฆ, ํ๋๊ฐ ๊ณํ โ ํ๋๊ฐ ์คํ โ ๋์ด ์๋๋ผ, ์ฌ๋ฌ ์์ด์ ํธ๊ฐ ๋์์ ์๊ฐํ๊ณ , ์์ ํ๊ณ , ๋ณด์ํ๋ ๊ตฌ์กฐ์ด๋ค.
๋ฐ๋ผ์, ๋ค์ํ ๊ด์ ๊ณผ ๋ฐ๋ณต์ ํ ๋ก ์ด ํ์ํ ๋ ์๊ตฌ๋๋ ๋ชจ๋ธ์ด๋ค.
์๋ฅผ ๋ค์ด์, โAI ๊ธฐ๋ฐ ๋ฏธ๋ ํฌ์ค์ผ์ด ํ๋ซํผ ์ ๋ต์ ์ค๊ณํด์คโ๋ผ๋ ์์ฒญ์ด ๋ค์ด์ค๋ฉด:
- ๊ธฐ์ ์ ๋ต ์์ด์ ํธ
- ์์ฅ ๋ถ์ ์์ด์ ํธ
- ๊ท์ ๋ฆฌ์คํฌ ์์ด์ ํธ
- ์ฌ๋ฌด ๋ชจ๋ธ๋ง ์์ด์ ํธ
์ด ๋ค ๊ฐ๊ฐ ์๋ก ๊ฒฐ๊ณผ๋ฅผ ๊ณต์ ํ๋ฉด์
- ์์ด๋์ด ์ ์
- ๋ฆฌ์คํฌ ๋ฐ๋ฐ
- ๋ณด์ ์ ์
- ๋์ ๋น๊ต
๋ฅผ ๋ฐ๋ณตํ๋ค.
์ด ๊ณผ์ ์ ๋ง์น ์ ๋ฌธ๊ฐ ์ง๋จ์ด ํ์์์ ํ ๋ก ํ๋ ๊ฒ๊ณผ ์ ์ฌํ๋ค.
Reason and act (ReAct) pattern

์ฌ์ค, ์ธ๊ฐ์ด ์ด๋ค ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๋ ๊ฐ์ฅ ๋ง์ด ์ฐ์ด๋ ๋ฐฉ์์ด๋ค.
1. ํ์ฌ ์ํฉ์์ think โ ์ ์ ํ ๋๊ตฌ ํ์
2. ๋๊ตฌ๋ฅผ ๊ฐ์ง๊ณ ์คํ
3. ๊ฒฐ๊ณผ๋ฅผ ๊ด์ฐฐํ์ฌ ์ ์ฅํ ํ์ ๋ค์ ๋๊ตฌ๋ฅผ ์ ํ or exit
๋ฌธ์์์๋ ๋ค์ ์กฐ๊ฑด์ผ๋, loop exit์ ํ๋ค๊ณ ํ๋ค.
โThe iterative loop terminates when the agent finds a conclusive answer, reaches a preset maximum number of iterations, or encounters an error that prevents it from continuingโ
์ฌ์ฉ์ ์์ฒญ: โ์๋น๋์ ์ต๊ทผ ์ฃผ๊ฐ ํ๋ฝ ์์ธ ๋ถ์ํด์คโ
1. Think
- ์ต๊ทผ ๋ด์ค ํ์ธ ํ์, ์ค์ ๋ฐํ ์ฌ๋ถ ํ์ธ, ๊ฑฐ์๊ฒฝ์ ์์ธ ํ์ธ
2. Action
โ ๋ด์ค API ํธ์ถ
3. Observation
- โAI ๋ฐ๋์ฒด ์์ ๋ํ ์ฐ๋ ค ๊ธฐ์ฌ ๋ฐ๊ฒฌโ, โ๋ฏธ ์ฐ์ค ๊ธ๋ฆฌ ๋ฐ์ธ ์ํฅ ๊ธฐ์ฌ ๋ฐ๊ฒฌโ
4. Thought (2๋ฒ์งธ ๋ฃจํ)
- ์ค์ ๋ฐ์ดํฐ ํ์ธ ํ์, ์ต๊ทผ ๋ถ๊ธฐ ๊ฐ์ด๋์ค ์ฒดํฌ ํ์
5. Action
โ ์ฌ๋ฌด ๋ฐ์ดํฐ API ํธ์ถ
6. Observation
- ๋งค์ถ ๊ฐ์ด๋์ค ํํฅ ์กฐ์ ํ์ธ
7. Thought (๋ง์ง๋ง)
- ์ถฉ๋ถํ ์ ๋ณด ํ๋ณด, ์ต์ข ๋ถ์ ์์ฑ
8. Action
โ ์ฌ์ฉ์์๊ฒ ์ต์ข ๋ถ์ ์ ๋ฌ
ํ ๋ฒ์ ๊ณํ์ ๋๋ด์ง ์๊ณ , ๊ด์ฐฐ ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ๊ณ์ ๊ณํ์ ์์ ํ๋ค.
Human in the loop pattern

๊ทธ๋ฅ ๋จ์ํ๊ฒ, loop battern์ด์ง๋ง, ํ๊ฐ๋ฅผ ์ธ๊ฐ์ด ํ๊ณ ํต๊ณผํ์ง ๋ชปํ๋ฉด, ์ธ๊ฐ์ feedback์ ๊ฐ์ง๊ณ ๋ค์ loop๋ก ๋์๊ฐ๋ ๋ฐฉ์์ด๋ค.
์๋ฅผ๋ค์ด์, CAD operation ์ดํ์ mesh๋ฅผ ์์ฑํ๋ ์ํฉ์ด๋ผ๊ณ ๊ฐ์ ํ์. ๋ฉ์ฌ ํน์ฑ์ ์ง์ ์ธ๊ฐ์ด UI๋ก ๋ณด๊ณ ํ์ธํด์ผํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค. ์ค์ ๋ก ์ดํด๋ณธํ, refinement๊ฐ ํ์ํ๋ค๋ฉด ํผ๋๋ฐฑ๊ณผํจ๊ป ๋๋ ค๋ณด๋ด์ ๋ค์ mesh๋ฅผ agent๊ฐ ์์ฑํ๋๋ก ๋ง๋ ๋ค.
๊ฒฐ๊ตญ ์ฌ๋์ ํ๋จ์ด ๋ค์ด๊ฐ๋ค๋ ์ ์์ ์๋ฅผ๋ค์ด, ์๋ฃ๋ถ์ผ์์ ์ฌ์ฉ๋ ์ ์๋ค.
Custom logic pattern
๊ฒฐ๊ตญ ์ต์ข
์ ์ผ๋ก ์ง๊ธ๊น์ง pattern ์์ฒด๋ฅผ ์ฌ์ฉ์์ ๋์ฆ์ ๋ง๊ฒ ์กฐํฉํ์ฌ ๋ค์์ ๊ตฌ์กฐ๋ฅผ ๋ง๋ค ์ ์๋ค.์ฌ๊ธฐ์ ๋ฌด์๋ณด๋ค ํต์ฌ์ ์กฐ๊ฑด๋ฌธ ์์ฒด๋ฅผ ์ฌ์ฉ์๊ฐ ๋ง๋ ์ฝ๋๋ผ๋์ง, ์ด๋ค ์ด์ฉ์ ๋ง์ถค ์กฐ๊ฑด์ผ๋ก ์ค์ ์ ํ๋ค๋ ์ ์ด๋ค.

e.g) ๊ณ ๊ฐ ํ๋ถ ์์ด์ ํธ ์์ ์ํฌํ๋ก์ฐ
- ์ฌ์ฉ์๊ฐ ๊ณ ๊ฐ ํ๋ถ ์์ด์ ํธ์๊ฒ ์์ฒญ์ ๋ณด๋ธ๋ค. (๊ณ ๊ฐ์ด ์ง๊ธ ํ๋ถ ๋์์ธ์ง ํ๋ณ)
- ์ฝ๋๋ค์ดํฐ์ ์ปค์คํ
๋ก์ง์ ๋จผ์ ๋ณ๋ ฌ ๊ฒ์ฆ ์์ด์ ํธ(parallel verifier agent)๋ฅผ ํธ์ถํ๋ค. (subagent ๋์ ์คํ)
- ๊ตฌ๋งค์ ๊ฒ์ฆ ์์ด์ ํธ (purchaser verifier agent)
- ํ๋ถ ์๊ฒฉ ๊ฒ์ฆ ์์ด์ ํธ (refund eligibility agent)
- ๋ ์์ด์ ํธ์ ๊ฒฐ๊ณผ๊ฐ ์์ง๋๋ฉด, ์ฝ๋๋ค์ดํฐ ์์ด์ ํธ๋ ๋๊ตฌ(tool)๋ฅผ ์คํํ์ฌ ํด๋น ์์ฒญ์ด ํ๋ถ ๋์์ ํด๋นํ๋์ง ์ต์ข ์ ์ผ๋ก ํ์ธํ๋ค.
- ์ฌ์ฉ์๊ฐ ํ๋ถ ์๊ฒฉ์ด ์๋ ๊ฒฝ์ฐ(yes)
์ฝ๋๋ค์ดํฐ๋ ์์ ์ ํ๋ถ ์ฒ๋ฆฌ ์์ด์ ํธ(refund processor agent)๋ก ๋ผ์ฐํ ํ๋ฉฐ,
์ด ์์ด์ ํธ๋process_refund๋๊ตฌ๋ฅผ ํธ์ถํ์ฌ ํ๋ถ์ ์งํํ๋ค. - ์ฌ์ฉ์๊ฐ ํ๋ถ ์๊ฒฉ์ด ์๋ ๊ฒฝ์ฐ(no)
์ฝ๋๋ค์ดํฐ๋ ๋ณ๋์ ์์ฐจ์ (sequential) ํ๋ฆ์ผ๋ก ์์ ์ ๋ผ์ฐํ ํ๋ค.
์ด ํ๋ฆ์ ๋ค์ ๋จ๊ณ๋ก ์งํ๋๋ค:- ์คํ ์ด ํฌ๋ ๋ง ์์ด์ ํธ(store credit agent)
- ํฌ๋ ๋ง ์ฒ๋ฆฌ ๊ฒฐ์ ์์ด์ ํธ(process credit decision agent)
- ์ด๋ค ๊ฒฝ๋ก๊ฐ ์ ํ๋์๋ ,
์ต์ข ๊ฒฐ๊ณผ๋ ๋ง์ง๋ง ์๋ต ์์ด์ ํธ(final response agent)๋ก ์ ๋ฌ๋์ด
์ฌ์ฉ์์๊ฒ ์ ๋ฌํ ์ต์ข ๋ต๋ณ์ ๊ตฌ์ฑํ๋ค.
์ง๊ธ๊น์ง ๊ต์ฅํ ๋ค์ํ agent pattern์ ๋ํด์ ์ดํด๋ณด์๋ค. ํจํด๋ค์ ๋ชจ๋ ์ธ์ธ ํ์๊ฐ ์ ํ ์๋ค.
ํต์ฌ์ ์ธ๊ฐ์ด ์กฐ์งํํด์ ํ๋ ์ผ๋ค์ ์กฐ์งํ๋ ์์ด์ ํธ๋ก ํด๊ฒฐํ๊ธฐ ์์ํ๋ค๋ ๊ฒ์ด ๋๋ผ์ ๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ์กฐ์งํ ๊ตฌ์กฐ๋ ๋ฌธ์ ์ ๋ฐ๋ผ์, ํ ๋ก ํ ํ ๊ตฌ์กฐ, ํน์ ๊ณ์ธต ๊ตฌ์กฐ ์ฆ ์ํฉ์ ๋ฐ๋ผ ํจ์จ์ ์ธ ๋ฐฉ์์ ๊ณ ๋ฅด๋ฉด ๋๋ค.
๋ฐ๋ผ์, ์ค์ ์ธ๊ฐ์ด ์ด๋ค์์ผ๋ก ์ฃผ์ด์ง ๋ฌธ์ ๋ฅผ ํธ๋์ง๋ฅผ ๋จผ์ ์ดํด๋ณด๊ณ , ๊ทธ๊ฑฐ์ ๋น์ทํ๊ฒ ์์ํด์ agent๋ฅผ ๊ตฌ์กฐํ ํ๋ ์์ผ๋ก ์ค๊ณํ๋๊ฒ ์ข๋ค๋ ์๊ฐ์ด ๋ค์๋ค.