AI ๊ฐœ๋ฐœ

AI Agent ๊ฐ€ ๋ญ”์ง€ ์•Œ์•„์•ผ ๊ฐœ๋ฐœ์„ ํ•˜์ฃ ? - AI ์—์ด์ „ํŠธ ๊ฐœ๋ฐœ์— ์•ž์„œ

Pro.Dev 2025. 4. 12. 00:42
๋ฐ˜์‘ํ˜•

๐Ÿค– "AI ์—์ด์ „ํŠธ"๊ฐ€ ๋ญ๊ธธ๋ž˜? – ChatGPT๋ณด๋‹ค ๋˜‘๋˜‘ํ•œ AI์˜ ๋“ฑ์žฅ

์š”์ฆ˜ ์–ด๋””์„œ๋“  ๋“ค๋ ค์˜ค๋Š” ๋ง,
"์—์ด์ „ํŠธ ๊ธฐ๋ฐ˜ AI๊ฐ€ ๋Œ€์„ธ์•ผ",
"AI๊ฐ€ ์ด์ œ ์Šค์Šค๋กœ ์ƒ๊ฐํ•˜๊ณ  ํ–‰๋™ํ•œ๋Œ€!"
ํ•˜์ง€๋งŒ ๋„๋Œ€์ฒด AI ์—์ด์ „ํŠธ๊ฐ€ ๋ญ๊ธธ๋ž˜ ์ด๋ ‡๊ฒŒ ํ™”์ œ์ผ๊นŒ์š”?


์ด ๊ธ€์—์„œ ๋”ฑ 3๋‹จ๊ณ„๋กœ ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•ด๋“œ๋ฆด๊ฒŒ์š”.

 

์œ ํŠœ๋ธŒ ์˜์ƒ์œผ๋กœ ๋ณด๊ธฐ : https://youtu.be/7rP1rfTdRHY

 

๐Ÿชœ 1๋‹จ๊ณ„ – LLM: ํ…์ŠคํŠธ๋งŒ ์ž˜ ์“ฐ๋Š” AI ์กฐ์ˆ˜

์šฐ๋ฆฌ๊ฐ€ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ChatGPT, Claude, Gemini ๊ฐ™์€ AI๋Š”
๋ชจ๋‘ LLM(Large Language Model)์ด๋ผ๋Š” ๊ธฐ์ˆ  ์œ„์— ๋งŒ๋“ค์–ด์ง„ ์ฑ—๋ด‡์ด์—์š”.

๋ง ๊ทธ๋Œ€๋กœ ๋ง์„ ์ž˜ํ•˜๋Š” AI์ฃ .

๐Ÿ“Œ ์˜ˆ์‹œ:

"๊ณ ๊ฐ์—๊ฒŒ ๋ณด๋‚ผ ๊ฐ์‚ฌ ์ด๋ฉ”์ผ ์จ์ค˜"

ChatGPT๋Š” ์ •์ค‘ํ•˜๊ณ  ์นœ์ ˆํ•œ ์ด๋ฉ”์ผ์„ ๋š๋”ฑ ์จ์ค๋‹ˆ๋‹ค.
ํ•˜์ง€๋งŒ ๊ทธ ๋‹ค์Œ์— ์ด๋ ‡๊ฒŒ ๋ฌผ์–ด๋ณด๋ฉด?

"์ด๋ฒˆ ์ฃผ์— ์–ด๋–ค ๊ณ ๊ฐํ•œํ…Œ ๋ณด๋‚ด์•ผ ํ•˜์ง€?"

โŒ ์‹คํŒจ!
์™œ๋ƒํ•˜๋ฉด ChatGPT๋Š” ์šฐ๋ฆฌ ํšŒ์‚ฌ ๊ณ ๊ฐ ๋ช…๋‹จ(์˜ˆ: ์—‘์…€ ํŒŒ์ผ)์— ์ ‘๊ทผํ•  ์ˆ˜ ์—†๊ฑฐ๋“ ์š”.
๊ทธ๋ฆฌ๊ณ  ๋ˆ„๊ฐ€ ์‹œํ‚ค์ง€ ์•Š์œผ๋ฉด ๊ฐ€๋งŒํžˆ ์žˆ์–ด์š”.

์ฆ‰, LLM์€ ๋Šฅ๋ ฅ์€ ์ข‹์ง€๋งŒ '์ง€์‹œ๊ฐ€ ์žˆ์–ด์•ผ๋งŒ ์›€์ง์ด๋Š” ์กฐ์ˆ˜'์ž…๋‹ˆ๋‹ค.

 

 

๐Ÿชœ 2๋‹จ๊ณ„ – AI ์›Œํฌํ”Œ๋กœ์šฐ: ์‹œํ‚ค๋ฉด ์ฐฉ์ฐฉ ์ž๋™์œผ๋กœ ์›€์ง์ด๋Š” ๋กœ๋ด‡

์ด๋ฒˆ์—๋Š” ์กฐ๊ธˆ ๋” ๋ฐœ์ „๋œ ํ˜•ํƒœ!
์šฐ๋ฆฌ๋Š” ChatGPT ๊ฐ™์€ AI์—๊ฒŒ ์ž๋™ํ™”๋œ ๊ฒฝ๋กœ(workflow)๋ฅผ ์„ค์ •ํ•ด์ค˜์š”.

๐Ÿ“Œ ์˜ˆ์‹œ:

"๋งค์ฃผ ์›”์š”์ผ ์˜ค์ „ 9์‹œ์— ์‹ ๊ทœ ๊ณ ๊ฐ ๋ฆฌ์ŠคํŠธ๋ฅผ ํ™•์ธํ•˜๊ณ ,
๊ฐ์‚ฌ ์ด๋ฉ”์ผ์„ ๋งŒ๋“ค์–ด์„œ ์ž๋™์œผ๋กœ ๋ฐœ์†กํ•ด์ค˜."

์ด๊ฑด Make.com์ด๋‚˜ Zapier ๊ฐ™์€ ์ž๋™ํ™” ๋„๊ตฌ๋ฅผ ํ†ตํ•ด ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด์š”.

Google Sheets → ์‹ ๊ทœ ๊ณ ๊ฐ ๋ฆฌ์ŠคํŠธ ์ฝ๊ธฐ
ChatGPT → ์ด๋ฉ”์ผ ์ž‘์„ฑ
Gmail API → ์ž๋™ ๋ฐœ์†ก

์ •ํ•ด์ง„ ๊ฒฝ๋กœ๋งŒ ๋”ฐ๋ผ๊ฐ€๋ฉด ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ๋ฌธ์ œ๋Š”?

"์ด๋ฒˆ์—” VIP ๊ณ ๊ฐํ•œํ…Œ๋งŒ ๋ณด๋‚ด๊ณ  ์‹ถ์€๋ฐ?"
๐Ÿ‘‰ ์šฐ๋ฆฌ๊ฐ€ ์ง์ ‘ ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ๋ฐ”๊ฟ”์•ผ ํ•ด์š”.

AI๋Š” ์Šค์Šค๋กœ ํŒ๋‹จํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.
์šฐ๋ฆฌ๊ฐ€ ์‹œํ‚จ ๋Œ€๋กœ๋งŒ ํ•ฉ๋‹ˆ๋‹ค.

 

 

๐Ÿชœ 3๋‹จ๊ณ„ – AI ์—์ด์ „ํŠธ: ํŒ๋‹จ๋„, ์‹คํ–‰๋„, ์ˆ˜์ •๋„ ์Šค์Šค๋กœ!

๋“œ๋””์–ด ์˜ค๋Š˜์˜ ์ฃผ์ธ๊ณต, AI ์—์ด์ „ํŠธ!

์ด์ œ๋Š” AI์—๊ฒŒ ๋‹จ์ˆœํžˆ "๋ญ˜ ํ•ด๋ผ"๊ฐ€ ์•„๋‹ˆ๋ผ
"์ด๋Ÿฐ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•ด์ค˜"๋ผ๊ณ  ๋งํ•  ์ˆ˜ ์žˆ์–ด์š”.

๐Ÿ“Œ ์˜ˆ์‹œ:

"VIP ๊ณ ๊ฐ์—๊ฒŒ ๋งž์ถค ์ด๋ฉ”์ผ์„ ๋งค์ฃผ ์ž๋™์œผ๋กœ ๋ณด๋‚ด์ค˜.
๋ฌธ์ฒด๋„ ๋„ˆ๋ฌด ๋”ฑ๋”ฑํ•˜์ง€ ์•Š๊ฒŒ ๋ถ€ํƒํ•ด."

๐Ÿค– AI ์—์ด์ „ํŠธ๋Š” ๋‹ค์Œ์ฒ˜๋Ÿผ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค:

  1. ํŒ๋‹จ – "VIP๋Š” ๊ตฌ๋งค ์ƒ์œ„ 10%๊ฒ ๋„ค!"
  2. ํ–‰๋™ – Google Sheets์—์„œ ํ•„ํ„ฐ๋ง, ์ด๋ฉ”์ผ ์ž๋™ ์ž‘์„ฑ
  3. ๊ฒ€ํ†  – ์ด๋ฉ”์ผ ๋ฌธ์žฅ์ด ๋„ˆ๋ฌด ๋”ฑ๋”ฑํ•˜๋‹ค๋ฉด ์Šค์Šค๋กœ ๋‹ค์‹œ ์ž‘์„ฑ
  4. ๋ฐ˜๋ณต – ์Šค์Šค๋กœ ์ ๊ฒ€ํ•˜๊ณ  ๊ฐœ์„ ํ•˜๋ฉด์„œ ์ตœ์ข… ๊ฒฐ๊ณผ๋ฌผ ์™„์„ฑ
  5. ๋ฐœ์†ก – ๊ณ ๊ฐ์—๊ฒŒ ์ž๋™ ๋ฐœ์†ก!

๐Ÿ‘‰ ์ธ๊ฐ„์€ ๋”ฑ ํ•˜๋‚˜๋งŒ ํ•ฉ๋‹ˆ๋‹ค. ๋ชฉํ‘œ ์ œ์‹œ.
๋‚˜๋จธ์ง€๋Š” AI๊ฐ€ ์Šค์Šค๋กœ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ” 3๋‹จ๊ณ„ ๋น„๊ต ์š”์•ฝ

๋‹จ๊ณ„ ์„ค๋ช… ์ธ๊ฐ„์˜ ์—ญํ•  AI์˜ ์—ญํ• 
1๋‹จ๊ณ„ LLM ์งˆ๋ฌธ/์ง€์‹œ ๋‹ต๋ณ€ (ํ…์ŠคํŠธ ์ƒ์„ฑ)
2๋‹จ๊ณ„ ์›Œํฌํ”Œ๋กœ์šฐ ์ „์ฒด ๊ฒฝ๋กœ ์„ค๊ณ„ ์ •ํ•ด์ง„ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰
3๋‹จ๊ณ„ ์—์ด์ „ํŠธ ๋ชฉํ‘œ๋งŒ ์ œ์‹œ ํŒ๋‹จ → ์‹คํ–‰ → ๋ฐ˜๋ณต ๊ฐœ์„ 

๐Ÿ‘ฉ‍๐Ÿ’ป ์ด์ œ ๊ฐœ๋ฐœ์ž๋‹ต๊ฒŒ! ๊ฐ ๋‹จ๊ณ„๋ณ„๋กœ ์–ด๋–ค ๊ธฐ์ˆ ์„ ์จ์•ผ ํ•˜๋‚˜์š”?

์•ž์—์„œ๋Š” AI ํ™œ์šฉ์˜ ๊ฐœ๋…์  ์ฐจ์ด๋ฅผ ์ด์•ผ๊ธฐํ–ˆ๋‹ค๋ฉด,
์ด์ œ๋Š” ๊ฐœ๋ฐœ์ž ๊ด€์ ์—์„œ ๊ฐ ๋‹จ๊ณ„๊ฐ€ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„๋˜๋Š”์ง€ ๊ธฐ์ˆ ์ ์œผ๋กœ ๋“ค์—ฌ๋‹ค๋ด…๋‹ˆ๋‹ค.

๐Ÿชœ 1๋‹จ๊ณ„ – LLM ํ™œ์šฉ (ํ…์ŠคํŠธ ์ƒ์„ฑ)

โœ… ๊ฐœ๋… ์š”์•ฝ:

์œ ์ €๊ฐ€ ์ž…๋ ฅํ•œ ํ…์ŠคํŠธ → LLM์— ์ „๋‹ฌ → ์‘๋‹ต ํ…์ŠคํŠธ ๋ฐ˜ํ™˜

์™„์ „ํžˆ Statelessํ•˜๊ณ , ์™ธ๋ถ€ ์‹œ์Šคํ…œ๊ณผ ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์€ ๊ตฌ์กฐ

๐Ÿงฐ ์‚ฌ์šฉ ๊ธฐ์ˆ  ์Šคํƒ:

  • OpenAI API (GPT-4, GPT-3.5)
  • Anthropic Claude, Google Gemini, Mistral, Hugging Face Transformers
  • Python ๋˜๋Š” JS ๊ธฐ๋ฐ˜ LLM ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

๐Ÿ› ๏ธ ๊ธฐ๋ณธ ๊ตฌํ˜„ ์˜ˆ (Python):

import openai

openai.api_key = "your-api-key"

response = openai.ChatCompletion.create(
  model="gpt-4",
  messages=[
    {"role": "user", "content": "๊ณ ๊ฐ ๊ฐ์‚ฌ ์ด๋ฉ”์ผ์„ ์จ์ค˜"},
  ]
)

print(response["choices"][0]["message"]["content"])

๐Ÿ’ก ์ฃผ์˜ํ•  ์ :

  • ๋ฐ์ดํ„ฐ ์ปจํ…์ŠคํŠธ ์œ ์ง€๋Š” ๋ถˆ๊ฐ€๋Šฅ (์„ธ์…˜ ๊ธฐ๋ฐ˜์ด ์•„๋‹˜)
  • ์™ธ๋ถ€ ์ •๋ณด (์บ˜๋ฆฐ๋”, DB ๋“ฑ)์— ์ ‘๊ทผ ๋ถˆ๊ฐ€ → ์ด ํ•œ๊ณ„๋ฅผ ๋„˜๊ธฐ๋ ค๋ฉด 2๋‹จ๊ณ„๋กœ ๊ฐ€์•ผ ํ•จ

๐Ÿชœ 2๋‹จ๊ณ„ – AI ์›Œํฌํ”Œ๋กœ์šฐ: ๋„๊ตฌ ๊ฐ„ ์ž๋™ํ™” ์—ฐ๊ฒฐ

๊ฐœ๋… ์š”์•ฝ:

์ •ํ•ด์ง„ ํ๋ฆ„์„ ๋”ฐ๋ผ LLM๊ณผ ์™ธ๋ถ€ ๋„๊ตฌ(API, DB, ์Šค์ผ€์ค„๋Ÿฌ ๋“ฑ)๋ฅผ ์—ฐ๊ฒฐํ•˜์—ฌ
์ž๋™ํ™”๋œ ํƒœ์Šคํฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ตฌ์กฐ.

๐Ÿ›  ์ฃผ์š” ๊ธฐ์ˆ  ์Šคํƒ:

๊ธฐ๋Šฅ ๋„๊ตฌ
์›Œํฌํ”Œ๋กœ์šฐ ๋นŒ๋” Make.com, Zapier, n8n
์„œ๋ฒ„๋ฆฌ์Šค API ํ˜ธ์ถœ AWS Lambda, Google Cloud Functions
๋ฐ์ดํ„ฐ ์ €์žฅ์†Œ Google Sheets API, Firebase, MongoDB, Supabase
LLM ํ†ตํ•ฉ OpenAI API, LangChain, LLMClient
์Šค์ผ€์ค„๋ง cron, Airflow, n8n ๋‚ด๋ถ€ ํŠธ๋ฆฌ๊ฑฐ

๐Ÿง‘‍๐Ÿ’ป ์˜ˆ์‹œ ๊ตฌ์กฐ:

[์Šค์ผ€์ค„๋Ÿฌ] → [Google Sheets → ์‹ ๊ทœ ๊ณ ๊ฐ ์ถ”์ถœ] → [OpenAI๋กœ ์ด๋ฉ”์ผ ์ƒ์„ฑ] → [Gmail API๋กœ ์ „์†ก]

LangChain ์‚ฌ์šฉ ์˜ˆ (Python):

from langchain.chat_models import ChatOpenAI
from langchain.chains import SimpleSequentialChain
from langchain.prompts import PromptTemplate

llm = ChatOpenAI(temperature=0.7)

prompt = PromptTemplate.from_template("๊ณ ๊ฐ {name}๋‹˜์—๊ฒŒ ๋ณด๋‚ผ ๊ฐ์‚ฌ ์ด๋ฉ”์ผ์„ ์ž‘์„ฑํ•ด์ค˜.")
chain = SimpleSequentialChain(llm=llm, prompt=prompt)

result = chain.run("ํ™๊ธธ๋™")
print(result)

โš™๏ธ ํŠน์ง•:

  • ๋ช…ํ™•ํ•œ ์‹คํ–‰ ์ˆœ์„œ๊ฐ€ ์กด์žฌ
  • ์œ ์—ฐํ•œ ์ž๋™ํ™” ๊ฐ€๋Šฅ
  • ํ•˜์ง€๋งŒ ์—ฌ์ „ํžˆ "๊ฒฐ์ •"์€ ์‚ฌ๋žŒ์ด ๋ฏธ๋ฆฌ ๊ตฌ์„ฑํ•ด๋†“์•„์•ผ ํ•จ

๐Ÿง  3๋‹จ๊ณ„ – AI Agent: ์ž์œจ์ ์ธ ํŒ๋‹จ & ์‹คํ–‰ ์‹œ์Šคํ…œ

๊ฐœ๋… ์š”์•ฝ:

AI๊ฐ€ ์ฃผ์–ด์ง„ ๋ชฉํ‘œ(goal)์— ๋”ฐ๋ผ ์Šค์Šค๋กœ ํŒ๋‹จ, ๋„๊ตฌ๋ฅผ ์„ ํƒํ•˜๊ณ ,
๋ฐ˜๋ณต ์ˆ˜์ •ํ•˜๋ฉฐ ์ตœ์ข… ๊ฒฐ๊ณผ๋ฅผ ๋งŒ๋“ค์–ด๋‚ด๋Š” ๊ตฌ์กฐ.

๐Ÿ›  ์ฃผ์š” ๊ธฐ์ˆ  ์Šคํƒ:

๊ธฐ๋Šฅ ๋„๊ตฌ
LLM ์‹คํ–‰ ๊ธฐ๋ฐ˜ OpenAI, HuggingFace, Claude, Gemini
์—์ด์ „ํŠธ ํ”„๋ ˆ์ž„์›Œํฌ โœ… LangGraph (LangChain ๊ธฐ๋ฐ˜ FSM)
โœ… AutoGPT
โœ… CrewAI, SuperAGI
ํˆด ํ˜ธ์ถœ LangChain Tools, Function Calling, ToolExecutor
๋ฉ”๋ชจ๋ฆฌ/์ƒํƒœ๊ด€๋ฆฌ LangChain Memory, Redis, Vector DB
ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„ Self-critique, LLM-as-a-critic, Reward Function
ํ™˜๊ฒฝ Docker, FastAPI, ECS, Lambda ๋“ฑ ์„ ํƒ ๊ฐ€๋Šฅ

์˜ˆ์‹œ: LangGraph (LangChain ๊ธฐ๋ฐ˜ FSM)

# LangGraph ๊ธฐ๋ฐ˜ ์—์ด์ „ํŠธ ์˜ˆ์‹œ ๊ตฌ์กฐ (๊ฐ„๋‹จํ™”)
from langgraph.graph import StateGraph
from langchain.agents import tool

@tool
def fetch_customers():
    return ["๊ณ ๊ฐ1", "๊ณ ๊ฐ2"]

@tool
def generate_email(name):
    return f"{name}๋‹˜ ์•ˆ๋…•ํ•˜์„ธ์š”, ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!"

graph = StateGraph()
graph.add_node("Fetch", fetch_customers)
graph.add_node("Write", generate_email)
graph.set_entry_point("Fetch")
graph.add_edge("Fetch", "Write")
graph.compile().invoke()

โš™๏ธ AI Agent์˜ ํ•ต์‹ฌ ๋™์ž‘:

  1. Goal ์ธ์‹: "VIP ๊ณ ๊ฐ์—๊ฒŒ ์ ์ ˆํ•œ ์ด๋ฉ”์ผ์„ ๋ณด๋‚ด๋ผ"
  2. Reasoning: "VIP๋Š” ์–ด๋–ป๊ฒŒ ์ •์˜๋ ๊นŒ?", "์–ด๋–ค ๋„๊ตฌ๋ฅผ ์จ์•ผ ํ• ๊นŒ?"
  3. Tool ์„ ํƒ & ์‹คํ–‰: DB, API, LLM, ์™ธ๋ถ€ ์‹œ์Šคํ…œ ๋“ฑ
  4. ์ž๊ธฐ ํ”ผ๋“œ๋ฐฑ & ๊ฐœ์„ : ๋ฌธ์žฅ ํ€„๋ฆฌํ‹ฐ ํ‰๊ฐ€ ํ›„ ์ž์ฒด ์ˆ˜์ •
  5. ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜
๋ฐ˜์‘ํ˜•