본문 바로가기
C.W.K.
Stream
Lesson 07 of 10 · published

경계 조건 — 정보가 없을 때 무엇을 할까

~16 min · instructions, uncertainty, honesty

Level 0수련생
0 XP0/100 lessons0/14 achievements
0/120 XP to next level120 XP to go0% complete

가장 흔한 고장: 모르는 자리를 조용히 꾸며내기

필요한 정보가 없으면 모델은 빈칸을 그럴듯한 말로 메우려 해. 경계 조건을 따로 주지 않으면 존재하지 않는 인용문과 통계, 출처가 생겨나지. 해결책은 막연히 “더 좋은 프롬프트”를 쓰는 게 아니라, 정보가 빠진 경우에 무엇을 할지 정확히 정하는 거야.

경계 조건을 만드는 순서

꼭 필요한 입력마다 이름을 붙이고, 값이 없을 때의 행동을 명시해.

  1. 반드시 있어야 하는 입력을 모두 나열해.
  2. null, 빈 문자열, 빠진 키처럼 각 입력이 없음을 나타내는 표준값을 정해.
  3. 빠진 값을 발견했을 때 돌려줄 응답 모양을 정해.
  4. 없는 정보를 새로 만들어 대신하지 말라고 못 박아.

이렇게 하면 왜 나아질까

이제 모델은 무엇을 “빠진 정보”로 볼지, 그때 어떻게 행동할지 추측하지 않아도 돼. null을 만났을 때 정해진 값을 돌려주는 좋은 코드처럼, 정보 부재에도 구조화된 응답을 내놓게 돼.

Code

명시적인 경계 조건 블록·markdown
## Required inputs
- {{customer_name}} — string, non-empty
- {{order_id}} — string, must match /^[A-Z]{2}-\d{6}$/
- {{transcript}} — non-empty conversation log

## When inputs are missing
Return JSON only:
{
  "status": "insufficient_context",
  "missing": ["<field name>", ...],
  "hint": "<which earlier step should provide this>"
}
Do not draft a response from partial inputs.

External links

Exercise

프롬프트 하나에서 필수 입력을 빠짐없이 찾아봐. 값이 없을 때의 행동을 정한 경계 조건 블록을 더하고, 각 입력을 하나씩 일부러 빼며 제대로 반응하는지 시험해.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.