프롬프트 잘 쓰는 법

"해줘" 한 마디로 끝내지 않고, AI가 한 번에 정확하게 하게 만드는 요청 작성 공식

프롬프트는 요리 레시피입니다

모호한 레시피로는 같은 음식이 안 나옵니다. AI도 마찬가지입니다. "예쁘게 만들어줘"와 "배경은 흰색, 버튼은 둥글게, 글자는 16px"는 전혀 다른 결과를 냅니다.

좋은 프롬프트의 4가지 요소

1. 무엇을 (What)

행동 동사로 시작합니다.

"로그인 기능" → "로그인 페이지를 만들어줘"

2. 조건 (Constraint)

범위와 제약을 명시합니다.

"로그인 페이지를 만들어줘. 이메일+비밀번호만, 소셜 로그인 없이, 새 라이브러리는 설치하지 말고 기존 Supabase 클라이언트만 써서."

3. 기준 (Standard)

어떻게 되면 성공인지 알려줍니다.

"성공 시 /dashboard로 이동하고, 실패 시 에러 메시지를 폼 아래에 빨간 텍스트로 보여줘."

4. 참조 (Reference)

예시나 파일을 지목합니다.

"@src/components/SignupForm.tsx 와 같은 스타일로 만들어줘."

상황별 프롬프트 패턴

새 기능 추가

"[기능]을 추가해줘. 파일은 @[파일] 을 수정하고, [조건]. [성공 기준]."

버그 수정

"@[파일] [줄 번호] 근처에서 [현상]이 생겨. 원인을 찾아서 고쳐줘. 수정 전에 원인을 설명해줘."

리팩터링

"@[파일]을 [목적]에 맞게 정리해줘. 동작은 바꾸지 말고, [제약]."

잘 모를 때

"[상황]을 해결하는 방법 3가지를 비교해줘. 각각의 장단점과 우리 프로젝트에 맞는 것을 추천해줘."

피할 패턴

피할 것이유대신
"전체를 다시 써줘"검토 불가"이 함수만 리팩터링해줘"
"최선을 다해줘"기준이 없음"응답 시간 200ms 이하로"
"알아서 해줘"의도 전달 안 됨조건을 3개 이상 명시
"왜 안 돼?"정보 부족에러 메시지 + 코드 + 시도한 것 붙여넣기

길이에 대해

짧은 프롬프트가 항상 나쁜 건 아닙니다. 단순한 작업은 짧게. 복잡한 작업은 조건을 갖춰서. 불필요한 배경 설명은 오히려 핵심을 묻습니다.

반복 수정 방법

첫 결과가 맘에 안 들면 전체를 다시 쓰는 대신:

"버튼 색을 파란색으로 바꿔줘."

"3번 항목의 간격이 너무 좁아. 위아래로 16px씩 늘려줘."

조각 하나씩 고치면 어디서 틀렸는지 알 수 있고, 되돌리기도 쉽습니다.