구체적인 세부 정보 추가하기
인공지능의 출력을 구체화하는 숫자, 이름, 형식 및 예시를 알아보십시오.
구체적인 세부 정보 추가하기은(는) CoddyKit의 무료 AI Prompt Engineering 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 AI Prompt Engineering 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. AI Prompt Engineering 강의에는 총 4개의 강의가 포함되어 있습니다.
구체적인 세부 정보는 기준점입니다
구체적인 세부 정보란 구체적이고 측정 가능하며 검증할 수 있는 정보입니다. 이러한 정보는 일반적인 해석이 아니라 실제 상황에 맞춰 모델의 출력을 고정합니다.
기준점이 없으면 모델은 가상의 평균 사용자를 대상으로 내용을 생성합니다. 기준점이 있으면 사용자님을 대상으로 생성합니다.
구체적 제약으로서의 단어 수
단어 수는 추가할 수 있는 가장 간단하면서도 효과적인 구체적 세부 정보 중 하나입니다. 다음을 비교해 보세요.
- 모호한 표현: '짧은 설명을 작성해 주세요'
- 구체적인 표현: '75단어로 설명을 작성해 주세요'
모델은 토큰을 세고 목표치에 맞추려고 합니다. 조금 어긋나면 정확히 다시 세어 달라고 요청할 수 있습니다. 단어 수를 지정하면 여러 종류의 다시 쓰기를 아예 피할 수 있습니다.
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=200,
messages=[{
'role': 'user',
'content': (
'Write a product description for a noise-cancelling travel pillow in exactly 60 words. '
'After the description, output the word count in parentheses on a new line.'
)
}]
)
print(response.content[0].text)구체적인 세부 정보로서의 대상 독자
구체적이고 실제적인 대상 독자를 명시하면 출력의 어휘, 예시, 깊이가 크게 달라집니다.
- 모호한 표현: '신경망을 설명해 주세요'
- 구체적인 표현: '코딩 배경지식은 없지만 엑셀 피벗 테이블은 이해하는 포춘 500대 기업의 마케팅 관리자에게 신경망을 설명해 주세요'
두 번째 프롬프트는 모델이 실제 독자의 모습을 머릿속에 그리게 하므로 복잡도를 정확하게 조절할 수 있습니다.
import openai
client = openai.OpenAI(api_key='sk-your-key-here')
concrete_audience_prompt = (
'Explain what a REST API is.\n\n'
'Audience: a non-technical product manager who uses Salesforce daily '
'and understands the concept of a form submission on a website. '
'They will use this explanation to brief their engineering team tomorrow. '
'Use one real-world analogy. Max 100 words.'
)
response = client.chat.completions.create(
model='gpt-4o',
messages=[{'role': 'user', 'content': concrete_audience_prompt}]
)
print(response.choices[0].message.content)일반화 대신 명명된 개체
실제 제품명, 회사명, 사람, 기술, 날짜와 같은 명명된 개체를 사용하면 모델이 일반적인 영역에서 벗어나게 됩니다.
- 모호한 표현: '경쟁 분석을 작성해 주세요'
- 구체적인 표현: '매일 글을 쓰고 오프라인 접근이 필요하며 10명 규모의 원격 팀을 관리하는 고급 사용자를 위해 노션, 옵시디언, 롬 리서치를 비교하는 경쟁 분석을 작성해 주세요'
명명된 개체는 모델이 학습을 통해 습득한 실제 세계의 지식에 기준점을 제공합니다.
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=400,
messages=[{
'role': 'user',
'content': (
'Compare FastAPI vs Flask vs Django REST Framework '
'for building a production API that will serve a React frontend. '
'Context: 2-person startup team, Python 3.11, needs async support, '
'expects < 50 ms response time, and will deploy on AWS Lambda. '
'Format: 3-column markdown table with rows: setup complexity, '
'async support, performance, learning curve, community size.'
)
}]
)
print(response.content[0].text)정량적 제약
숫자는 모호하지 않습니다. 수치로 된 요구 사항이 있다면 언제든 프롬프트에 포함하세요.
- 정확히 N개의 항목을 나열합니다. ('몇 가지' 또는 '여러 가지'라고 하지 않습니다)
- 단어 수 또는 글자 수의 최대치와 최소치
- 구체적인 백분율 또는 비율 ('실용적인 내용 70%, 이론적인 내용 30%')
- 시간 제약 ('이 글을 읽는 데 3분밖에 없다고 가정하고 설명해 주세요')
- 성능 목표 ('O(n) 시간 복잡도를 달성하는 접근법을 제안해 주세요')
import openai
client = openai.OpenAI(api_key='sk-your-key-here')
response = client.chat.completions.create(
model='gpt-4o',
messages=[{
'role': 'user',
'content': (
'Generate exactly 8 onboarding email subject lines for a B2B SaaS product. '
'Requirements:\n'
'- Exactly 8 lines, no more, no fewer\n'
'- Each subject line between 40 and 60 characters\n'
'- 4 must emphasize value, 4 must create urgency\n'
'- Label each line: [VALUE] or [URGENCY]\n'
'- No emojis\n'
'- No duplicate words across all 8 lines'
)
}]
)
print(response.choices[0].message.content)마감 기한과 시간 기반 맥락 설정
시간적 맥락을 제공하면 출력의 깊이와 초점이 달라집니다. 이 콘텐츠를 언제 사용할지와 그로 인해 생기는 제약을 모델에 알려 주세요.
- '이 이메일은 2시간 후에 발송할 예정이므로 간결하게 작성해 주세요'
- '월요일 이사회 발표에 사용할 내용이므로 경영진 수준의 언어를 사용해 주세요'
- '이 설명은 5분짜리 스탠드업 회의에서 사용할 수 있어야 합니다'
- '고객과 통화하기 전에 10분 동안 검토할 팀을 위해 작성해 주세요'
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=256,
messages=[{
'role': 'user',
'content': (
'Write a project status update for our AI chatbot project. '
'This will be read aloud at a 5-minute Monday morning stand-up. '
'The audience has zero technical background. '
'Talking time: max 2 minutes (approximately 300 words). '
'Cover: what we shipped last week, one current blocker, one upcoming milestone. '
'Tone: confident and factual. No jargon.'
)
}]
)
print(response.content[0].text)프롬프트의 구체적인 예시
원하는 것 또는 원하지 않는 것의 구체적인 예시를 포함하는 것은 가장 효과가 큰 기법 중 하나입니다. 예시는 형식, 문체, 스타일을 동시에 학습시킵니다.
다음과 같은 항목을 포함할 수 있습니다:
- 이상적인 출력의 예시(한 번 제시)
- 레이블이 붙은 여러 예시(여러 예시 학습)
- 이전에 문제가 발생한 예시(부정적 예시)
import openai
client = openai.OpenAI(api_key='sk-your-key-here')
prompt = '''
Write 3 feature announcement tweets for a new developer tool.
Here is an example of the style I want:
"We just shipped inline type errors in the editor. No more tab-switching to find
what broke. Your flow stays unbroken. Try it now: [link]"
Characteristics of this style:
- Opens with what shipped, not with excitement words
- Describes the user benefit in the second sentence
- Ends with a CTA
- No hashtags. No emojis. Under 200 characters.
New feature: autocomplete that learns from your codebase.
'''
response = client.chat.completions.create(
model='gpt-4o',
messages=[{'role': 'user', 'content': prompt}]
)
print(response.choices[0].message.content)도메인별 어휘
도메인별 용어를 포함하면 출력에서 기대되는 전문성 수준을 모델에 알릴 수 있습니다.
- '캐싱을 설명해 주세요' → generic 응답
- 'Memcached에서 Redis 7.x로 마이그레이션하는 백엔드 엔지니어를 대상으로 Redis LRU 제거 정책을 설명해 주세요' → 전문가 수준의 도메인 기반 응답
프롬프트에 해당 분야의 어휘를 사용하면 모델이 출력에서도 그 어휘를 따라 사용합니다.
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
# Generic prompt vs domain-vocabulary prompt
generic = 'Explain caching strategies.'
domain_anchored = (
'Compare write-through, write-behind, and cache-aside patterns '
'for a microservices architecture using Redis 7.x as the cache layer and '
'PostgreSQL 15 as the source of truth. '
'Focus on consistency guarantees, latency tradeoffs, and failure modes. '
'Audience: senior backend engineers familiar with CAP theorem.'
)
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=400,
messages=[{'role': 'user', 'content': domain_anchored}]
)
print(response.content[0].text)제외할 항목에 대한 제약
구체적인 부정적 제약(제외 규칙)은 모델이 뻔하고 일반적인 방향으로 나아가는 것을 막습니다:
- '유료 API 키가 필요한 해결책은 제안하지 마세요'
- '경쟁업체를 이름으로 언급하지 마세요'
- '레버리지 또는 시너지라는 단어를 사용하지 마세요'
- '이론적인 내용은 포함하지 마세요 — 실용적인 내용만 제시하세요'
- '구현하는 데 5분 넘게 걸리는 접근 방식은 제외하세요'
각 제외 규칙은 일반적인 내용으로 이어질 수 있는 경로를 하나씩 없애 출력의 초점을 더욱 선명하게 만듭니다.
import openai
client = openai.OpenAI(api_key='sk-your-key-here')
response = client.chat.completions.create(
model='gpt-4o',
messages=[{
'role': 'user',
'content': (
'Suggest 5 ways to speed up a slow Python script. '
'EXCLUDE:\n'
'- Suggestions requiring third-party libraries (stdlib only)\n'
'- Suggestions about hardware upgrades\n'
'- Rewrites of the entire script\n'
'- Suggestions that take more than 30 minutes to implement\n'
'Each suggestion: one sentence describing what to do, one sentence on expected speedup.'
)
}]
)
print(response.choices[0].message.content)모든 요소 결합하기
완전히 구체적인 프롬프트를 단계별로 만들어 보겠습니다. 출발점은 다음과 같습니다: '직무 설명을 작성해 주세요.'
- 역할 추가: '선임 머신 러닝 엔지니어를 대상으로'
- 고유명사 추가: '런던의 시리즈 B 인공지능 스타트업에서'
- 단어 수 추가: '350~400단어로'
- 대상 추가: '경력 5년 이상인 지원자를 대상으로'
- 구조 추가: '형식: 소개, 담당 업무(글머리 기호 8개), 요구 사항(글머리 기호 5개), 우대 사항(글머리 기호 3개)'
- 제외 사항 추가: '빠르게 변화하는 환경이나 열정적인 인재와 같은 상투적인 표현은 사용하지 마세요'
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
concrete_prompt = (
'Write a job description for a Senior ML Engineer position '
'at a Series B AI startup in London. '
'Target candidate: 5+ years ML experience, strong Python, familiar with LLMs. '
'Length: 350-400 words. '
'Structure:\n'
'1. 3-sentence company intro (no fluff — focus on product and mission)\n'
'2. Responsibilities: exactly 8 bullet points\n'
'3. Requirements: exactly 5 bullet points\n'
'4. Nice-to-haves: exactly 3 bullet points\n'
'EXCLUDE: phrases like "fast-paced", "passionate", "ninja", "rockstar", "self-starter".'
)
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=600,
messages=[{'role': 'user', 'content': concrete_prompt}]
)
print(response.content[0].text)프롬프트 보완 습관
모든 프롬프트를 보내기 전에 내용을 풍부하게 만드는 습관을 기르세요. 다음의 짧은 머릿속 점검을 진행하세요:
- 모호한 단어를 숫자로 바꿀 수 있나요?
- 특정 도구, 기술 또는 사람을 명시할 수 있나요?
- 대상을 더 정확히 설명할 수 있나요?
- 원하는 것의 예시를 추가할 수 있나요?
- '포함하지 말아야 할 항목'이라는 제약을 하나 이상 추가할 수 있나요?
- 출력 형식을 더 정확히 지정할 수 있나요?
두세 가지만 보완해도 출력 품질이 크게 향상됩니다.
# Prompt enrichment in code form: before/after comparison
before = 'Give me ideas for my presentation.'
after = (
'Generate 6 opening hook ideas for a 15-minute conference talk '
'titled "Why Your AI Prompts Are Failing You" at PyCon 2025. '
'Audience: Python developers, mostly backend, some ML experience. '
'Each hook: 2 sentences max. '
'Mix: 2 provocative statistics, 2 counterintuitive questions, 2 short stories. '
'EXCLUDE: "Did you know..." openers and rhetorical questions about the future of AI.'
)
print('BEFORE:', before)
print()
print('AFTER:', after)지식 확인
한 스타트업 창업자가 다음과 같은 프롬프트를 보냈습니다: '마케팅 문구 작성을 도와주세요.' 어떤 수정된 프롬프트가 가장 효과적인 구체적 세부 정보를 사용하나요?
구체적인 세부 정보 추가 — 복습
구체적인 세부 정보는 모호한 프롬프트를 정확한 지침으로 바꿉니다. 다음과 같은 구체화 기법을 사용하세요:
- 단어 수: '짧게/길게'를 정확한 숫자로 바꾸기
- 고유명사: 특정 제품, 도구, 회사, 사람
- 대상: 역할, 경력 수준, 이미 알고 있는 내용
- 정량적 제약: 항목 정확히 N개, 각 유형별 N%
- 도메인별 어휘: 기대되는 깊이를 알리기 위해 해당 분야의 용어 사용하기
- 예시: 좋은 출력이 어떤 모습인지 보여 주기
- 제외 사항: 모델이 피해야 할 항목을 명시하기
자주 묻는 질문
“구체적인 세부 정보 추가하기” 강의는 무료인가요?
네 — “구체적인 세부 정보 추가하기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 AI Prompt Engineering 강의 전체를 잠금 해제할 수 있습니다. AI Prompt Engineering 강의에는 총 4개의 강의가 포함되어 있습니다.
“구체적인 세부 정보 추가하기”에서 뭘 배우나요?
인공지능의 출력을 구체화하는 숫자, 이름, 형식 및 예시를 알아보십시오. 브라우저에서 직접 실행하는 실습 코드로 AI Prompt Engineering을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
AI Prompt Engineering을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 AI Prompt Engineering은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.
“구체적인 세부 정보 추가하기” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 AI Prompt Engineering 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 AI Prompt Engineering 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 구체성이 중요한 이유
- 프롬프트에서 모호성 제거하기
- 구체적인 세부 정보 추가하기
- 모호한 프롬프트와 구체적인 프롬프트 비교