로그인가입

배우기 / [튜토리얼 1]

프롬프트는 어디에 들어가는가

Qwen3 0.6BrawP01
이 글에서 배울 내용
raw 모드는 pre_prompt + 입력 + post_prompt 를 그대로 잇는다

첫 문제는 덧셈입니다. 3 + 3 이 들어오면 6 을 내놓으면 됩니다. 계산 자체는 어렵지 않습니다. 그런데 처음 들어오신 분들이 여기서 많이 막힙니다. 막히는 까닭은 덧셈이 아니라, 내가 쓴 프롬프트(prompt)가 모델에 어떤 모양으로 도착하는지를 모르기 때문입니다.

모델은 질문에 답하지 않습니다

먼저 이것부터 짚고 가겠습니다. 언어 모델(Language Model)은 질문을 받고 답하는 기계가 아닙니다. 다음 글자를 예측하는 기계입니다. 우리가 평소에 쓰는 챗봇이 질문에 답하는 것처럼 보이는 것은, 그 앞뒤로 틀을 하나 씌워서 그렇게 보이게 만들어 둔 것입니다.

이 문제는 그 틀을 벗긴 상태입니다. 그것을 raw 모드라고 부릅니다. 모델에게는 우리가 쓴 글이 그냥 이어 써야 할 글 한 덩어리로 보입니다.

세 조각이 그대로 이어붙습니다

풀이 칸에 보면 pre_prompt 와 post_prompt 두 칸이 있습니다. 채점할 때 이 둘 사이에 케이스 입력이 끼어들어갑니다. 그게 전부입니다.

모델에 들어가는 글
pre_prompt + 입력 + post_prompt

줄바꿈도 공백도 더해 주지 않습니다. 쓴 그대로 붙습니다. 그래서 pre_prompt 끝에 줄바꿈을 넣을지 말지가 결과를 바꿉니다. 풀이 칸 아래의 전체 프롬프트 를 펼쳐 두면 쓰는 즉시 합쳐진 글이 보입니다. 거기를 보면서 쓰십시오.

그래서 무엇을 쓰면 되나

모델이 글을 잇는 기계라면, 이어 쓰고 싶어지는 모양을 만들어 주면 됩니다. 사람에게 설명하듯 지시를 쓰는 대신, 답이 이미 적혀 있는 보기를 몇 줄 보여 주고 같은 모양으로 이어가게 하는 것입니다.

이렇게 넣으면
7 + 2 = 9
4 + 10 = 14
3 + 3 = 

앞의 두 줄에서 규칙이 보입니다. X + Y = 뒤에는 답이 온다는 규칙입니다. 마지막 줄은 3 + 3 = 에서 끊겨 있습니다. 모델은 이 줄을 마저 채우려고 하고, 채우면 6 이 됩니다.

지시를 쓰는 대신 보기를 보여 주고 끊는다. raw 모드에서 제일 잘 통하는 방법입니다.

post_prompt 가 ` = ` 인 까닭

post_prompt 를 비워 두면 전체 프롬프트가 3 + 3 에서 끝납니다. 모델은 이 줄이 아직 안 끝났다고 보고 + 5 = 11 처럼 식을 더 이어 쓸 수도 있습니다. = 까지 적어 주면 다음에 올 것은 답뿐이라는 자리가 만들어집니다.

끝의 공백 하나도 일부러 넣은 것입니다. = 바로 뒤에 붙여 쓰면 모델이 =6 처럼 낼 수 있고, 공백을 두면 6 을 내기 쉬워집니다. 이 정도로 사소한 것이 결과를 가릅니다.

직접 해보기

  • 아래 예시 답안을 복사해서 문제 쪽에 붙이고 채점해 보십시오.

  • 통과하면 post_prompt 의 끝 공백을 지워 보고 무엇이 달라지는지 보십시오.

  • 보기를 한 줄로 줄여 보고, 아예 없애 보십시오. 몇 줄부터 무너지는지 보십시오.

예시 답안

그대로 복사해서 문제 쪽의 같은 이름 칸에 붙이시면 됩니다. ␣ 는 공백, ↵ 는 줄바꿈을 보이게 적은 것입니다. 복사되는 것은 원래 글자입니다.

pre_prompt
7␣+␣2␣=␣9↵
4␣+␣10␣=␣14↵
post_prompt
␣=␣

한 번 통과시켜 보신 다음에는 꼭 고쳐 보십시오. 어디를 건드리면 무너지는지 보는 것이 답을 아는 것보다 오래 남습니다.