오늘의 AI 용어: 제약 디코딩 모델 (Constrained Decoding Model, CDM)

한 줄로: 아무 문장이나 쓰는 대신, 정해 둔 답(라벨 목록, 원문 속 구간, 짧은 요약)만 내놓도록 만든 작은 전용 모델이에요. 그래서 일반 LLM보다 훨씬 빠르고 쌉니다.

이건 새 기술일까요? 반은 오래됐고 반은 새로워요.
– 뿌리인 제약 디코딩(constrained decoding) 기법은 2023년에 나왔어요. 2023년 7월에 llama.cpp가 GBNF 문법으로 출력을 묶는 기능을 넣었고, 같은 달 Outlines 논문(Efficient Guided Generation)이 나왔죠. 호스팅 API에서는 2024년 8월 OpenAI Structured Outputs(JSON 스키마 강제)로 대중화됐어요.
– 이번에 화제가 된 건 2026년 10월 13일이에요. ScaleDown이 이 방식을 아예 “한 가지 일만 하는 모델” 묶음(Summarize, Compress, Extract, Classify)으로 내놨고, 같은 날 LangChain 공식 연동과 OpenRouter 등록이 함께 나왔어요. 회사 발표로는 이런 좁은 작업에서 최상위 모델보다 200배 빠르고 467배 싸다고 해요(자체 벤치마크 기준).

즉, 기법은 3년 된 기술이고, 그걸 “에이전트 옆에 붙이는 전용 모델”이라는 상품으로 만든 게 이번 주의 새 소식이에요.

왜 지금 뜨나요? 몇 시간씩 도는 에이전트는 거의 매 턴마다 자잘한 판단을 해요. 오래된 대화를 요약할지, 긴 웹페이지에서 필요한 문단만 남길지, 지금 같은 작업을 맴돌고 있는지 같은 판단이죠. 이걸 전부 Claude 같은 큰 모델에 맡기면 느리고 비싸요. CDM은 이런 반복 판단만 싸게 떼어 내는 용도예요.

Claude만 쓰던 개발자라면 이렇게 나눠 보세요
– Claude에 계속 맡길 일: 계획 세우기, 코드 쓰기, 답장 초안처럼 정답이 정해져 있지 않은 일.
– CDM에 넘길 일: 긴 기록 요약, 툴 결과 압축, 주문번호나 에러 코드 그대로 뽑기, “진행 중 / 맴도는 중 / 엇나가는 중” 분류처럼 답의 모양이 정해진 일. 특히 에러 코드나 이메일처럼 한 글자도 바뀌면 안 되는 값은 원문에서 복사해 오는 Extract가 더 안전해요.
– 넘기는 기준: Classify는 라벨마다 확률을 주니까, 확신이 낮을 때만 Claude에게 다시 물어보는 식으로 짜면 돼요. 평소엔 싼 모델을 쓰고 어려울 때만 큰 모델로 올리는 구조예요. 반복 작업 감지기를 Classify로 만들어 두면, 에이전트가 같은 실패를 되풀이할 때 자동으로 멈추게 할 수도 있어요.

연관 용어
– Structured Outputs: 일반 LLM의 출력을 JSON 스키마에 맞게 강제하는 기능(2024년 8월 OpenAI). CDM은 여기서 더 나아가 모델 자체를 한 가지 작업 전용으로 만든 거예요.
– 컨텍스트 압축 (Context compaction): 오래 도는 에이전트의 대화 기록과 툴 결과를 줄여서 컨텍스트 창이 넘치지 않게 하는 일. CDM이 가장 많이 쓰이는 곳이에요.
– 모델 라우팅: 작업 난이도에 따라 싼 모델과 비싼 모델에 나눠 보내는 설계. 예전에 다룬 Jev와 같은 계열이고, ScaleDown Classify는 Jev의 Decisions API와 요청 형식이 호환돼요.

더 보고 싶으면 ScaleDown Extract 문서부터 보시면 좋아요.

댓글 남기기