Anthropic ็คพ์˜ Prompt Engineering ์™„๋ฒฝ ๊ฐ€์ด๋“œ

Posted by Euisuk's Dev Log on July 25, 2025

Anthropic ็คพ์˜ Prompt Engineering ์™„๋ฒฝ ๊ฐ€์ด๋“œ

์›๋ณธ ๊ฒŒ์‹œ๊ธ€: https://velog.io/@euisuk-chung/Anthropic-Prompt-Engineering-์™„๋ฒฝ-๊ฐ€์ด๋“œ

AI ๊ฐœ๋ฐœ์—…์ฒด ์•คํŠธ๋กœํ”ฝ(Anthropic)์ด ์ž์‚ฌ AI ๋ชจ๋ธ ํด๋กœ๋“œ(Claude)์˜ ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง ๊ฐ€์ด๋“œ๋ฅผ ๊ณต์‹ ๋ฌธ์„œ๋กœ ๊ณต๊ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” AI ๋ชจ๋ธ ํ™œ์šฉ ๋ฐฉ์‹์— ์žˆ์–ด ํŒจ๋Ÿฌ๋‹ค์ž„ ์‹œํ”„ํŠธ๋ฅผ ์˜๋ฏธํ•˜๋Š” ์ค‘์š”ํ•œ ๋ฐœํ‘œ์ž…๋‹ˆ๋‹ค.

source: https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/

ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง vs ํŒŒ์ธํŠœ๋‹: ํšจ์œจ์„ฑ์˜ ํ˜์‹ 

์•คํŠธ๋กœํ”ฝ์€ ์ด๋ฒˆ ๊ฐ€์ด๋“œ์—์„œ ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง์ด ๊ธฐ์กด ํŒŒ์ธํŠœ๋‹ ๋ฐฉ์‹๋ณด๋‹ค ํ›จ์”ฌ ํšจ์œจ์ ์ด๋ผ๊ณ  ๊ฐ•์กฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ๊ทผ๊ฑฐ๋Š” ๋ช…ํ™•ํ•ฉ๋‹ˆ๋‹ค:

ํŒŒ์ธํŠœ๋‹์˜ ํ•œ๊ณ„:

  • ๊ณ ์„ฑ๋Šฅ GPU์™€ ๋Œ€์šฉ๋Ÿ‰ ๋ฉ”๋ชจ๋ฆฌ ํ•„์š”
  • ์ƒ๋‹นํ•œ ๋น„์šฉ๊ณผ ์‹œ๊ฐ„ ์†Œ์š” (์ˆ˜ ์‹œ๊ฐ„~์ˆ˜ ์ผ)
  • ๋Œ€๋Ÿ‰์˜ ์ž‘์—…๋ณ„ ๋ ˆ์ด๋ธ”๋œ ๋ฐ์ดํ„ฐ ํ•„์ˆ˜
  • ์น˜๋ช…์  ๋ง๊ฐ(Catastrophic Forgetting)์œผ๋กœ ๋ชจ๋ธ์˜ ์ผ๋ฐ˜ ์ง€์‹ ์†์‹ค ์œ„ํ—˜

ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง์˜ ํ˜์‹ :

  • ํ…์ŠคํŠธ ์ž…๋ ฅ๋งŒ์œผ๋กœ ๊ฑฐ์˜ ์ฆ‰๊ฐ์ ์ธ ๊ฒฐ๊ณผ ๋‹ฌ์„ฑ
  • Few-shot์ด๋‚˜ zero-shot ํ•™์Šต์œผ๋กœ๋„ ํšจ๊ณผ์  ์ž‘๋™
  • ๋ชจ๋ธ ์—…๋ฐ์ดํŠธ ์‹œ์—๋„ ๋ฒ„์ „ ๊ฐ„ ๋ณ€๊ฒฝ ์—†์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅ
  • ๋ชจ๋ธ์˜ ๊ด‘๋ฒ”์œ„ํ•œ ์ผ๋ฐ˜ ์ง€์‹๊ณผ ๋Šฅ๋ ฅ ์™„์ „ ๋ณด์กด

๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธ์Šค ๊ด€์ ์—์„œ์˜ ํ•ต์‹ฌ ์žฅ์ 

ํŠนํžˆ ๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธ์Šค์™€ AI ๊ฐœ๋ฐœ ๋ถ„์•ผ์—์„œ ํ”„๋กฌํ”„ํŠธ ์—”์ง€๋‹ˆ์–ด๋ง์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜์‹ ์  ์ด์ ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค:

  • ๋น ๋ฅธ ๋ฐ˜๋ณต ์‹คํ—˜: ๊ฐ€์„ค ๊ฒ€์ฆ๊ณผ ๋ชจ๋ธ ํ…Œ์ŠคํŠธ ์‚ฌ์ดํด ๋‹จ์ถ•
  • ๋„๋ฉ”์ธ๋ณ„ ๋งž์ถค ์ ์‘: ์—…๊ณ„๋ณ„ ์ „๋ฌธ ์ง€์‹ ์ฆ‰์‹œ ์ ์šฉ
  • ์™ธ๋ถ€ ๋ฌธ์„œ ์ดํ•ด๋ ฅ ํ–ฅ์ƒ: ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ์…‹๊ณผ ๋ณด๊ณ ์„œ ๋ถ„์„ ๋Šฅ๋ ฅ ๊ฐ•ํ™”
  • ๋†’์€ ํˆฌ๋ช…์„ฑ: ์ถ”๋ก  ๊ณผ์ •์˜ ๋ช…ํ™•ํ•œ ์ถ”์ ๊ณผ ๋””๋ฒ„๊น… ๊ฐ€๋Šฅ
  • ์œ ์ง€๋ณด์ˆ˜ ์šฉ์ด์„ฑ: ์ง€์†์ ์ธ ๋ชจ๋ธ ๊ฐœ์„ ๊ณผ ์ตœ์ ํ™”

๋ณธ ๊ฐ€์ด๋“œ์˜ ๊ตฌ์„ฑ

์ด๋ฒˆ ๊ฐ€์ด๋“œ๋Š” ์•คํŠธ๋กœํ”ฝ์˜ ๊ณต์‹ ๋ฌธ์„œ(Anthropic Prompt Engineering Guide)๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ, ๊ฐ€์žฅ ๊ด‘๋ฒ”์œ„ํ•˜๊ฒŒ ํšจ๊ณผ์ ์ธ ๊ธฐ๋ฒ•๋ถ€ํ„ฐ ์ „๋ฌธ์ ์ธ ๊ธฐ๋ฒ• ์ˆœ์„œ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์„ฑ๋Šฅ ๊ฐœ์„ ์ด ํ•„์š”ํ•  ๋•Œ ํ•ด๋‹น ์ˆœ์„œ๋Œ€๋กœ ์ ์šฉํ•  ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

AI์™€์˜ ํšจ๊ณผ์ ์ธ ์†Œํ†ต์€ ํ˜„์žฌ ๋ฐ์ดํ„ฐ ๊ณผํ•™๊ณผ AI ๊ฐœ๋ฐœ์—์„œ ํ•„์ˆ˜์ ์ธ ๊ธฐ์ˆ ์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ Claude์™€ ๊ฐ™์€ ๋Œ€ํ™”ํ˜• AI ๋ชจ๋ธ์„ ํ™œ์šฉํ•  ๋•Œ, ์˜ฌ๋ฐ”๋ฅธ ํ”„๋กฌํ”„ํŒ… ๊ธฐ๋ฒ•์„ ์‚ฌ์šฉํ•˜๋ฉด ์„ฑ๋Šฅ์„ ๊ทน์ ์œผ๋กœ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๊ธ€์—์„œ๋Š” Claude๋ฅผ ์œ„ํ•œ 9๊ฐ€์ง€ ํ•ต์‹ฌ prompt engineering ๊ธฐ๋ฒ•์„ ๋‹จ๊ณ„๋ณ„๋กœ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

  1. Prompt Generator: ํšจ๊ณผ์ ์ธ ํ”„๋กฌํ”„ํŠธ ์ž๋™ ์ƒ์„ฑ

https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/prompt-generator

๊ธฐ๋ณธ ๊ฐœ๋…

Prompt generator๋Š” ํŠน์ • ์ž‘์—…์— ๋งž๋Š” ๊ณ ํ’ˆ์งˆ ํ”„๋กฌํ”„ํŠธ ํ…œํ”Œ๋ฆฟ์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ด์ฃผ๋Š” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์ด๋Š” ํŠนํžˆ ํ”„๋กฌํ”„ํŒ… ๊ฒฝํ—˜์ด ์ ๊ฑฐ๋‚˜ ๋ณต์žกํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ๋•Œ ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

ํ™œ์šฉ ๋ฐฉ๋ฒ•

1
2
3
# Anthropic Console์—์„œ prompt generator ์‚ฌ์šฉ ์˜ˆ์‹œ
# "๊ณ ๊ฐ ํ”ผ๋“œ๋ฐฑ ๋ถ„์„์„ ์œ„ํ•œ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ƒ์„ฑํ•ด์ฃผ์„ธ์š”"๋ผ๊ณ  ์š”์ฒญํ•˜๋ฉด
# ์ž๋™์œผ๋กœ ์ตœ์ ํ™”๋œ ํ”„๋กฌํ”„ํŠธ ํ…œํ”Œ๋ฆฟ์„ ์ œ๊ณต๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

(๊ฐœ์ธ์ƒ๊ฐ) ํ•ด๋‹น prompt genertor์˜ ์„ฑ๋Šฅ์ด ์–ผ๋งˆ๋‚˜ ์ข‹์„์ง€ ๋ชจ๋ฅด์ง€๋งŒ, prompting์„ ์ฒ˜์Œํ•˜์‹œ๊ฑฐ๋‚˜ ๊ท€์ฐฎ์œผ์‹  ๋ถ„๋“ค ๋ง๊ณ ๋Š” ์–ผ๋งˆ๋‚˜ ์‚ฌ์šฉํ• ์ง€ ๊ถ๊ธˆํ•˜๋„ค์š” ๐Ÿ˜—

  1. ๋ช…ํ™•ํ•˜๊ณ  ์ง์ ‘์ ์ธ ์ง€์‹œ: ์ •ํ™•์„ฑ์˜ ๊ธฐ์ดˆ

https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/be-clear-and-direct

ํ™ฉ๊ธˆ ๊ทœ์น™

ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ๋Š” ๋™๋ฃŒ์—๊ฒŒ ์—…๋ฌด๋ฅผ ์„ค๋ช…ํ•˜๋“ฏ์ด ๋ช…ํ™•ํ•˜๊ณ  ๊ตฌ์ฒด์ ์œผ๋กœ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Claude๋Š” ๋›ฐ์–ด๋‚œ ๋Šฅ๋ ฅ์„ ๊ฐ€์ง„ ์‹ ์ž…์‚ฌ์›๊ณผ ๊ฐ™๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ณ , ๋ช…์‹œ์ ์ธ ์ง€์นจ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

ํšจ๊ณผ์ ์ธ ์ž‘์„ฑ ์š”์†Œ

  • ๋งฅ๋ฝ ์ •๋ณด ์ œ๊ณต: ์ž‘์—… ๊ฒฐ๊ณผ์˜ ์šฉ๋„, ๋Œ€์ƒ ๋…์ž, ์ „์ฒด ์›Œํฌํ”Œ๋กœ์šฐ์—์„œ์˜ ์œ„์น˜
  • ๊ตฌ์ฒด์ ์ธ ์ง€์‹œ์‚ฌํ•ญ: ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฌผ์˜ ํ˜•ํƒœ์™€ ์ œ์•ฝ์‚ฌํ•ญ ๋ช…์‹œ
  • ์ˆœ์ฐจ์  ๋‹จ๊ณ„: ๋ฒˆํ˜ธ๋‚˜ ๋ถˆ๋ฆฟ ํฌ์ธํŠธ๋ฅผ ์‚ฌ์šฉํ•œ ๋‹จ๊ณ„๋ณ„ ์ง€์นจ

์‹ค์ œ ์˜ˆ์‹œ: ๊ณ ๊ฐ ํ”ผ๋“œ๋ฐฑ ์ต๋ช…ํ™”

๋ถˆ๋ช…ํ™•ํ•œ ํ”„๋กฌํ”„ํŠธ:

1
์ด ๊ณ ๊ฐ ํ”ผ๋“œ๋ฐฑ ๋ฉ”์‹œ์ง€๋“ค์—์„œ ๊ฐœ์ธ์‹๋ณ„์ •๋ณด๋ฅผ ์ œ๊ฑฐํ•ด์ฃผ์„ธ์š”: 

๋ช…ํ™•ํ•œ ํ”„๋กฌํ”„ํŠธ:

1
2
3
4
5
6
7
8
9
10
11
๋ถ„๊ธฐ๋ณ„ ๊ฒ€ํ† ๋ฅผ ์œ„ํ•œ ๊ณ ๊ฐ ํ”ผ๋“œ๋ฐฑ ์ต๋ช…ํ™” ์ž‘์—…์ž…๋‹ˆ๋‹ค.

์ง€์นจ:
1. ๊ณ ๊ฐ ์ด๋ฆ„์„ "CUSTOMER_[ID]"๋กœ ๋ณ€๊ฒฝ (์˜ˆ: "๊น€์ฒ ์ˆ˜" โ†’ "CUSTOMER_001")
2. ์ด๋ฉ”์ผ ์ฃผ์†Œ๋ฅผ "EMAIL_[ID]@example.com"๋กœ ๋ณ€๊ฒฝ
3. ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ "PHONE_[ID]"๋กœ ๋ณ€๊ฒฝ
4. ํŠน์ • ์ œํ’ˆ๋ช…(์˜ˆ: "AcmeCloud")์€ ๊ทธ๋Œ€๋กœ ์œ ์ง€
5. ๊ฐœ์ธ์ •๋ณด๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ ๋ฉ”์‹œ์ง€๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณต์‚ฌ
6. ์ฒ˜๋ฆฌ๋œ ๋ฉ”์‹œ์ง€๋งŒ ์ถœ๋ ฅํ•˜๊ณ , "---"๋กœ ๊ตฌ๋ถ„

์ฒ˜๋ฆฌํ•  ๋ฐ์ดํ„ฐ: 
  1. ์˜ˆ์‹œ ํ™œ์šฉ(Multishot Prompting): ์ •ํ™•์„ฑ ํ–ฅ์ƒ์˜ ํ•ต์‹ฌ

https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/multishot-prompting

๊ธฐ๋ณธ ์›๋ฆฌ

Few-shot ๋˜๋Š” multishot prompting์€ Claude๊ฐ€ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฌผ์„ ์ •ํ™•ํžˆ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก 3-5๊ฐœ์˜ ๋‹ค์–‘ํ•œ ์˜ˆ์‹œ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค.

ํšจ๊ณผ์ ์ธ ์˜ˆ์‹œ ์ž‘์„ฑ ๊ฐ€์ด๋“œ

  • ๊ด€๋ จ์„ฑ: ์‹ค์ œ ์‚ฌ์šฉ ์‚ฌ๋ก€์™€ ์œ ์‚ฌํ•œ ์˜ˆ์‹œ ์‚ฌ์šฉ
  • ๋‹ค์–‘์„ฑ: ๊ทน๋‹จ์ ์ธ ๊ฒฝ์šฐ์™€ ๋‹ค์–‘ํ•œ ์‹œ๋‚˜๋ฆฌ์˜ค ํฌํ•จ
  • ๋ช…ํ™•์„ฑ: <example> ํƒœ๊ทธ๋กœ ๊ตฌ์กฐํ™”

์‹ค์ œ ์ ์šฉ: ๊ณ ๊ฐ ํ”ผ๋“œ๋ฐฑ ๋ถ„์„

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
CSํŒ€์ด ๊ตฌ์กฐํ™”๋˜์ง€ ์•Š์€ ํ”ผ๋“œ๋ฐฑ์œผ๋กœ ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. 
ํ”ผ๋“œ๋ฐฑ์„ ๋ถ„์„ํ•˜์—ฌ ์ œํ’ˆํŒ€๊ณผ ์—”์ง€๋‹ˆ์–ด๋งํŒ€์„ ์œ„ํ•ด ์ด์Šˆ๋ฅผ ๋ถ„๋ฅ˜ํ•ด์ฃผ์„ธ์š”.

์นดํ…Œ๊ณ ๋ฆฌ: UI/UX, Performance, Feature Request, Integration, Pricing, Other
๊ฐ์ •: Positive/Neutral/Negative
์šฐ์„ ์ˆœ์œ„: High/Medium/Low

<example>
์ž…๋ ฅ: ์ƒˆ ๋Œ€์‹œ๋ณด๋“œ๊ฐ€ ์—‰๋ง์ด์—์š”! ๋กœ๋”ฉ์ด ๋„ˆ๋ฌด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๊ณ , ๋‚ด๋ณด๋‚ด๊ธฐ ๋ฒ„ํŠผ์„ ์ฐพ์„ ์ˆ˜ ์—†์–ด์š”. ๋นจ๋ฆฌ ๊ณ ์ณ์ฃผ์„ธ์š”!
์นดํ…Œ๊ณ ๋ฆฌ: UI/UX, Performance
๊ฐ์ •: Negative
์šฐ์„ ์ˆœ์œ„: High
</example>

์ด์ œ ๋‹ค์Œ ํ”ผ๋“œ๋ฐฑ์„ ๋ถ„์„ํ•ด์ฃผ์„ธ์š”: 
  1. ์‚ฌ๊ณ  ๊ณผ์ • ์œ ๋„(Chain of Thought): ๋ณต์žกํ•œ ๋ถ„์„์˜ ํ•ต์‹ฌ

https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/chain-of-thought

์ ์šฉ ์‹œ๊ธฐ

  • ๋ณต์žกํ•œ ์ˆ˜ํ•™ ๊ณ„์‚ฐ
  • ๋‹ค๋‹จ๊ณ„ ๋ถ„์„
  • ๋…ผ๋ฆฌ์  ์ถ”๋ก ์ด ํ•„์š”ํ•œ ์ž‘์—…
  • ์˜์‚ฌ๊ฒฐ์ •์— ์—ฌ๋Ÿฌ ์š”์†Œ๊ฐ€ ๊ด€๋ จ๋œ ๊ฒฝ์šฐ

๊ตฌ์กฐํ™”๋œ ์‚ฌ๊ณ  ํ”„๋กฌํ”„ํŒ…

1
2
3
4
5
6
7
8
9
10
11
12
13
ํˆฌ์ž ์กฐ์–ธ์„ ์œ„ํ•œ ์žฌ๋ฌด ๋ถ„์„์„ ์ˆ˜ํ–‰ํ•ด์ฃผ์„ธ์š”.

<thinking>
1. ๋จผ์ € ๊ณ ๊ฐ์˜ ๋ชฉํ‘œ์™€ ์‹œ๊ฐ„ ํ”„๋ ˆ์ž„ ๋ถ„์„
2. ๊ฐ ํˆฌ์ž ์˜ต์…˜์˜ ์ž ์žฌ์  ์ˆ˜์ต๋ฅ  ๊ณ„์‚ฐ
3. ๋ฆฌ์Šคํฌ ์š”์†Œ๋“ค ํ‰๊ฐ€
4. ์‹œ์žฅ ๋ณ€๋™์„ฑ๊ณผ ๊ณผ๊ฑฐ ์„ฑ๊ณผ ๊ฒ€ํ† 
5. ์ตœ์ข… ๊ถŒ๊ณ ์•ˆ ๋„์ถœ
</thinking>

<answer>
๋ถ„์„ ๊ฒฐ๊ณผ์™€ ๊ถŒ๊ณ ์‚ฌํ•ญ์„ ์—ฌ๊ธฐ์— ์ž‘์„ฑ
</answer>

์‹ค์ œ ์˜ˆ์‹œ: ์žฌ๋ฌด ๋ถ„์„

์‚ฌ๊ณ  ๊ณผ์ • ์—†๋Š” ๋ถ„์„:
๋‹จ์ˆœํžˆ โ€œ6% ์ฑ„๊ถŒ์„ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹คโ€๋ผ๋Š” ๊ฒฐ๋ก ๋งŒ ์ œ์‹œ

์‚ฌ๊ณ  ๊ณผ์ •์ด ํฌํ•จ๋œ ๋ถ„์„:

  • ํˆฌ์ž ๋ชฉํ‘œ ๋ถ„์„ (์ฃผํƒ ๊ตฌ๋งค ์ž๊ธˆ)
  • ์‹œ๊ฐ„ ํ”„๋ ˆ์ž„ ๊ณ ๋ ค (5๋…„)
  • ๊ฐ ์˜ต์…˜์˜ ์ˆ˜์ต๋ฅ  ๊ณ„์‚ฐ
  • ๋ฆฌ์Šคํฌ ํ—ˆ์šฉ๋„ ํ‰๊ฐ€
  • ๊ณผ๊ฑฐ ์‹œ์žฅ ๋ฐ์ดํ„ฐ ๊ฒ€ํ† 
  • ์ƒ์„ธํ•œ ๊ทผ๊ฑฐ์™€ ํ•จ๊ป˜ ์ตœ์ข… ๊ถŒ๊ณ 
  1. XML ํƒœ๊ทธ ํ™œ์šฉ: ๊ตฌ์กฐํ™”๋œ ํ”„๋กฌํ”„ํŠธ ์„ค๊ณ„

https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/use-xml-tags

ํ•ต์‹ฌ ์žฅ์ 

  • ๋ช…ํ™•์„ฑ: ํ”„๋กฌํ”„ํŠธ์˜ ๊ฐ ๋ถ€๋ถ„์„ ๋ช…ํ™•ํžˆ ๊ตฌ๋ถ„
  • ์ •ํ™•์„ฑ: Claude์˜ ํ˜ผ๋™์„ ๋ฐฉ์ง€
  • ์œ ์—ฐ์„ฑ: ํ”„๋กฌํ”„ํŠธ์˜ ์ผ๋ถ€๋ถ„์„ ์‰ฝ๊ฒŒ ์ˆ˜์ • ๊ฐ€๋Šฅ
  • ํŒŒ์‹ฑ ๊ฐ€๋Šฅ์„ฑ: ์‘๋‹ต์˜ ํŠน์ • ๋ถ€๋ถ„์„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ ์œผ๋กœ ์ถ”์ถœ ๊ฐ€๋Šฅ

์‹ค์ œ ํ™œ์šฉ: ๋ฒ•์  ๊ณ„์•ฝ์„œ ๋ถ„์„

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
์†Œํ”„ํŠธ์›จ์–ด ๋ผ์ด์„ ์Šค ๊ณ„์•ฝ์„œ์˜ ๋ฒ•์  ๋ฆฌ์Šคํฌ์™€ ์ฑ…์ž„์„ ๋ถ„์„ํ•ด์ฃผ์„ธ์š”.

์šฐ๋ฆฌ๋Š” ํ•ต์‹ฌ ๋ฐ์ดํ„ฐ ์ธํ”„๋ผ๋ฅผ ์œ„ํ•ด ์ด ๊ณ„์•ฝ์„ ๊ณ ๋ ค ์ค‘์ธ ๋‹ค๊ตญ์  ๊ธฐ์—…์ž…๋‹ˆ๋‹ค.

<agreement>

</agreement>

<standard_contract>

</standard_contract>

<instructions>
1. ๋‹ค์Œ ์กฐํ•ญ๋“ค์„ ๋ถ„์„:
   - ๋ฉด์ฑ… ์กฐํ•ญ
   - ์ฑ…์ž„ ์ œํ•œ
   - ์ง€์ ์žฌ์‚ฐ๊ถŒ ์†Œ์œ ๊ถŒ

2. ํŠน์ดํ•˜๊ฑฐ๋‚˜ ์šฐ๋ ค๋˜๋Š” ์กฐํ•ญ ํ‘œ์‹œ
3. ํ‘œ์ค€ ๊ณ„์•ฝ์„œ์™€ ๋น„๊ต
4. <findings> ํƒœ๊ทธ๋กœ ๋ฐœ๊ฒฌ์‚ฌํ•ญ ์š”์•ฝ
5. <recommendations> ํƒœ๊ทธ๋กœ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๊ถŒ๊ณ ์‚ฌํ•ญ ์ œ์‹œ
</instructions>
  1. ์—ญํ•  ๋ถ€์—ฌ(System Prompts): ์ „๋ฌธ์„ฑ ๊ฐ•ํ™”

https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/system-prompts

๊ธฐ๋ณธ ๊ฐœ๋…

System parameter๋ฅผ ํ†ตํ•ด Claude์—๊ฒŒ ํŠน์ • ์—ญํ• ์„ ๋ถ€์—ฌํ•˜๋ฉด, ํ•ด๋‹น ๋„๋ฉ”์ธ์˜ ์ „๋ฌธ๊ฐ€ ์ˆ˜์ค€์˜ ์„ฑ๋Šฅ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

API ๊ตฌํ˜„ ์˜ˆ์‹œ

1
2
3
4
5
6
7
8
9
10
11
12
import anthropic

client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=2048,
    system="๋‹น์‹ ์€ Fortune 500 ๊ธฐ์—…์˜ ์ˆ˜์„ ๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธํ‹ฐ์ŠคํŠธ์ž…๋‹ˆ๋‹ค.", # ์—ญํ•  ์„ค์ •
    messages=[
        {"role": "user", "content": "์ด ๋ฐ์ดํ„ฐ์…‹์—์„œ ์ด์ƒ์น˜๋ฅผ ๋ถ„์„ํ•ด์ฃผ์„ธ์š”: <dataset></dataset>"}
    ]
)

์—ญํ• ๋ณ„ ์„ฑ๋Šฅ ์ฐจ์ด

์—ญํ•  ์—†๋Š” ๋ถ„์„: ์ผ๋ฐ˜์ ์ธ ๊ณ„์•ฝ์„œ ๊ฒ€ํ†  ์ˆ˜์ค€
์—ญํ•  ์žˆ๋Š” ๋ถ„์„ (์ตœ๊ณ ๋ฒ•๋ฌด์ฑ…์ž„์ž):

  • ์ˆ˜๋ฐฑ๋งŒ ๋‹ฌ๋Ÿฌ ์†์‹ค ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋Š” ์ค‘๋Œ€ํ•œ ์ด์Šˆ ์‹๋ณ„
  • ์—…๊ณ„ ํ‘œ์ค€ ๋Œ€๋น„ ๊ตฌ์ฒด์ ์ธ ๋ฆฌ์Šคํฌ ํ‰๊ฐ€
  • ํ˜‘์ƒ์„ ์œ„ํ•œ ๊ตฌ์ฒด์ ์ธ ๋Œ€์•ˆ ์ œ์‹œ
  1. ์‘๋‹ต ์‚ฌ์ „ ์ž…๋ ฅ(Prefilling): ์ถœ๋ ฅ ํ˜•ํƒœ ์ œ์–ด

https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/prefill-claudes-response

ํ™œ์šฉ ์‹œ๋‚˜๋ฆฌ์˜ค

  • JSON ํ˜•ํƒœ๋กœ ์ง์ ‘ ์ถœ๋ ฅ ํ•„์š”
  • ํŠน์ • ํ˜•์‹ ๊ฐ•์ œ
  • ์—ญํ• ๊ทน์—์„œ ์บ๋ฆญํ„ฐ ์œ ์ง€
  • ์„œ๋ก  ์ƒ๋žตํ•˜๊ณ  ํ•ต์‹ฌ ๋‚ด์šฉ ์ง์ ‘ ์ถœ๋ ฅ

JSON ์ถœ๋ ฅ ์˜ˆ์‹œ

1
2
3
4
5
6
7
8
# ์‚ฌ์ „ ์ž…๋ ฅ ์—†์ด
response = client.messages.create(
    messages=[
        {"role": "user", "content": "์ œํ’ˆ ์„ค๋ช…์„ JSON์œผ๋กœ ์ถ”์ถœํ•ด์ฃผ์„ธ์š”"},
        {"role": "assistant", "content": "{"}  # ์‚ฌ์ „ ์ž…๋ ฅ์œผ๋กœ JSON ์‹œ์ž‘ ๊ฐ•์ œ
    ]
)
# ๊ฒฐ๊ณผ: ์„œ๋ก  ์—†์ด ๋ฐ”๋กœ JSON ๊ฐ์ฒด ์ถœ๋ ฅ

์บ๋ฆญํ„ฐ ์œ ์ง€ ์˜ˆ์‹œ

1
2
3
4
5
# ๊ธด ๋Œ€ํ™” ํ›„์—๋„ ์—ญํ•  ์œ ์ง€
messages=[
    {"role": "user", "content": "์ด ์‹ ๋ฐœ์˜ ์ฃผ์ธ์— ๋Œ€ํ•ด ๋ฌด์—‡์„ ์ถ”๋ก ํ•  ์ˆ˜ ์žˆ๋‚˜์š”?"},
    {"role": "assistant", "content": "[Sherlock Holmes]"}  # ์บ๋ฆญํ„ฐ ์œ ์ง€ ์‚ฌ์ „ ์ž…๋ ฅ
]
  1. ๋ณต์žกํ•œ ํ”„๋กฌํ”„ํŠธ ์—ฐ์‡„(Chain Prompts): ์ •ํ™•์„ฑ ๊ทน๋Œ€ํ™”

https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/chain-prompts

์–ธ์ œ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”๊ฐ€

  • ๋‹ค๋‹จ๊ณ„ ๋ถ„์„์ด๋‚˜ ์—ฐ๊ตฌ ์ข…ํ•ฉ
  • ๋ฌธ์„œ ๋ถ„์„
  • ๋ฐ˜๋ณต์  ์ฝ˜ํ…์ธ  ์ƒ์„ฑ
  • ์—ฌ๋Ÿฌ ๋ณ€ํ™˜ ๊ณผ์ •์ด ํ•„์š”ํ•œ ์ž‘์—…

์—ฐ์‡„ ๊ตฌ์กฐ ์„ค๊ณ„

  1. ํ•˜์œ„ ์ž‘์—… ์‹๋ณ„: ๋ณต์žกํ•œ ์ž‘์—…์„ ๋ช…ํ™•ํ•œ ๋‹จ๊ณ„๋กœ ๋ถ„ํ•ด
  2. XML์„ ํ†ตํ•œ ๋ช…ํ™•ํ•œ ์ „๋‹ฌ: ๋‹จ๊ณ„ ๊ฐ„ ๊ฒฐ๊ณผ๋ฌผ์„ ๊ตฌ์กฐํ™”๋œ ํ˜•ํƒœ๋กœ ์ „๋‹ฌ
  3. ๋‹จ์ผ ๋ชฉํ‘œ ์„ค์ •: ๊ฐ ๋‹จ๊ณ„๋Š” ํ•˜๋‚˜์˜ ๋ช…ํ™•ํ•œ ๋ชฉ์ ์„ ๊ฐ€์ ธ์•ผ ํ•จ
  4. ๋ฐ˜๋ณต ๊ฐœ์„ : ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๋‹จ๊ณ„๋ฅผ ๋…๋ฆฝ์ ์œผ๋กœ ๊ฐœ์„ 

์‹ค์ œ ์˜ˆ์‹œ: ๋ฒ•์  ๊ณ„์•ฝ์„œ ๋ถ„์„ ์—ฐ์‡„

1๋‹จ๊ณ„: ๋ฆฌ์Šคํฌ ๋ถ„์„

1
SaaS ๊ณ„์•ฝ์„œ์˜ ๋ฆฌ์Šคํฌ๋ฅผ ๋ถ„์„ํ•˜๊ณ  <risks> ํƒœ๊ทธ๋กœ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•ด์ฃผ์„ธ์š”.

2๋‹จ๊ณ„: ์ด๋ฉ”์ผ ์ดˆ์•ˆ ์ž‘์„ฑ

1
2
๋‹ค์Œ ์šฐ๋ ค์‚ฌํ•ญ์„ ๋ฐ”ํƒ•์œผ๋กœ ๋ฒค๋”์—๊ฒŒ ๋ณด๋‚ผ ์ด๋ฉ”์ผ์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”:
<concerns></concerns>

3๋‹จ๊ณ„: ํ’ˆ์งˆ ๊ฒ€ํ† 

1
2
๋‹ค์Œ ์ด๋ฉ”์ผ์˜ ํ†ค, ๋ช…ํ™•์„ฑ, ์ „๋ฌธ์„ฑ์„ ํ‰๊ฐ€ํ•ด์ฃผ์„ธ์š”:
<email></email>

์ž๊ธฐ ์ˆ˜์ • ์—ฐ์‡„(Self-correction Chains)

Claude๊ฐ€ ์ž์‹ ์˜ ์ž‘์—…์„ ๊ฒ€ํ† ํ•˜๊ณ  ๊ฐœ์„ ํ•˜๋„๋ก ํ•˜๋Š” ๊ณ ๊ธ‰ ๊ธฐ๋ฒ•:

  1. ์ดˆ๊ธฐ ๋ถ„์„ ์ˆ˜ํ–‰
  2. ์ž์ฒด ๊ฒ€ํ†  ๋ฐ ํ”ผ๋“œ๋ฐฑ ์ƒ์„ฑ
  3. ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ”ํƒ•์œผ๋กœ ๊ฐœ์„ ๋œ ๋ฒ„์ „ ์ƒ์„ฑ

  4. ๊ธด ๋งฅ๋ฝ ์ฒ˜๋ฆฌ(Long Context Tips): ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ํ™œ์šฉ

https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/long-context-tips

ํ•ต์‹ฌ ์ „๋žต

Claude์˜ 200K ํ† ํฐ ์ปจํ…์ŠคํŠธ ์œˆ๋„์šฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ฒ•๋“ค์ž…๋‹ˆ๋‹ค.

์ตœ์ ํ™” ๊ธฐ๋ฒ•

1. ๊ธด ๋ฌธ์„œ๋ฅผ ์ƒ๋‹จ์— ๋ฐฐ์น˜

1
2
3
4
5
6
7
8
9
10
11
<documents>
  <document index="1">
    <source>annual_report_2023.pdf</source>
    <document_content>
      
    </document_content>
  </document>
</documents>

<!-- ์‹ค์ œ ์งˆ๋ฌธ์€ ๋ฌธ์„œ ๋‹ค์Œ์— ๋ฐฐ์น˜ -->
์—ฐ๊ฐ„ ๋ณด๊ณ ์„œ๋ฅผ ๋ถ„์„ํ•˜์—ฌ ์ „๋žต์  ์šฐ์œ„์ ์„ ์‹๋ณ„ํ•˜๊ณ  Q3 ์ง‘์ค‘ ์˜์—ญ์„ ์ถ”์ฒœํ•ด์ฃผ์„ธ์š”.

2. ๊ด€๋ จ ์ธ์šฉ๊ตฌ ๋จผ์ € ์ถ”์ถœ

1
2
3
4
5
6
7
<quotes>
ํ™˜์ž ๊ธฐ๋ก์—์„œ ์ง„๋‹จ๊ณผ ๊ด€๋ จ๋œ ์ธ์šฉ๊ตฌ๋ฅผ ๋จผ์ € ์ถ”์ถœํ•ด์ฃผ์„ธ์š”.
</quotes>

<diagnosis>
์ถ”์ถœ๋œ ์ธ์šฉ๊ตฌ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ง„๋‹จ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ด์ฃผ์„ธ์š”.
</diagnosis>

3. ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋กœ ๋ฌธ์„œ ๊ตฌ์กฐํ™”
์—ฌ๋Ÿฌ ๋ฌธ์„œ๋ฅผ ๋‹ค๋ฃฐ ๋•Œ๋Š” ๊ฐ ๋ฌธ์„œ๋ฅผ ๋ช…ํ™•ํžˆ ํƒœ๊ทธํ•˜๊ณ  ์ถœ์ฒ˜๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ „ ์ ์šฉ์„ ์œ„ํ•œ ๊ถŒ๊ณ ์‚ฌํ•ญ

์ ์ง„์  ์ ‘๊ทผ

  1. ๊ธฐ๋ณธ๊ธฐ๋ถ€ํ„ฐ: ๋ช…ํ™•ํ•˜๊ณ  ์ง์ ‘์ ์ธ ์ง€์‹œ๋ถ€ํ„ฐ ์‹œ์ž‘
  2. ์˜ˆ์‹œ ์ถ”๊ฐ€: 3-5๊ฐœ์˜ ๋‹ค์–‘ํ•œ ์˜ˆ์‹œ๋กœ ์ •ํ™•์„ฑ ํ–ฅ์ƒ
  3. ๊ตฌ์กฐํ™”: XML ํƒœ๊ทธ๋กœ ๋ณต์žกํ•œ ํ”„๋กฌํ”„ํŠธ ๊ตฌ์กฐํ™”
  4. ์ „๋ฌธ์„ฑ ๊ฐ•ํ™”: ์—ญํ•  ๋ถ€์—ฌ๋กœ ๋„๋ฉ”์ธ ํŠนํ™” ์„ฑ๋Šฅ ํ™•๋ณด
  5. ๊ณ ๊ธ‰ ๊ธฐ๋ฒ•: ์—ฐ์‡„์™€ ๊ธด ๋งฅ๋ฝ ์ฒ˜๋ฆฌ๋กœ ๋ณต์žกํ•œ ์ž‘์—… ์ˆ˜ํ–‰

์„ฑ๋Šฅ ์ธก์ •๊ณผ ๊ฐœ์„ 

  • A/B ํ…Œ์ŠคํŠธ๋ฅผ ํ†ตํ•œ ํ”„๋กฌํ”„ํŠธ ๋น„๊ต
  • ๋‹จ๊ณ„๋ณ„ ์„ฑ๋Šฅ ๋ชจ๋‹ˆํ„ฐ๋ง
  • ๋ฌธ์ œ ๋ฐœ์ƒ ์‹œ ๊ฐœ๋ณ„ ๋‹จ๊ณ„ ๊ฒฉ๋ฆฌ ๋ฐ ๊ฐœ์„ 
  • ์‚ฌ์šฉ์ž ํ”ผ๋“œ๋ฐฑ์„ ํ†ตํ•œ ์ง€์†์  ๊ฐœ์„ 

๊ฒฐ๋ก 

ํšจ๊ณผ์ ์ธ prompt engineering์€ Claude์™€์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค. ์ด 9๊ฐ€์ง€ ๊ธฐ๋ฒ•์„ ๋‹จ๊ณ„์ ์œผ๋กœ ์ ์šฉํ•˜๋ฉด์„œ, ์—ฌ๋Ÿฌ๋ถ„์˜ ํŠน์ • ์‚ฌ์šฉ ์‚ฌ๋ก€์— ๋งž๊ฒŒ ์กฐ์ •ํ•ด๋‚˜๊ฐ€์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ํŠนํžˆ ๋ฐ์ดํ„ฐ ์‚ฌ์ด์–ธ์Šค์™€ AI ๊ฐœ๋ฐœ ๋ถ„์•ผ์—์„œ๋Š” ์ด๋Ÿฌํ•œ ๊ธฐ๋ฒ•๋“ค์ด ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ์„ ๊ทน๋Œ€ํ™”ํ•˜๊ณ  ๋” ์ •ํ™•ํ•˜๊ณ  ์œ ์šฉํ•œ ๊ฒฐ๊ณผ๋ฅผ ์–ป๋Š” ๋ฐ ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.

์ฝ์–ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ๐Ÿ˜ธ



-->