Suffix-Constrained Greedy Search Algorithms for Causal Language Models

이 논문은 최종 답변이 엄격한 템플릿을 따르도록 강제하여 파싱을 용이하게 하고 정확도를 높이는 '접미사 제약 탐욕 검색 (suffix-constrained greedy search)' 알고리즘을 제안합니다.

Ayoub Hammal, Pierre Zweigenbaum, Caio Corro

게시일 2026-03-03
📖 3 분 읽기☕ 가벼운 읽기

Each language version is independently generated for its own context, not a direct translation.

이 논문은 **거대 언어 모델 **(LLM)에 대한 연구입니다.

한마디로 요약하자면: "AI 가 복잡한 추론을 하되, 마지막 답만은 우리가 정한 규칙에 딱 맞게 나오도록 장난감을 만들어낸 방법"입니다.

이 내용을 일상적인 비유로 쉽게 설명해 드릴게요.


1. 문제: "AI 는 너무 말이 많아요!"

우리가 AI 에게 수학 문제를 풀게 하면, AI 는 보통 이런 식으로 답변합니다.

"자, 이 문제를 풀어보죠. 6 개의 감자로 36 개의 감자튀김이 나온다면... (중략) ...그래서 정답은 576 입니다. 아, 그리고 감자튀김은 정말 맛있죠. 다음엔..."

여기서 문제가 생깁니다.
우리가 컴퓨터 프로그램으로 이 답을 자동으로 받아쓰려고 할 때, AI 가 "정답은 576 입니다"라고 말한 뒤에 또 다른 이야기를 덧붙이거나, 아예 말을 끝내지 못하고 "감자튀김은..."이라고 계속 떠들다가 시간이 다 되어 멈추면, 컴퓨터는 **"정답이 뭐지?"**하고 헤매게 됩니다.

기존의 방법들은 AI 에게 "답만 말해"라고 강요하면, AI 가 추론하는 과정 (이유 설명) 을 생략해서 오히려 틀린 답을 내놓거나, 반대로 "답만 말해"라는 지시를 무시하고 장황하게 늘어놓는 문제가 있었습니다.

2. 해결책: "마지막 문장만 규칙대로" (Suffix-Constrained Generation)

이 논문은 아주 똑똑한 해결책을 제시합니다.
"AI 가 자유롭게 생각할 수는 있지만, 마지막에 '정답'을 쓸 때는 우리가 정한 딱딱한 규칙을 지켜야 한다고 약속하는 것"입니다.

이를 **'접미사 제약 **(Suffix-Constrained)이라고 부릅니다.

🍳 요리사 비유

이 상황을 **요리사 **(AI)와 **요리사 **(AI)로 비유해 볼까요?

  • 기존 방식: 요리사에게 "요리해 줘"라고 하면, 그는 요리를 하다가 마지막에 "이제 접시에 담을게"라고 말하고는, 갑자기 "아, 그리고 오늘 날씨가 좋네요"라고 말하며 접시를 넘겨줍니다. 우리는 그 접시에서 정작 필요한 요리를 찾기 위해 헤매야 합니다.
  • 이 논문의 방식: 요리사에게 "네가 원하는 대로 요리를 하되, **마지막 한 접시만은 내가 준 그릇 **(규칙)이라고 말합니다.
    • 요리사는 자유롭게 재료를 섞고 맛을 볼 수 있습니다 (자유로운 추론).
    • 하지만 마지막에 요리를 그릇에 담을 때는, 그 그릇의 모양 (규칙) 에 맞춰야만 합니다.
    • 만약 요리사가 그릇에 담지 않고 다른 걸 말하려 하면, 시스템이 "아니, 그릇에 담아!"라고 부드럽게 하지만 확실하게 잡아줍니다.

3. 어떻게 작동할까요? (두 개의 가설을 동시에 추적)

이 논문은 AI 가 답을 낼 때 두 가지 시나리오를 동시에 상상하는 알고리즘을 개발했습니다.

  1. **자유로운 생각 **(Greedy Hypothesis) AI 가 "아무 말이나" 계속하는 시나리오입니다.
  2. **규칙을 지키는 생각 **(Constrained Hypothesis) AI 가 "규칙에 맞춰 답을 쓰는" 시나리오입니다.

이 두 가지를 동시에 지켜보다가, **"어? 지금 AI 가 규칙을 지키기 시작할 만한 타이밍 **(분기점)을 포착합니다.

  • 만약 AI 가 규칙을 지키기 시작하면, 그 시점부터는 무조건 규칙대로만 답을 쓰게 만듭니다.
  • 만약 AI 가 규칙을 지키다가 헷갈려서 엉뚱한 말을 하면, 그 시점을 '페널티'로 기록하고, 더 좋은 시나리오로 갈아타는 것입니다.

이 과정을 **포크 **(Bifurcation)라고 부릅니다. 두 갈래 길이 갈라질 때, 더 나은 길을 선택하는 것입니다.

4. 왜 이게 중요한가요?

  • 정답을 100% 확실히 뽑아낼 수 있습니다: AI 가 아무리 말을 많이 해도, 마지막에 "정답: 576"이라는 규칙을 따르기만 하면, 컴퓨터는 그 부분을 딱 잘라내서 바로 사용할 수 있습니다.
  • 성능이 오히려 좋아집니다: 놀랍게도, 답을 규칙에 맞춰서 내도록 강제한다고 해서 AI 의 추론 능력이 떨어지지 않습니다. 오히려 AI 가 헷갈려서 말을 멈추거나 (시간 초과), 엉뚱한 말을 덧붙이는 실수를 줄여서 정답률이 더 높아졌습니다.
  • 어떤 모델에도 적용 가능: 이 방법은 AI 를 다시 훈련시킬 필요 없이, 기존에 있는 어떤 AI 모델에도 바로 적용할 수 있습니다.

5. 결론

이 논문은 "AI 에게는 자유롭게 생각하게 하되, 마지막 결과물은 우리가 원하는 형식으로 깔끔하게 정리하게 만드는 기술을 개발했습니다.

마치 유아원 선생님이 아이들에게 "자유롭게 놀아도 돼!"라고 말하지만, "놀이 끝날 때는 장난감을 제자리에 정리해야 해!"라고 가르치는 것과 같습니다. 덕분에 아이들은 창의적으로 놀면서도, 방은 항상 정리되어 있고 다음 사람이 들어오기 편해집니다.

이 기술 덕분에 AI 가 수학 문제를 풀거나 복잡한 질문을 할 때, 우리가 그 답을 자동으로 받아쓰는 일이 훨씬 쉬워지고 정확해졌습니다.