파이프라인 짜기 (chat) · SmolLM2 360M
문제
영어 낱말 두 개짜리 문자열이 들어옵니다. 대문자로 바꾸고 모든 공백을 없애야 합니다.
그런데 모델이 직접 바꾸는 것이 아닙니다. 그 일을 하는 명령 파이프라인을 내야 하고, 채점기가 그것을 입력에 적용합니다.
쓸 수 있는 명령은 이것뿐입니다.
upper 대문자 · lower 소문자 · reverse 뒤집기 · trim 앞뒤 공백 떼기 nospace 모든 공백 없애기 · digits 숫자만 · letters 영문자만 first 첫 글자 · last 마지막 글자 · len 글자 수 · sort 글자 정렬
| 로 이어 쓰고, 왼쪽에서 오른쪽으로 적용됩니다. 최대 6단계입니다.
모델이 upper | nospace 를 내면 채점기가 그것을 실행합니다. 마지막 줄만 읽습니다. 모르는 명령이 섞이면 그 케이스는 실패입니다.
예를 들어 Hello World 가 들어오는 케이스라면, 모델이 내야 하는 것은 upper | nospace 이고, 채점기가 그것을 적용해 만드는 HELLOWORLD 가 기대 출력입니다. 모델이 upper 하나만 내고 멈추면 공백이 남아 그 케이스는 떨어집니다.
입력 조건
입력은 한 줄로 들어옵니다.
입력의 길이는 10자 이상 13자 이하입니다.
출력 조건
첫째 줄에 명령 파이프라인을 출력합니다.
채점기가 그 파이프라인을 입력에 적용한 결과의 길이는 9자 이상 12자 이하입니다.
다른 글자는 붙이지 않습니다.
기대값과 한 글자도 달라서는 안 됩니다.
요구사항
- 입력은 낱말 두 개짜리 문자열입니다.
- 출력은 명령 파이프라인입니다.
- chat 모드입니다. 채팅 템플릿으로 감싸 모델이 조수가 됩니다. 제어 토큰을 직접 적어 여러 턴짜리 대화를 만들 수 있습니다.
- 모델이 내야 하는 것은 결과가 아니라 명령 파이프라인입니다. 채점기가 그 명령을 입력에 적용합니다.
- 출력이 글자 하나까지 기대값과 같아야 합니다. 앞뒤 공백만 무시합니다.
- 이 문제는 SmolLM2 360M 로 풉니다. Qwen3 0.6B 보다 훨씬 작은 모델이라 같은 프롬프트가 그대로 통하지 않습니다.
- 케이스는 16개이고, 그 가운데 5개는 입력과 기대 출력을 함께 보여 줍니다. 나머지는 입력만 보여 줍니다.
- 모델 출력은 최대 16 토큰까지만 받습니다.
- 케이스 16개를 전부 통과해야 해결입니다.
예시
공개 케이스 5개입니다. 채점에는 숨은 케이스가 함께 쓰입니다. 케이스 16개를 전부 통과해야 해결입니다.
Hello World
HELLOWORLD
Local Judge
LOCALJUDGE
Margin Probe
MARGINPROBE
Token Stream
TOKENSTREAM
Greedy Decode
GREEDYDECODE
참고 사항
풀이에 도움이 되는 배경입니다. 지켜야 하는 규격은 위의 입출력 조건과 요구사항에 있습니다.
SmolLM2 360M 은 Qwen3 0.6B 의 몇 분의 일밖에 안 되는 모델입니다. 지시를 흘려듣는 일이 훨씬 잦습니다. 같은 말을 더 짧고 분명하게 써야 듣습니다.