๐Ÿค— 51. HF Agents Course ๋ณธํŽธ 1 - ์ฝ”์Šค ์ง€๋„๋ถ€ํ„ฐ Alfred ์ฒซ ์‹คํ–‰๊นŒ์ง€ ํ•œ ๋ฒˆ์— ์ดํ•ดํ•˜๊ธฐ

๋ชฉํ‘œ: HF Agents Course์˜ ์ „์ฒด ํ•™์Šต ์ง€๋„๋ฅผ ๋จผ์ € ์žก๊ณ , Unit 1์—์„œ ๊ฐ•์กฐํ•˜๋Š” ์—์ด์ „ํŠธ ๊ธฐ๋ณธ ๋ฃจํ”„๋ฅผ smolagents๋กœ ์ง์ ‘ ์žฌํ˜„ํ•œ๋‹ค.

Hugging Face Agents Course๋ฅผ ์ฒ˜์Œ ๋ณด๋ฉด ์ •๋ณด๊ฐ€ ๋งŽ์•„ ๋ณด์ด์ง€๋งŒ, ์‹ค์ œ ์ถœ๋ฐœ์ ์€ ๋‹จ์ˆœํ•˜๋‹ค. ๋จผ์ € ์ด ์ฝ”์Šค๊ฐ€ ์–ด๋””๊นŒ์ง€ ๊ฐ€๋Š”์ง€๋ฅผ ์ดํ•ดํ•˜๊ณ , ๊ทธ๋‹ค์Œ ์—์ด์ „ํŠธ๊ฐ€ ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜๊ณ  ํ–‰๋™ํ•˜๋Š”์ง€๋ฅผ ์•„์ฃผ ์ž‘์€ ์˜ˆ์ œ๋กœ ํ™•์ธํ•˜๋ฉด ๋œ๋‹ค. ๊ณต์‹ GitHub ์ €์žฅ์†Œ์™€ ์ฝ”์Šค ํŽ˜์ด์ง€๋Š” Unit 1์„ ์—์ด์ „ํŠธ ๊ธฐ์ดˆ, Unit 2๋ฅผ ํ”„๋ ˆ์ž„์›Œํฌ, Unit 3๋ฅผ ์œ ์Šค์ผ€์ด์Šค, Unit 4๋ฅผ ์ตœ์ข… ๊ณผ์ œ๋กœ ๋ฐฐ์น˜ํ•œ๋‹ค. ์ฆ‰, ์ฒซ ํŽธ์—์„œ ํ•ด์•ผ ํ•  ์ผ์€ ํ™”๋ คํ•œ ๋ฐ๋ชจ๊ฐ€ ์•„๋‹ˆ๋ผ ํ•™์Šต ์ง€ํ˜• ํŒŒ์•… + ์ตœ์†Œ ์‹คํ–‰ ์„ฑ๊ณต์ด๋‹ค.

๋จผ์ € ์žก์•„์•ผ ํ•  ํฐ ๊ทธ๋ฆผ

flowchart TD
    A[HF Agents Course ์‹œ์ž‘] --> B[Unit 1: ์—์ด์ „ํŠธ ๊ธฐ์ดˆ]
    B --> C[๋ฌธ์ œ ํ•ด์„]
    C --> D[Think]
    D --> E[Act]
    E --> F[Observe]
    F --> G{๋ชฉํ‘œ ๋‹ฌ์„ฑ?}
    G -- ์•„๋‹ˆ์˜ค --> D
    G -- ์˜ˆ --> H[์ตœ์ข… ๋‹ต๋ณ€]
    A --> I[Unit 2: smolagentsยทLangGraphยทLlamaIndex]
    A --> J[Unit 3: Agentic RAG ๋“ฑ ์œ ์Šค์ผ€์ด์Šค]
    A --> K[Unit 4: ๊ณผ์ œยทํ‰๊ฐ€]

์ด ๊ทธ๋ฆผ์˜ ํ•ต์‹ฌ์€ ํ•˜๋‚˜๋‹ค. Unit 1์€ ์ดํ›„ ๋ชจ๋“  ํ”„๋ ˆ์ž„์›Œํฌ ํ•™์Šต์˜ ๊ณตํ†ต ์›๋ฆฌ๋ฅผ ์žก๋Š” ๊ตฌ๊ฐ„์ด๋ผ๋Š” ์ ์ด๋‹ค.

๊ณต์‹ ์ž๋ฃŒ ๊ธฐ์ค€ ํ•ต์‹ฌ ์š”์•ฝ

1) ์ฝ”์Šค๋Š” ๋‹จ๊ณ„ํ˜•์ด๋‹ค

๊ณต์‹ ์ €์žฅ์†Œ์™€ ์ฝ”์Šค ์†Œ๊ฐœ ํŽ˜์ด์ง€ ๊ธฐ์ค€์œผ๋กœ HF Agents Course๋Š” ๋‹ค์Œ ์ˆœ์„œ๋กœ ์ง„ํ–‰๋œ๋‹ค.

  • Unit 0: ์˜จ๋ณด๋”ฉ
  • Unit 1: ์—์ด์ „ํŠธ ๊ธฐ์ดˆ
  • Unit 2: ํ”„๋ ˆ์ž„์›Œํฌ ๋น„๊ต์™€ ์‹ค์Šต
  • Unit 3: ์‹ค์ œ ์œ ์Šค์ผ€์ด์Šค
  • Unit 4: ์ตœ์ข… ๊ณผ์ œ์™€ ํ‰๊ฐ€

์ดˆ๋ณด์ž๋ผ๋ฉด ์ง€๊ธˆ ๋‹น์žฅ Unit 2 ๋ฌธ๋ฒ•์œผ๋กœ ๋›ฐ์–ด๋“ค๊ธฐ๋ณด๋‹ค, Unit 1์˜ ๋„๊ตฌยทํ–‰๋™ยท๊ด€์ฐฐ ๊ฐœ๋…์„ ๋จผ์ € ๋ชธ์— ์ตํžˆ๋Š” ํŽธ์ด ํ›จ์”ฌ ๋น ๋ฅด๋‹ค.

2) ์—์ด์ „ํŠธ๋Š” ๋ชฉํ‘œ ํ•ด๊ฒฐ ํ๋ฆ„์ด๋‹ค

์ผ๋ฐ˜ ์ฑ—๋ด‡์€ ๋‹ต์„ ๋ฐ”๋กœ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ๊ฐ•ํ•˜์ง€๋งŒ, ์—์ด์ „ํŠธ๋Š” ๋‹ค์Œ ํ๋ฆ„์„ ๊ฐ€์ง„๋‹ค.

  • ๋ชฉํ‘œ๋ฅผ ํ•ด์„ํ•œ๋‹ค.
  • ํ•„์š”ํ•œ ๋„๊ตฌ๋ฅผ ๊ณ ๋ฅธ๋‹ค.
  • ๋„๊ตฌ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ๋ณธ๋‹ค.
  • ๋ถ€์กฑํ•˜๋ฉด ํ•œ ๋ฒˆ ๋” ์‹œ๋„ํ•œ๋‹ค.
  • ์ถฉ๋ถ„ํ•˜๋ฉด ์ตœ์ข… ๋‹ต์„ ๋‚ธ๋‹ค.

์ด ๊ตฌ์กฐ๋ฅผ ๋ณดํ†ต Think โ†’ Act โ†’ Observe๋กœ ์ดํ•ดํ•˜๋ฉด ๋œ๋‹ค.

3) smolagents๋Š” ์ฒซ ์‹ค์Šต์šฉ์œผ๋กœ ๊ฐ€๋ณ๋‹ค

๊ณต์‹ smolagents ๋ฌธ์„œ๋Š” ์•„์ฃผ ์ ์€ ์ฝ”๋“œ๋กœ ์ฒซ ์—์ด์ „ํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ฒŒ ์„ค๊ณ„๋˜์–ด ์žˆ๋‹ค. ์ž…๋ฌธ ๋‹จ๊ณ„์—์„œ๋Š” ์ด ๋‹จ์ˆœํ•จ์ด ์žฅ์ ์ด๋‹ค. ๋ณต์žกํ•œ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜๋ณด๋‹ค ์ž‘๊ฒŒ ์‹คํ–‰ํ•ด ๋ณด๊ณ  ๋ฐ”๋กœ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋Š” ๊ฒฝํ—˜์ด ์ค‘์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

์ด๋ฒˆ ๊ธ€์˜ ์‹ค์Šต ๋ชฉํ‘œ

์ด๋ฒˆ ๊ธ€์—์„œ๋Š” ์•„๋ž˜ 2๊ฐ€์ง€๋ฅผ ์žฌํ˜„ํ•œ๋‹ค.

  1. smolagents ์‹คํ–‰ ํ™˜๊ฒฝ์„ ์ค€๋น„ํ•œ๋‹ค.
  2. Alfred ์Šคํƒ€์ผ์˜ ์•„์ฃผ ์ž‘์€ ์—์ด์ „ํŠธ๋ฅผ ์‹คํ–‰ํ•ด ๋„๊ตฌ ์‚ฌ์šฉ ํ๋ฆ„์„ ํ™•์ธํ•œ๋‹ค.

์ค€๋น„๋ฌผ

  • Python 3.10 ์ด์ƒ
  • ํ„ฐ๋ฏธ๋„
  • ์ธํ„ฐ๋„ท ์—ฐ๊ฒฐ
  • ํ•„์š” ์‹œ Hugging Face ํ† ํฐ (HF_TOKEN)

์‹ค์Šต 1) ์ž‘์—… ํด๋” ์ค€๋น„

๋„๊ตฌ

  • ํ„ฐ๋ฏธ๋„

์ž…๋ ฅ

mkdir -p ~/hf-agents-course-alfred
cd ~/hf-agents-course-alfred

์„ฑ๊ณต ํŒ์ •

pwd
  • ์ถœ๋ ฅ ๊ฒฝ๋กœ ๋์ด hf-agents-course-alfred์ด๋ฉด ์„ฑ๊ณต.

์‹ค์Šต 2) ๊ฐ€์ƒํ™˜๊ฒฝ๊ณผ ํŒจํ‚ค์ง€ ์„ค์น˜

์ž…๋ ฅ

python3 -m venv .venv
source .venv/bin/activate
python -m pip install -U pip
pip install "smolagents[toolkit]"

์„ฑ๊ณต ํŒ์ •

python -c "import smolagents; print(smolagents.__version__)"
  • ๋ฒ„์ „ ๋ฌธ์ž์—ด์ด ์ถœ๋ ฅ๋˜๋ฉด ์„ค์น˜ ์„ฑ๊ณต.

์‹ค์Šต 3) Alfred ์Šคํƒ€์ผ ์ฒซ ์—์ด์ „ํŠธ ์ž‘์„ฑ

์ด๋ฒˆ ์˜ˆ์ œ๋Š” โ€œ๊ฐ„๋‹จํ•œ ๊ณ„์‚ฐ์„ ๋„๊ตฌ๋กœ ์ฒ˜๋ฆฌํ•˜๊ณ , ๊ฒฐ๊ณผ๋ฅผ ์งง๊ฒŒ ์„ค๋ช…ํ•˜๋Š” ๋ณด์กฐ ์—์ด์ „ํŠธโ€๋‹ค. ์ด๋ฆ„๋งŒ Alfred ์Šคํƒ€์ผ๋กœ ๋‘๊ณ , ๊ตฌ์กฐ๋Š” ์ดˆ๋ณด์ž์—๊ฒŒ ๋ณด์ด๊ธฐ ์‰ฝ๊ฒŒ ์ตœ์†Œํ™”ํ–ˆ๋‹ค.

ํŒŒ์ผ๋ช…

alfred_first_agent.py

์ž…๋ ฅ

from smolagents import CodeAgent, InferenceClientModel, tool
 
@tool
def calculator(expression: str) -> str:
    """Evaluate a simple arithmetic expression.
 
    Args:
        expression: A math expression using numbers and + - * / ( )
    """
    allowed = set("0123456789+-*/(). ")
    if any(ch not in allowed for ch in expression):
        return "Only simple arithmetic is allowed."
 
    try:
        result = eval(expression, {"__builtins__": {}}, {})
        return str(result)
    except Exception as e:
        return f"calculation-error: {e}"
 
model = InferenceClientModel()
 
alfred = CodeAgent(
    tools=[calculator],
    model=model,
    max_steps=5,
)
 
question = "์›” 29๋‹ฌ๋Ÿฌ ์ƒํ’ˆ์„ 18๋ช…์ด ๊ตฌ๋…ํ•˜๋ฉด ์›” ๋งค์ถœ์€ ์–ผ๋งˆ์ธ์ง€ ๊ณ„์‚ฐํ•˜๊ณ  ํ•œ ์ค„๋กœ ์„ค๋ช…ํ•ด์ค˜."
result = alfred.run(question)
print(result)

์‹ค์Šต 4) ์‹คํ–‰ํ•˜๊ธฐ

์‹คํ–‰ ๋ช…๋ น

python alfred_first_agent.py

์„ฑ๊ณต ํŒ์ •

์•„๋ž˜ 3๊ฐ€์ง€๋ฅผ ๋งŒ์กฑํ•˜๋ฉด ๋œ๋‹ค.

  1. ํ”„๋กœ๊ทธ๋žจ์ด ์˜ˆ์™ธ ์—†์ด ์ข…๋ฃŒ๋œ๋‹ค.
  2. ๊ฒฐ๊ณผ์— 522๊ฐ€ ํฌํ•จ๋œ๋‹ค.
  3. ๊ณ„์‚ฐ ๊ฒฐ๊ณผ๋ฅผ ์„ค๋ช…ํ•˜๋Š” ์งง์€ ํ•œ๊ตญ์–ด ๋˜๋Š” ์˜์–ด ๋ฌธ์žฅ์ด ํ•จ๊ป˜ ๋‚˜์˜จ๋‹ค.

์‹ค์Šต 5) ๋„๊ตฌ ์‚ฌ์šฉ ์—ฌ๋ถ€ ์ฒด๊ฐํ•˜๊ธฐ

์ด์ œ ๋„๊ตฌ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ๋‹ค์‹œ ์‹คํ–‰ํ•ด ๋ณธ๋‹ค.

์ˆ˜์ • ํฌ์ธํŠธ

tools=[]

์ฆ‰, ์•„๋ž˜ ํ•œ ์ค„์„

tools=[calculator]

์ด๋ ‡๊ฒŒ ๋ฐ”๊พผ๋‹ค.

tools=[]

์‹คํ–‰ ๋ช…๋ น

python alfred_first_agent.py

์„ฑ๊ณต ํŒ์ •

  • ์‘๋‹ต์€ ์ƒ์„ฑ๋  ์ˆ˜ ์žˆ๋‹ค.
  • ํ•˜์ง€๋งŒ ๊ณ„์‚ฐ ์ •ํ™•๋„์™€ ์žฌํ˜„์„ฑ์ด ๋„๊ตฌ ๋ฒ„์ „๋ณด๋‹ค ํ”๋“ค๋ฆด ์ˆ˜ ์žˆ๋‹ค.
  • ์ด ์ฐจ์ด๋ฅผ ํ™•์ธํ•˜๋ฉด Unit 1์—์„œ ์™œ ๋„๊ตฌ ๊ฐœ๋…์„ ๊ฐ•์กฐํ•˜๋Š”์ง€ ๊ฐ์ด ์žกํžŒ๋‹ค.

์ดˆ๋ณด์ž์šฉ ํ•ด์„ค

์™œ ๊ณ„์‚ฐ๊ธฐ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋‚˜?

๊ฒ€์ƒ‰, ๋ธŒ๋ผ์šฐ์ €, API ๋„๊ตฌ๋Š” ๋งค๋ฒˆ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๊ฐ€ ๋งŽ๋‹ค. ๋ฐ˜๋ฉด ๊ณ„์‚ฐ๊ธฐ๋Š” ์ž…๋ ฅ๊ณผ ์ •๋‹ต์ด ๋ช…ํ™•ํ•ด์„œ ์—์ด์ „ํŠธ ๋ฃจํ”„๋ฅผ ๋ฐฐ์šฐ๊ธฐ์— ์ข‹๋‹ค.

์™œ CodeAgent๋ฅผ ์“ฐ๋‚˜?

smolagents ๋ฌธ์„œ์—์„œ ๊ฐ•์กฐํ•˜๋“ฏ CodeAgent๋Š” ์ž‘์—… ๋‹จ๊ณ„๋ฅผ ์ฝ”๋“œ์ฒ˜๋Ÿผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์–ด, ๋„๊ตฌ ์กฐํ•ฉ์ด๋‚˜ ๋ฐ˜๋ณต ๋กœ์ง์„ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๋‹ค. ์ž…๋ฌธ ๋‹จ๊ณ„์—์„œ๋Š” โ€œ์—์ด์ „ํŠธ๊ฐ€ ์ค‘๊ฐ„ ํ–‰๋™์„ ์กฐ์งํ•œ๋‹คโ€๋Š” ๊ฐ๊ฐ์„ ์žก๊ธฐ์— ์ข‹๋‹ค.

์™œ ์„ฑ๊ณต ํŒ์ •์„ ๋”ฐ๋กœ ์ ๋‚˜?

์ดˆ๋ณด์ž๋Š” โ€œ์‹คํ–‰์€ ๋๋Š”๋ฐ ๋‚ด๊ฐ€ ๋งž๊ฒŒ ํ•œ ๊ฑด์ง€โ€์—์„œ ์ž์ฃผ ๋ง‰ํžŒ๋‹ค. ๊ทธ๋ž˜์„œ ์‹ค์Šต ๋ฌธ์„œ์—๋Š” ๋ฐ˜๋“œ์‹œ ๋„๊ตฌ / ์ž…๋ ฅ / ์‹คํ–‰ ๋ช…๋ น / ์„ฑ๊ณต ํŒ์ •์ด ์žˆ์–ด์•ผ ์žฌํ˜„์„ฑ์ด ์˜ฌ๋ผ๊ฐ„๋‹ค.

์‹ค๋ฌด ์ ์šฉ ํฌ์ธํŠธ

1) ๋งˆ์ผ€ํŒ… ์ˆซ์ž ๊ฒ€์‚ฐ

CTR, CPA, ROAS, ๊ตฌ๋… ๋งค์ถœ ๊ณ„์‚ฐ์ฒ˜๋Ÿผ ์ž‘์€ ์ˆซ์ž ์—…๋ฌด๋ฅผ ๋จผ์ € ๋งก๊ธฐ๊ธฐ ์ข‹๋‹ค.

2) ์šด์˜ํŒ€ ๋ฐ˜๋ณต ์งˆ๋ฌธ ์ž๋™ํ™”

๋ฐ˜ํ’ˆ๋ฅ , ํ• ์ธ์œจ, ์ •์‚ฐ์•ก ๊ฐ™์€ ๊ณ„์‚ฐ ์งˆ๋ฌธ์„ ์—์ด์ „ํŠธ ์ž…๋ ฅ์œผ๋กœ ๋ฐ”๊ฟ” ๋น ๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.

3) ๋‹ค์Œ ํ™•์žฅ ๊ฒฝ๋กœ

์ถ”์ฒœ ์ˆœ์„œ๋Š” ์•„๋ž˜์ฒ˜๋Ÿผ ๊ฐ€๋ฉด ์•ˆ์ •์ ์ด๋‹ค.

  1. ๊ณ„์‚ฐ๊ธฐ ๋„๊ตฌ
  2. CSV ์ฝ๊ธฐ ๋„๊ตฌ
  3. ์›น ๊ฒ€์ƒ‰ ๋„๊ตฌ
  4. ์™ธ๋ถ€ API ๋„๊ตฌ
  5. ๋ฉ€ํ‹ฐ์Šคํ… ์›Œํฌํ”Œ๋กœ

์ž์ฃผ ๋ง‰ํžˆ๋Š” ๋ฌธ์ œ

ModuleNotFoundError: smolagents

source .venv/bin/activate
pip install "smolagents[toolkit]"

๋ชจ๋ธ ํ˜ธ์ถœ ๋˜๋Š” ์ธ์ฆ ์˜ค๋ฅ˜

ํ™˜๊ฒฝ์— ๋”ฐ๋ผ Hugging Face ํ† ํฐ์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ๋‹ค.

export HF_TOKEN=hf_your_token_here
python alfred_first_agent.py

๋‹ต์ด ์žฅํ™ฉํ•˜๊ฑฐ๋‚˜ ๋ถˆ์•ˆ์ •ํ•  ๋•Œ

  • ์งˆ๋ฌธ์„ ์งง๊ฒŒ ์“ด๋‹ค.
  • max_steps๋ฅผ 4~5 ์ •๋„๋กœ ์ œํ•œํ•œ๋‹ค.
  • ์ฒ˜์Œ์—” ๊ณ„์‚ฐ์ฒ˜๋Ÿผ ์ •๋‹ต์ด ๋ถ„๋ช…ํ•œ ํƒœ์Šคํฌ๋กœ ๊ฒ€์ฆํ•œ๋‹ค.

eval์ด ๋ถ€๋‹ด๋  ๋•Œ

๊ทธ ์šฐ๋ ค๋Š” ๋งž๋‹ค. ์šด์˜ ํ™˜๊ฒฝ์—์„œ๋Š” ์•ˆ์ „ํ•œ ํŒŒ์„œ๋‚˜ ๊ฒ€์ฆ๋œ ์ˆ˜์‹ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๋ฐ”๊พธ๋Š” ํŽธ์ด ๋‚ซ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ์—์ด์ „ํŠธ ๊ตฌ์กฐ ์ดํ•ด์šฉ ์ตœ์†Œ ์˜ˆ์ œ๋กœ๋งŒ ์‚ฌ์šฉํ•œ๋‹ค.

์ถ”์ฒœ ํ•™์Šต ์ˆœ์„œ

  1. ์ฝ”์Šค ์†Œ๊ฐœ ํŽ˜์ด์ง€๋กœ ์ „์ฒด ๋กœ๋“œ๋งต ํ™•์ธ
  2. Unit 1์˜ ๊ธฐ๋ณธ ๊ฐœ๋… ์ฝ๊ธฐ
  3. smolagents Quickstart ํ™•์ธ
  4. ์ด ๊ธ€ ์‹ค์Šต์œผ๋กœ ์ฒซ ์—์ด์ „ํŠธ ์‹คํ–‰
  5. ๋‹ค์Œ ๊ธ€์—์„œ ๋„๊ตฌ ํ™•์žฅ ๋˜๋Š” ์‹ค์ŠตํŽธ์œผ๋กœ ์ด๋™

ํ•œ ์ค„ ์š”์•ฝ

HF Agents Course ๋ณธํŽธ 1์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์ฒซ ์„ฑ๊ณต์€ ์ฝ”์Šค ์ „์ฒด ์ง€๋„๋ฅผ ์ดํ•ดํ•˜๊ณ , ๋„๊ตฌ๋ฅผ ์“ฐ๋Š” ์ตœ์†Œ ์—์ด์ „ํŠธ๋ฅผ ์ง์ ‘ ํ•œ ๋ฒˆ ๋Œ๋ ค๋ณด๋Š” ๊ฒƒ์ด๋‹ค.


์ƒ์„ฑํ˜• AI ํ™œ์šฉ ๊ณ ์ง€

์ด ๋ฌธ์„œ๋Š” ์ƒ์„ฑํ˜• AI๋กœ ์ดˆ์•ˆ์„ ์ž‘์„ฑํ•œ ๋’ค, Hugging Face Agents Course GitHub ์ €์žฅ์†Œ, ๊ณต์‹ ์ฝ”์Šค ํŽ˜์ด์ง€, smolagents ๋ฌธ์„œ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์‚ฌ๋žŒ์ด ์žฌํ˜„ ๋‹จ๊ณ„, ๋ช…๋ น์–ด, ์„ฑ๊ณต ํŒ์ •, ๋งํฌ ๊ตฌ์กฐ๋ฅผ ๊ฒ€ํ† ํ•ด ํŽธ์ง‘ํ–ˆ์Šต๋‹ˆ๋‹ค.