Post

[LLM] ๐Ÿง  ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง ์™„์ „ ๊ฐ€์ด๋“œ: Zero-shot, Few-shot, CoT๋ถ€ํ„ฐ ReAct๊นŒ์ง€

Zero-shot, One-shot, Few-shot, Chain-of-Thought, ReAct๊นŒ์ง€ ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง์˜ ํ•ต์‹ฌ ๊ธฐ๋ฒ•๋“ค์„ ์‹ค์ œ ์˜ˆ์‹œ์™€ ํ•จ๊ป˜ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. LLM์˜ ๋‹ต๋ณ€ ํ’ˆ์งˆ์„ ๊ฒฐ์ •ํ•˜๋Š” ํ”„๋กฌํ”„ํŠธ ์„ค๊ณ„ ์ „๋žต์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

[LLM] ๐Ÿง  ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง ์™„์ „ ๊ฐ€์ด๋“œ: Zero-shot, Few-shot, CoT๋ถ€ํ„ฐ ReAct๊นŒ์ง€

ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง์€ LLM์ด ์ตœ์ ์˜ ๋‹ต๋ณ€์„ ์ƒ์„ฑํ•˜๋„๋ก ์ž…๋ ฅ ํ…์ŠคํŠธ์˜ ํ˜•์‹, ๋งฅ๋ฝ, ๊ตฌ์กฐ๋ฅผ ์„ค๊ณ„ํ•˜๋Š” ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ๋‹จ์–ด ํ•˜๋‚˜์˜ ์ฐจ์ด๊ฐ€ ๊ฒฐ๊ณผ๋ฅผ ํฌ๊ฒŒ ๋ฐ”๊พธ๋ฉฐ, ์˜ˆ์‹œ ์ œ๊ณต ๋ฐฉ์‹์— ๋”ฐ๋ผ Zero-shot๋ถ€ํ„ฐ Few-shot CoT๊นŒ์ง€ ๋‹ค์–‘ํ•œ ๊ธฐ๋ฒ•์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” ๊ธฐ๋ณธ ๊ธฐ๋ฒ•์˜ ๊ฐœ๋…๊ณผ ์ฐจ์ด๋ถ€ํ„ฐ Chain-of-Thought, Tree-of-Thought, ReAct ๊ฐ™์€ ๊ณ ๊ธ‰ ๊ธฐ๋ฒ•๊นŒ์ง€ ์‹ค์ œ ํ”„๋กฌํ”„ํŠธ ์˜ˆ์‹œ์™€ ํ•จ๊ป˜ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.


๐Ÿค” ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง์ด๋ž€?

ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง์€ AI๊ฐ€ ์ตœ์ƒ์˜ ๋‹ต๋ณ€์„ ์ƒ์„ฑํ•˜๋„๋ก ์ž…๋ ฅ๊ฐ’(ํ”„๋กฌํ”„ํŠธ)์„ ์„ค๊ณ„ํ•˜๊ณ  ์ตœ์ ํ™”ํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ๊ฐ™์€ ์งˆ๋ฌธ์ด๋ผ๋„ ์–ด๋–ป๊ฒŒ ํ‘œํ˜„ํ•˜๋А๋ƒ์— ๋”ฐ๋ผ LLM์˜ ๋‹ต๋ณ€ ํ’ˆ์งˆ์ด ๊ทน์ ์œผ๋กœ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

1
2
3
4
5
6
# ๋‚˜์œ ํ”„๋กฌํ”„ํŠธ
"์š”์•ฝํ•ด์ค˜"

# ์ข‹์€ ํ”„๋กฌํ”„ํŠธ
"๋‹ค์Œ ๊ธฐ์ˆ  ๋ฌธ์„œ๋ฅผ ๋น„๊ฐœ๋ฐœ์ž๋„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์ˆ˜์ค€์œผ๋กœ
 3๋ฌธ์žฅ ์ด๋‚ด ํ•œ๊ตญ์–ด ๊ธ€๋จธ๋ฆฌ ๋ชฉ๋ก์œผ๋กœ ์š”์•ฝํ•ด์ค˜."

ํ”„๋กฌํ”„ํŠธ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ 4๊ฐ€์ง€ ์š”์†Œ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค:

์š”์†Œ์„ค๋ช…์˜ˆ์‹œ
InstructionAI์—๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ž‘์—… ์ง€์‹œโ€œ๋‹ค์Œ ํ…์ŠคํŠธ๋ฅผ ๊ฐ์ • ๋ถ„๋ฅ˜ํ•ด์ค˜โ€
Context๋ฐฐ๊ฒฝ ์ •๋ณด, ์ œ์•ฝ ์กฐ๊ฑดโ€œ๊ณ ๊ฐ ๋ฆฌ๋ทฐ ๋ฐ์ดํ„ฐ์ž…๋‹ˆ๋‹คโ€
Input์‹ค์ œ ์ฒ˜๋ฆฌํ•  ๋ฐ์ดํ„ฐ๋ฆฌ๋ทฐ ํ…์ŠคํŠธ
Output Indicator์›ํ•˜๋Š” ์ถœ๋ ฅ ํ˜•์‹โ€œ๊ธ์ •/๋ถ€์ •/์ค‘๋ฆฝ ์ค‘ ํ•˜๋‚˜๋กœ๋งŒ ๋‹ตํ•ด์ค˜โ€

1๏ธโƒฃ Zero-Shot ํ”„๋กฌํ”„ํŒ…

Zero-Shot์€ ์˜ˆ์‹œ(์˜ˆ์ œ) ์—†์ด ์ง€์‹œ๋งŒ์œผ๋กœ AI์—๊ฒŒ ์ž‘์—…์„ ์ˆ˜ํ–‰์‹œํ‚ค๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. โ€œ์˜์ (0๊ฐœ์˜ ์˜ˆ์‹œ)โ€์ด๋ผ๋Š” ์ด๋ฆ„ ๊ทธ๋Œ€๋กœ์ž…๋‹ˆ๋‹ค.

AI์˜ ์‚ฌ์ „ํ•™์Šต ์ง€์‹๋งŒ์œผ๋กœ ์ž‘์—…ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋น ๋ฅด๊ณ  ๊ฐ„ํŽธํ•˜์ง€๋งŒ, ๋ณต์žกํ•˜๊ฑฐ๋‚˜ ํŠน์ˆ˜ํ•œ ํ˜•์‹์˜ ์ž‘์—…์—์„œ๋Š” ๊ฒฐ๊ณผ๊ฐ€ ๋ถˆ์•ˆ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1
2
3
4
# Zero-Shot ์˜ˆ์‹œ โ€” ๊ฐ์ • ๋ถ„๋ฅ˜
"๋‹ค์Œ ๋ฌธ์žฅ์˜ ๊ฐ์ •์„ ๊ธ์ •, ๋ถ€์ •, ์ค‘๋ฆฝ ์ค‘ ํ•˜๋‚˜๋กœ ๋ถ„๋ฅ˜ํ•˜์„ธ์š”.

๋ฌธ์žฅ: ์˜ค๋Š˜ ๋ฐฐ์†ก์ด ๋„ˆ๋ฌด ๋Šฆ์–ด์„œ ์‹ค๋งํ–ˆ์–ด์š”."
1
2
3
4
# Zero-Shot ์˜ˆ์‹œ โ€” ๋ฒˆ์—ญ
"๋‹ค์Œ ๋ฌธ์žฅ์„ ์˜์–ด๋กœ ๋ฒˆ์—ญํ•ด์ค˜.

๋ฌธ์žฅ: ์ธ๊ณต์ง€๋Šฅ์€ ๋ฏธ๋ž˜๋ฅผ ๋ฐ”๊ฟ€ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค."

์ ํ•ฉํ•œ ์ƒํ™ฉ: ์ผ๋ฐ˜์ ์ธ ๋ฒˆ์—ญ, ๊ฐ„๋‹จํ•œ ์š”์•ฝ, ๊ธฐ๋ณธ ์งˆ์˜์‘๋‹ต์ฒ˜๋Ÿผ ๋ช…ํ™•ํ•˜๊ณ  ๋‹จ์ˆœํ•œ ์ž‘์—…


2๏ธโƒฃ One-Shot ํ”„๋กฌํ”„ํŒ…

One-Shot์€ ํ•˜๋‚˜์˜ ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ๋ฅผ ์ œ๊ณตํ•œ ํ›„ ๊ฐ™์€ ํŒจํ„ด์œผ๋กœ ๋‹ต๋ณ€์„ ์š”์ฒญํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

1
2
3
4
5
6
7
8
9
# One-Shot ์˜ˆ์‹œ โ€” ๊ฐ์ • ๋ถ„๋ฅ˜
"๋‹ค์Œ ํ˜•์‹์œผ๋กœ ๊ฐ์ •์„ ๋ถ„๋ฅ˜ํ•ด์ค˜.

์˜ˆ์‹œ:
์ž…๋ ฅ: ๋ฐฐ์†ก์ด ๋น ๋ฅด๊ณ  ํฌ์žฅ์ด ๊น”๋”ํ•ด์„œ ๋งŒ์กฑํ•ฉ๋‹ˆ๋‹ค.
์ถœ๋ ฅ: ๊ธ์ •

์ž…๋ ฅ: ์ œํ’ˆ ์ƒ‰์ƒ์ด ์‚ฌ์ง„๊ณผ ๋‹ฌ๋ผ์„œ ๋‹นํ™ฉํ–ˆ์–ด์š”.
์ถœ๋ ฅ:"

์˜ˆ์‹œ ํ•˜๋‚˜๋งŒ์œผ๋กœ๋„ AI๊ฐ€ ์›ํ•˜๋Š” ์ถœ๋ ฅ ํ˜•์‹์„ ํŒŒ์•…ํ•˜์—ฌ ์ผ๊ด€๋œ ์‘๋‹ต์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.


3๏ธโƒฃ Few-Shot ํ”„๋กฌํ”„ํŒ…

Few-Shot์€ 2~5๊ฐœ์˜ ์˜ˆ์‹œ๋ฅผ ์ œ๊ณตํ•˜์—ฌ AI๊ฐ€ ํŒจํ„ด์„ ํ•™์Šตํ•˜๊ณ  ์ผ๊ด€๋œ ๊ฒฐ๊ณผ๋ฅผ ๋‚ด๋„๋ก ์œ ๋„ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. Zero-Shot๋ณด๋‹ค ํ›จ์”ฌ ์•ˆ์ •์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Few-Shot ์˜ˆ์‹œ โ€” ์‹ ์กฐ์–ด ๊ฐ์ • ๋ถ„์„
"๋‹ค์Œ ํ˜•์‹์œผ๋กœ ๋ฆฌ๋ทฐ์˜ ๊ฐ์ •์„ ๋ถ„๋ฅ˜ํ•ด์ค˜.

์ž…๋ ฅ: ์ด ์นดํŽ˜ ๋ถ„์œ„๊ธฐ ๋ ˆ์ „๋“œ๋‹ค
์ถœ๋ ฅ: ๊ธ์ •

์ž…๋ ฅ: ์Œ์‹์ด ์กด๋ง›ํƒฑ์ด์—์š”
์ถœ๋ ฅ: ๊ธ์ •

์ž…๋ ฅ: ์„œ๋น„์Šค๊ฐ€ ๋ณ„๋กœ๊ณ  ๊ฐ€์„ฑ๋น„๋„ ๊ตฌ๋ฆผ
์ถœ๋ ฅ: ๋ถ€์ •

์ž…๋ ฅ: ์ธํ…Œ๋ฆฌ์–ด๋Š” ๊ฐ“๋ฒฝํ•œ๋ฐ ๊ฐ€๊ฒฉ์ด ์ข€ ์„ธ๋„ค์š”
์ถœ๋ ฅ:"

์ข‹์€ ์˜ˆ์‹œ๋ฅผ ๊ณ ๋ฅด๋Š” ๊ธฐ์ค€

  • ๋‹ค์–‘์„ฑ: ๋‹ค์–‘ํ•œ ์ผ€์ด์Šค๋ฅผ ํฌํ•จํ•ด AI๊ฐ€ ํŒจํ„ด์„ ์ผ๋ฐ˜ํ™”ํ•˜๋„๋ก ์œ ๋„
  • ๋ช…ํ™•์„ฑ: ๊ฐ ์ž…์ถœ๋ ฅ์ด 1:1๋กœ ๋ช…ํ™•ํ•˜๊ฒŒ ๋Œ€์‘
  • ์ผ๊ด€์„ฑ: ๋ชจ๋“  ์˜ˆ์‹œ๊ฐ€ ๋™์ผํ•œ ํ˜•์‹์„ ๋”ฐ๋ฆ„
  • ๊ด€๋ จ์„ฑ: ์‹ค์ œ ์š”์ฒญ๊ณผ ์œ ์‚ฌํ•œ ๋„๋ฉ”์ธ์˜ ์˜ˆ์‹œ ์‚ฌ์šฉ

Tip: Few-Shot์—์„œ ์˜ˆ์‹œ์˜ ์ˆœ์„œ๋„ ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค. ๊ฐ€์žฅ ๊ด€๋ จ์„ฑ ๋†’์€ ์˜ˆ์‹œ๋ฅผ ๋งˆ์ง€๋ง‰์— ๋ฐฐ์น˜ํ•˜๋ฉด ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค.


4๏ธโƒฃ Chain-of-Thought (CoT) โ€” ์‚ฌ๊ณ ์˜ ์—ฐ์‡„

Chain-of-Thought(CoT)๋Š” AI๊ฐ€ ์ตœ์ข… ๋‹ต์„ ๋ฐ”๋กœ ๋‚ด๋†“๋Š” ๋Œ€์‹  ๋‹จ๊ณ„๋ณ„ ์ถ”๋ก  ๊ณผ์ •์„ ๊ฑฐ์น˜๋„๋ก ์œ ๋„ํ•˜๋Š” ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ˆ˜ํ•™ ๊ณ„์‚ฐ, ๋…ผ๋ฆฌ ์ถ”๋ก , ๋ณต์žกํ•œ ํŒ๋‹จ ๋ฌธ์ œ์—์„œ ์ •ํ™•๋„๋ฅผ ๋น„์•ฝ์ ์œผ๋กœ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.

Zero-Shot CoT

โ€œLetโ€™s think step by stepโ€ ๋˜๋Š” โ€œ๋‹จ๊ณ„๋ณ„๋กœ ์ƒ๊ฐํ•ด๋ดโ€๋ผ๋Š” ํŠธ๋ฆฌ๊ฑฐ ๋ฌธ์žฅ ํ•˜๋‚˜๋งŒ ์ถ”๊ฐ€ํ•ด๋„ ๋ชจ๋ธ์ด ๋‹จ๊ณ„์  ์‚ฌ๊ณ ๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

1
2
3
4
5
# Zero-Shot CoT ์˜ˆ์‹œ
"์ฒ ์ˆ˜๋Š” ์‚ฌ๊ณผ๋ฅผ 5๊ฐœ ๊ฐ€์ง€๊ณ  ์žˆ์—ˆ๋‹ค. ์˜ํฌ์—๊ฒŒ 2๊ฐœ๋ฅผ ์ฃผ๊ณ ,
 ๋งˆํŠธ์—์„œ 3๊ฐœ๋ฅผ ๋” ์ƒ€๋‹ค. ์ฒ ์ˆ˜์—๊ฒŒ ์‚ฌ๊ณผ๋Š” ๋ช‡ ๊ฐœ์ธ๊ฐ€?

๋‹จ๊ณ„๋ณ„๋กœ ์ƒ๊ฐํ•˜๋ฉฐ ํ’€์–ด์ค˜."
1
2
3
4
5
# AI ์‘๋‹ต ์˜ˆ์‹œ
1๋‹จ๊ณ„: ์ฒ˜์Œ ์‚ฌ๊ณผ ์ˆ˜ = 5๊ฐœ
2๋‹จ๊ณ„: ์˜ํฌ์—๊ฒŒ ์ค€ ํ›„ = 5 - 2 = 3๊ฐœ
3๋‹จ๊ณ„: ๋งˆํŠธ์—์„œ ๊ตฌ๋งค ํ›„ = 3 + 3 = 6๊ฐœ
์ •๋‹ต: 6๊ฐœ

Few-Shot CoT

๋‹จ๊ณ„๋ณ„ ์ถ”๋ก  ๊ณผ์ •์„ ํฌํ•จํ•œ ์˜ˆ์‹œ๋ฅผ ์ œ๊ณตํ•˜๋ฉด ๋” ๋ณต์žกํ•œ ์ถ”๋ก ๋„ ์ •ํ™•ํ•˜๊ฒŒ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

1
2
3
4
5
6
7
8
9
10
11
# Few-Shot CoT ์˜ˆ์‹œ
"๋‹ค์Œ ๋ฌธ์ œ๋ฅผ ๋‹จ๊ณ„๋ณ„๋กœ ํ’€์–ด์ค˜.

Q: ๋ฒ„์Šค์— ์Šน๊ฐ์ด 10๋ช… ์žˆ์—ˆ๋‹ค. ์ •๋ฅ˜์žฅ์—์„œ 3๋ช…์ด ๋‚ด๋ฆฌ๊ณ 
   5๋ช…์ด ํƒ”๋‹ค. ๋ฒ„์Šค์—๋Š” ๋ช‡ ๋ช…์ด ์žˆ๋Š”๊ฐ€?
A: ์ฒ˜์Œ 10๋ช…์—์„œ 3๋ช…์ด ๋‚ด๋ฆฌ๋ฉด 7๋ช…, ๊ฑฐ๊ธฐ์„œ 5๋ช…์ด ํƒ€๋ฉด 12๋ช….
   ์ •๋‹ต: 12๋ช…

Q: ์ƒ์ž์— ๊ณต์ด 8๊ฐœ ์žˆ๋‹ค. 4๊ฐœ๋ฅผ ๊บผ๋‚ด๊ณ  2๊ฐœ๋ฅผ ๋„ฃ์—ˆ๋‹ค.
   ์ƒ์ž์—๋Š” ๋ช‡ ๊ฐœ๊ฐ€ ๋‚จ์•„์žˆ๋Š”๊ฐ€?
A:"

CoT๊ฐ€ ํšจ๊ณผ์ ์ธ ์ƒํ™ฉ:

  • ์ˆ˜ํ•™ ๊ณ„์‚ฐ ๋ฐ ์ˆ˜์‹ ํ’€๊ธฐ
  • ๋…ผ๋ฆฌ ์ถ”๋ก ๊ณผ ์ธ๊ณผ๊ด€๊ณ„ ๋ถ„์„
  • ๋ณต์žกํ•œ ๋‹ค๋‹จ๊ณ„ ์˜์‚ฌ๊ฒฐ์ •
  • ์ฝ”๋“œ ๋””๋ฒ„๊น… ๊ณผ์ • ์ถ”์ 

5๏ธโƒฃ ๊ธฐ๋ฒ• ๋น„๊ต ํ•œ๋ˆˆ์— ๋ณด๊ธฐ

๊ธฐ๋ฒ•์˜ˆ์‹œ ์ˆ˜์žฅ์ ๋‹จ์ ์ ํ•ฉํ•œ ์ž‘์—…
Zero-Shot0๊ฐœ๋น ๋ฅด๊ณ  ๊ฐ„ํŽธ๋ณต์žกํ•œ ์ž‘์—…์—์„œ ๋ถˆ์•ˆ์ •๋ฒˆ์—ญ, ์š”์•ฝ, ๋‹จ์ˆœ QA
One-Shot1๊ฐœํ˜•์‹ ๊ฐ€์ด๋“œ ๊ฐ€๋ŠฅํŒจํ„ด ์ผ๋ฐ˜ํ™” ํ•œ๊ณ„ํ˜•์‹์ด ๋ช…ํ™•ํ•œ ์ž‘์—…
Few-Shot2~5๊ฐœ์ผ๊ด€๋œ ๊ฒฐ๊ณผ, ํ˜•์‹ ์ œ์–ดํ”„๋กฌํ”„ํŠธ ๊ธธ์ด ์ฆ๊ฐ€๊ฐ์ • ๋ถ„๋ฅ˜, ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜
Zero-Shot CoT0๊ฐœ + ํŠธ๋ฆฌ๊ฑฐ์ถ”๋ก  ํ’ˆ์งˆ ํ–ฅ์ƒ๋‹จ์ˆœ ์ž‘์—…์—๋Š” ๊ณผ์ž‰์ˆ˜ํ•™, ๋…ผ๋ฆฌ, ๋ถ„์„
Few-Shot CoT์ถ”๋ก  ๊ณผ์ • ํฌํ•จ ์˜ˆ์‹œ๊ฐ€์žฅ ๋†’์€ ์ •ํ™•๋„ํ”„๋กฌํ”„ํŠธ ์„ค๊ณ„ ๋ณต์žก๋ณต์žกํ•œ ๋‹ค๋‹จ๊ณ„ ์ถ”๋ก 

๐ŸŒณ ๊ณ ๊ธ‰ ๊ธฐ๋ฒ• 1: Tree-of-Thought (ToT)

Tree-of-Thought(ToT)๋Š” CoT๋ฅผ ํ™•์žฅํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐ€๋Šฅํ•œ ์ถ”๋ก  ๊ฒฝ๋กœ๋ฅผ ๋™์‹œ์— ํƒ์ƒ‰ํ•˜๋Š” ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋‚˜๋ฌด์˜ ๊ฐ€์ง€์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ ๋ฐฉํ–ฅ์œผ๋กœ ์‚ฌ๊ณ ๋ฅผ ์ „๊ฐœํ•˜๊ณ  ์ตœ์ ์˜ ๊ฒฝ๋กœ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

1
2
3
4
5
# Tree-of-Thought ํ”„๋กฌํ”„ํŠธ ์˜ˆ์‹œ
"๋‹ค์Œ ๋ฌธ์ œ๋ฅผ ํ’€๊ธฐ ์œ„ํ•œ 3๊ฐ€์ง€ ์ ‘๊ทผ๋ฒ•์„ ๊ฐ๊ฐ ์ œ์‹œํ•˜๊ณ ,
 ๊ฐ ์ ‘๊ทผ๋ฒ•์˜ ์žฅ๋‹จ์ ์„ ๋ถ„์„ํ•œ ํ›„ ๊ฐ€์žฅ ํšจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ•์„ ์„ ํƒํ•ด์ค˜.

๋ฌธ์ œ: ์Šคํƒ€ํŠธ์—…์˜ ์ดˆ๊ธฐ ๋งˆ์ผ€ํŒ… ์˜ˆ์‚ฐ 100๋งŒ์›์„ ์–ด๋–ป๊ฒŒ ๋ฐฐ๋ถ„ํ•ด์•ผ ํ• ๊นŒ?"

์ ํ•ฉํ•œ ์ƒํ™ฉ: ์ฐฝ์˜์  ๋ฌธ์ œ ํ•ด๊ฒฐ, ์ „๋žต ์ˆ˜๋ฆฝ, ์ตœ์  ๋ฐฉ์•ˆ ์„ ํƒ์ด ํ•„์š”ํ•œ ๋ณต์žกํ•œ ์˜์‚ฌ๊ฒฐ์ •


๐Ÿ”„ ๊ณ ๊ธ‰ ๊ธฐ๋ฒ• 2: Self-Consistency (์ž๊ธฐ ์ผ๊ด€์„ฑ)

Self-Consistency๋Š” ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ํ’€๊ฒŒ ํ•œ ํ›„ ๊ฐ€์žฅ ๋งŽ์ด ๋‚˜์˜จ ๋‹ต์„ ์„ ํƒํ•˜๋Š” ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ์ „๋ฌธ๊ฐ€์˜ ์˜๊ฒฌ์„ ๋‹ค์ˆ˜๊ฒฐ๋กœ ์ทจํ•ฉํ•˜๋Š” ์•™์ƒ๋ธ” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

1
2
3
# Self-Consistency ํ™œ์šฉ
"๋‹ค์Œ ์ฝ”๋“œ์˜ ๋ฒ„๊ทธ๋ฅผ 3๊ฐ€์ง€ ๋‹ค๋ฅธ ๊ด€์ (์„ฑ๋Šฅ, ๋ณด์•ˆ, ๊ฐ€๋…์„ฑ)์—์„œ
 ๊ฐ๊ฐ ๋…๋ฆฝ์ ์œผ๋กœ ๋ถ„์„ํ•œ ํ›„, ๊ณตํ†ต์œผ๋กœ ์ง€์ ๋œ ๋ฌธ์ œ๋ฅผ ์ตœ์šฐ์„ ์œผ๋กœ ์ˆ˜์ •ํ•ด์ค˜."

CoT ๊ฒฐ๊ณผ์˜ ์‹ ๋ขฐ๋„๋ฅผ ๋†’์ด๋Š” ๋ฐ ํšจ๊ณผ์ ์ด๋ฉฐ, ์ค‘์š”ํ•œ ํŒ๋‹จ์ด ํ•„์š”ํ•  ๋•Œ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.


โšก ๊ณ ๊ธ‰ ๊ธฐ๋ฒ• 3: ReAct (Reasoning + Acting)

ReAct๋Š” ์ถ”๋ก (Reasoning)๊ณผ ํ–‰๋™(Acting)์„ ๋ฐ˜๋ณตํ•˜๋Š” ๊ธฐ๋ฒ•์œผ๋กœ, ์™ธ๋ถ€ ๋„๊ตฌ(๊ฒ€์ƒ‰, API, ์ฝ”๋“œ ์‹คํ–‰ ๋“ฑ)์™€ ์—ฐ๋™ํ•˜๋Š” AI ์—์ด์ „ํŠธ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

1
Thought โ†’ Action โ†’ Observation โ†’ Thought โ†’ Action โ†’ ...
1
2
3
4
5
6
7
8
9
10
# ReAct ํ๋ฆ„ ์˜ˆ์‹œ (์—์ด์ „ํŠธ)
Thought: ํ˜„์žฌ ๋‚ ์”จ๋ฅผ ์•Œ์•„์•ผ ์ถ”์ฒœ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
Action: search("์„œ์šธ ์˜ค๋Š˜ ๋‚ ์”จ")
Observation: ์„œ์šธ ๊ธฐ์˜จ 12๋„, ๋น„ ์˜ˆ๋ณด

Thought: ๋น„๊ฐ€ ์˜ค๋ฏ€๋กœ ์‹ค๋‚ด ํ™œ๋™์„ ์ถ”์ฒœํ•ด์•ผ ํ•œ๋‹ค.
Action: search("์„œ์šธ ์‹ค๋‚ด ์ฃผ๋ง ์—ฌํ–‰์ง€")
Observation: ๊ตญ๋ฆฝ์ค‘์•™๋ฐ•๋ฌผ๊ด€, CGV IMAX...

Final Answer: ์˜ค๋Š˜ ๋น„๊ฐ€ ์˜ค๋‹ˆ ๊ตญ๋ฆฝ์ค‘์•™๋ฐ•๋ฌผ๊ด€ ๋ฐฉ๋ฌธ์„ ์ถ”์ฒœ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

LangChain Agent, OpenAI Function Calling ๊ฐ™์€ ๋„๊ตฌ ์—ฐ๋™ ์‹œ์Šคํ…œ์ด ์ด ๋ฐฉ์‹์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ”— ๊ณ ๊ธ‰ ๊ธฐ๋ฒ• 4: Prompt Chaining (ํ”„๋กฌํ”„ํŠธ ์ฒด์ด๋‹)

๋ณต์žกํ•œ ์ž‘์—…์„ ์—ฌ๋Ÿฌ ๋‹จ๊ณ„์˜ ํ”„๋กฌํ”„ํŠธ๋กœ ๋ถ„ํ•ดํ•˜์—ฌ ์•ž ๋‹จ๊ณ„์˜ ์ถœ๋ ฅ์„ ๋‹ค์Œ ๋‹จ๊ณ„์˜ ์ž…๋ ฅ์œผ๋กœ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

1
2
3
4
# Prompt Chaining ์˜ˆ์‹œ โ€” ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŠธ ์ž‘์„ฑ
step1 = llm.invoke("๋‹ค์Œ ์ฃผ์ œ๋กœ ๋ธ”๋กœ๊ทธ ๋ชฉ์ฐจ 5๊ฐœ๋ฅผ ์ž‘์„ฑํ•ด์ค˜: {topic}")
step2 = llm.invoke(f"๋‹ค์Œ ๋ชฉ์ฐจ๋กœ ๊ฐ ์„น์…˜์˜ ํ•ต์‹ฌ ๋‚ด์šฉ 1๋ฌธ์žฅ์”ฉ ์ž‘์„ฑํ•ด์ค˜:\n{step1}")
step3 = llm.invoke(f"๋‹ค์Œ ๊ฐœ์š”๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ „์ฒด ํฌ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•ด์ค˜:\n{step2}")

ํ•œ ๋ฒˆ์— ๊ธด ์ž‘์—…์„ ์‹œํ‚ค๋ฉด ํ’ˆ์งˆ์ด ๋–จ์–ด์งˆ ๋•Œ, ๋‹จ๊ณ„๋ณ„๋กœ ๋‚˜๋ˆ ์„œ ๊ฐ ๋‹จ๊ณ„์˜ ํ’ˆ์งˆ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ› ๏ธ ์‹ค๋ฌด ํ”„๋กฌํ”„ํŠธ ์„ค๊ณ„ ์›์น™

์—ญํ•  ๋ถ€์—ฌ (Role Prompting)

1
2
"๋„ˆ๋Š” 10๋…„ ๊ฒฝ๋ ฅ์˜ ์‹œ๋‹ˆ์–ด ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž์•ผ.
 ๋‹ค์Œ Python ์ฝ”๋“œ๋ฅผ ํ”„๋กœ๋•์…˜ ๋ ˆ๋ฒจ๋กœ ๋ฆฌ๋ทฐํ•ด์ค˜."

์ถœ๋ ฅ ํ˜•์‹ ๋ช…์‹œ

1
2
3
4
5
6
"๋‹ค์Œ ๋‚ด์šฉ์„ ๋ถ„์„ํ•˜๊ณ  ์•„๋ž˜ JSON ํ˜•์‹์œผ๋กœ ๋ฐ˜ํ™˜ํ•ด์ค˜:
{
  "sentiment": "๊ธ์ •|๋ถ€์ •|์ค‘๋ฆฝ",
  "confidence": 0.0~1.0,
  "key_phrases": ["ํ‚ค์›Œ๋“œ1", "ํ‚ค์›Œ๋“œ2"]
}"

์ œ์•ฝ ์กฐ๊ฑด ์„ค์ •

1
2
3
4
5
"๋‹ค์Œ ์กฐ๊ฑด์„ ๋ฐ˜๋“œ์‹œ ์ง€์ผœ์„œ ๋‹ต๋ณ€ํ•ด์ค˜:
- 200์ž ์ด๋‚ด๋กœ ์ž‘์„ฑ
- ๊ธฐ์ˆ  ์šฉ์–ด ์‚ฌ์šฉ ๊ธˆ์ง€
- ๋ฒˆํ˜ธ ๋ชฉ๋ก ํ˜•์‹
- ํ•œ๊ตญ์–ด๋กœ๋งŒ ๋‹ต๋ณ€"

๋ถ€์ •ํ˜• ๋Œ€์‹  ๊ธ์ •ํ˜• ์ง€์‹œ

1
2
3
4
5
# โŒ ๋ถ€์ •ํ˜• (AI๊ฐ€ ํ—ท๊ฐˆ๋ฆด ์ˆ˜ ์žˆ์Œ)
"์ „๋ฌธ ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ๋ง๊ณ , ๋„ˆ๋ฌด ๊ธธ๊ฒŒ ์“ฐ์ง€ ๋งˆ์„ธ์š”."

# โœ… ๊ธ์ •ํ˜• (๋ช…ํ™•ํ•œ ์ง€์‹œ)
"์ดˆ๋“ฑํ•™์ƒ๋„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์‰ฌ์šด ๋‹จ์–ด๋กœ, 3๋ฌธ์žฅ ์ด๋‚ด๋กœ ์„ค๋ช…ํ•ด์ค˜."

๐Ÿ“Š ๊ธฐ๋ฒ• ์„ ํƒ ๊ฐ€์ด๋“œ

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
์ž‘์—…์ด ๋‹จ์ˆœํ•˜๊ณ  ๋ช…ํ™•ํ•œ๊ฐ€?
  โ””โ”€ YES โ†’ Zero-Shot
  โ””โ”€ NO โ†“

์›ํ•˜๋Š” ์ถœ๋ ฅ ํ˜•์‹์ด ํŠน์ˆ˜ํ•œ๊ฐ€?
  โ””โ”€ YES โ†’ Few-Shot (์˜ˆ์‹œ 2~5๊ฐœ ์ œ๊ณต)
  โ””โ”€ NO โ†“

์ˆ˜ํ•™/๋…ผ๋ฆฌ/๋ณต์žกํ•œ ์ถ”๋ก ์ด ํ•„์š”ํ•œ๊ฐ€?
  โ””โ”€ YES โ†’ CoT (Zero-Shot CoT ๋˜๋Š” Few-Shot CoT)
  โ””โ”€ NO โ†“

์—ฌ๋Ÿฌ ๋ฐฉ์•ˆ ์ค‘ ์ตœ์ ์„ ์ฐพ์•„์•ผ ํ•˜๋Š”๊ฐ€?
  โ””โ”€ YES โ†’ Tree-of-Thought
  โ””โ”€ NO โ†“

์™ธ๋ถ€ ๋„๊ตฌ(๊ฒ€์ƒ‰, API) ์—ฐ๋™์ด ํ•„์š”ํ•œ๊ฐ€?
  โ””โ”€ YES โ†’ ReAct
  โ””โ”€ NO โ†’ Prompt Chaining์œผ๋กœ ๋‹จ๊ณ„ ๋ถ„ํ•ด

โ“ ์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

Q. Zero-Shot๊ณผ Few-Shot ์ค‘ ๋ฌด์—‡์„ ๋จผ์ € ์‹œ๋„ํ•ด์•ผ ํ•˜๋‚˜์š”?

ํ•ญ์ƒ Zero-Shot๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜์„ธ์š”. ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š์œผ๋ฉด ์˜ˆ์‹œ๋ฅผ 1๊ฐœ(One-Shot), ๊ทธ๋ž˜๋„ ๋ถ€์กฑํ•˜๋ฉด 2~5๊ฐœ(Few-Shot)๋กœ ๋Š˜๋ ค๊ฐ€๋Š” ๋ฐฉ์‹์ด ํ† ํฐ ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค.

Q. CoT๋Š” ๋ชจ๋“  LLM์—์„œ ํšจ๊ณผ๊ฐ€ ์žˆ๋‚˜์š”?

GPT-4, Claude 3+, Gemini 1.5 ๊ฐ™์€ ๋Œ€ํ˜• ๋ชจ๋ธ์—์„œ ํšจ๊ณผ๊ฐ€ ๋šœ๋ ทํ•ฉ๋‹ˆ๋‹ค. ์ž‘์€ ๋ชจ๋ธ(7B ์ดํ•˜)์—์„œ๋Š” CoT์˜ ํšจ๊ณผ๊ฐ€ ์ œํ•œ์ ์ด๊ฑฐ๋‚˜ ์˜คํžˆ๋ ค ์„ฑ๋Šฅ์„ ์ €ํ•˜์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Q. Few-Shot ์˜ˆ์‹œ๋Š” ๋ช‡ ๊ฐœ๊ฐ€ ์ ๋‹นํ•œ๊ฐ€์š”?

์ผ๋ฐ˜์ ์œผ๋กœ 3~5๊ฐœ๊ฐ€ ์ตœ์ ์ž…๋‹ˆ๋‹ค. ์˜ˆ์‹œ๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์œผ๋ฉด ํ† ํฐ์„ ๋‚ญ๋น„ํ•˜๊ณ  ํ”„๋กฌํ”„ํŠธ๊ฐ€ ๋ณต์žกํ•ด์ง‘๋‹ˆ๋‹ค. 5๊ฐœ๋ฅผ ๋„˜์œผ๋ฉด ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ํฐ ์„ฑ๋Šฅ ํ–ฅ์ƒ์ด ์—†์Šต๋‹ˆ๋‹ค.

Q. โ€œLetโ€™s think step by stepโ€ ์™ธ์— CoT๋ฅผ ์œ ๋„ํ•˜๋Š” ๋ฌธ์žฅ์ด ์žˆ๋‚˜์š”?

๋‹ค์–‘ํ•œ ํŠธ๋ฆฌ๊ฑฐ ๋ฌธ์žฅ์ด ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค:

  • โ€œ๋‹จ๊ณ„๋ณ„๋กœ ์ƒ๊ฐํ•ด๋ดโ€
  • โ€œํ’€์ด ๊ณผ์ •์„ ๋ณด์—ฌ์ค˜โ€
  • โ€œ์ด์œ ๋ฅผ ๋จผ์ € ์„ค๋ช…ํ•˜๊ณ  ๊ฒฐ๋ก ์„ ๋‚ด๋ ค์ค˜โ€
  • โ€œํ‹€๋ฆด ์ˆ˜ ์žˆ๋Š” ๊ฐ€๋Šฅ์„ฑ์„ ๋จผ์ € ๊ฒ€ํ† ํ•˜๊ณ  ๋‹ตํ•ด์ค˜โ€

Q. ํ”„๋กฌํ”„ํŠธ ๊ธธ์ด๊ฐ€ ๊ธธ์ˆ˜๋ก ์ข‹์€๊ฐ€์š”?

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

This post is licensed under CC BY 4.0 by the author.