검색 사전을 스스로 고치는 밤: 무인 루프로 닫은 스킬 라우팅 병목
1,600개가 넘는 스킬과 서브에이전트를 검색 기반으로 라우팅하는 실전 에이전트 하네스를 운영해 본 적이 있거나, 대규모 스킬·툴 라이브러리를 검색기 하나로 서비스하는 구조를 설계 중인 클라우드·AI 엔지니어라면 이 글이 다루는 문제가 낯설지 않을 것입니다. 사용자 요청을 여러 개의 하위 작업으로 쪼개고, 각 하위 작업에 맞는 스킬을 찾아 체인으로 엮는 이른바 “compositional skill routing”에서 지금까지의 통념은 “분해(decomposition)만 잘하면 검색은 거의 다 맞는다”였습니다. 이 논문은 그 통념이 한국어·영어가 섞인 실전 환경에서는 틀렸다는 직전 연구의 진단을 이어받아, 그 문제를 사람이 아니라 밤새 도는 무인 루프가 실제로 고칠 수 있는지를 실측으로 검증합니다.
문제의식: 분해는 고쳤는데, 정작 검색기가 병목이었다
SkillWeaver로 대표되는 선행 연구는 compositional skill routing의 병목이 분해에 있다고 주장합니다. 표준 LLM 분해가 하위 작업 수준 카테고리 재현율 34.2%에 그치는 반면, 검색기 자체는 top-1 재현율 약 99.5%로 “거의 해결된” 문제로 취급됩니다. 그런데 이 논문의 직전 연구는 1,600개 이상의 스킬과 한국어·영어가 뒤섞인 실제 요청을 가진 프로덕션 하네스에서 같은 12개 케이스 벤치마크를 돌려 정반대 결론에 도달했습니다. 모든 하위 작업을 사람이 손으로 완벽하게 분해한 오라클(ORACLE) 조건조차 스텝 커버리지가 63.6%에 그쳤습니다. 완벽한 분해로도 필요한 스킬의 3분의 1가량을 놓친다는 뜻이고, 원인은 스킬 메타데이터가 영어로만 작성된 반면 실제 요청은 한국어로 들어온다는 데 있었습니다. 검색기의 교차언어 어휘 다리(vocabulary bridge)가 분해와 함께 병목을 공유하는 공동 제약이라는 것이 직전 연구의 결론입니다. 문제는 그 진단이 나온 뒤 실제로 사전을 고친 손은 사람이었다는 데 있습니다.
핵심 기여: LLM 없이, 사람 없이, 벤치마크 통과 여부만으로 사전을 고치다
이 논문은 그 직전 진단이 지목한 단 하나의 레버, 즉 검색기의 한국어→영어 동의어 사전을 사람 개입 없는 결정론적 루프가 고칠 수 있는지를 묻습니다. 루프는 언어모델을 전혀 호출하지 않는 단일 파이썬 프로세스로, 관찰(Observe)→학습(Learn)→행동(Act)→반복(Repeat)의 네 단계를 돕니다. 12개 케이스로 구성된 compositional 벤치마크에서 각 하위 작업을 개별 검색해 top-8 안에 정답 스킬이 없는 “미스”를 찾아내고(Learn), 미스가 난 하위 작업 문자열에서 가장 긴 한글 연속 구간을 뽑아 정답 스킬 이름(하이픈을 공백으로 바꾼 형태)으로 사전에 매핑을 추가합니다(Act). 보상과 수렴 판정은 오직 벤치마크의 top-8 멤버십 통과 여부라는 외부 신호로만 결정되며, 모델의 자기보고는 전혀 관여하지 않습니다.
결과는 명확했습니다. 스텝 커버리지는 57.1%에서 71.2%로 14.1포인트 올랐고, 체인 전체 완료율은 25.0%에서 50.0%로 두 배가 됐습니다. 루프는 딱 두 번의 반복 만에 수렴했는데, 1회차에서 발견한 11건의 미스 중 9건에 패치를 적용했고, 2회차에서는 남은 6건의 미스 어느 것도 새로 패치하지 못해 “새 패치 0건” 조건으로 자연스럽게 멈췄습니다. 최대 반복 한도인 5회에는 전혀 도달하지 않았습니다.
compositional 벤치마크(n=12, SINGLE 전략, top_k=8) 상에서 루프 적용 전후 스텝 커버리지를 나타낸 실측 결과입니다. 사람 개입 없이 57.1%에서 71.2%로 14.1포인트 상승했습니다.
이 루프에는 안전장치도 함께 설계돼 있습니다. 하나의 한글 토큰이 이미 다른 목표를 가리키는 사전 키로 등록돼 있으면 절대 덮어쓰지 않는 “선점승리(first-write-wins)” 정책입니다. 이번 실행에서는 19건의 원시 충돌 이벤트가 11개의 서로 다른 (토큰, 경합 대상) 쌍으로 정리됐는데, 그중에는 “논문”이라는 한 단어가 같은 케이스 안에서 서로 다른 두 스킬(academic-paper와 academic-paper-reviewer)을 동시에 가리켜야 하는, 평면적인 사전 구조로는 풀 수 없는 케이스 내부 모호성도 있었습니다. 이 보수적인 정책 덕분에 63개 케이스로 구성된 독립 회귀 벤치마크의 다섯 가지 지표(재현율, 게이트된 재현율, top-1 정확도, 환각률, 부정회피율)는 루프 적용 전후로 비트 단위까지 완전히 동일했습니다. 사전에 항목을 더하기만 할 뿐 기존 매핑을 건드리지 않기 때문에, 이미 잘 작동하던 질의를 망가뜨릴 가능성이 구조적으로 차단된 것입니다.
같은 벤치마크에서 체인 전체 완료율(가짜 케이스 없이 모든 정답 스킬이 한 번에 검색되는 비율)이 루프 두 번 반복만으로 25.0%에서 50.0%로 두 배가 된 실측 결과입니다.
논문에서 가장 날카로운 발견은 따로 있습니다. 수렴 후에도 6건의 미스가 남았는데, 이 중 두 건은 정확히 맞는 패치(올바른 한국어 토큰, 올바른 영어 목표, 올바른 정답 스킬)가 적용됐음에도 여전히 top-8 안에 들지 못했습니다. 예를 들어 “아이디어 딥리서치”라는 하위 작업은 유일한 패치 가능 토큰이 정확히 deep-research로 패치됐고 어떤 충돌도 없었지만, 그래도 검색 결과에는 들지 못했습니다. BM25/IDF 기반 랭킹은 특정 토큰 하나의 유무가 아니라 전체 코퍼스의 점수 분포에 의해 결정되기 때문입니다. 즉 어휘 커버리지는 필요조건일 뿐 충분조건이 아니며, 이는 직전 연구가 제기한 “검색기 자체가 공동 병목”이라는 진단을 재확인하는 증거입니다.
반복 회차별 스텝 커버리지 변화를 보여주는 실측 수렴 궤적입니다. 개선은 전부 1회차에서 일어났고, 2회차는 새 패치를 하나도 적용하지 못한 채 정지 조건으로 멈췄습니다.
회사·사회·과학에 대한 기여
회사 관점에서 이 연구는 1,600개가 넘는 스킬 생태계를 유지보수할 때, 검색 벤치마크를 보상 신호로 삼는 야간 무인 루프가 사람의 수작업 튜닝 없이도 라우팅 정확도를 실제로 끌어올릴 수 있음을 재현 가능한 파이프라인으로 확인했다는 데 의미가 있습니다. 사회적으로는, 전담 유지보수 인력이 없어도 대규모 에이전트 스킬 생태계가 시간이 지나며 열화되지 않고 스스로 치유될 수 있다는 실증 패턴을 제시합니다. 이 루프 전체는 모델 호출 없이 두 번의 반복만으로 끝나는 단일 파이썬 프로세스이며, 이는 소규모 팀이나 1인 운영자도 지속 가능한 AI 도구 생태계를 운영할 수 있다는 근거가 됩니다. 과학적으로는, 컴파일러나 테스트 스위트를 보상 신호로 삼아 수렴할 때까지 반복하는 “루프 엔지니어링” 패턴(Act→Observe→Learn→Repeat)을 소스코드 복구가 아니라 검색·라우팅 시스템에 적용한 사례를 제공합니다. 모델의 자기보고가 아니라 벤치마크의 통과/실패라는 완전히 외부적인 신호만을 보상으로 쓴다는 설계는, 검증 가능한 외부 신호가 리워드 해킹을 원천적으로 차단한다는 최근 연구 결과와도 맞닿아 있습니다.
한계
저자들은 이 결과를 스스로 “범위가 좁은 단일 레버 개념검증”이라고 규정합니다. 첫째, 모든 측정이 하나의 조직·하나의 코퍼스에서 나온 것이라 다른 스킬 라이브러리로의 일반화는 검증되지 않았습니다. 둘째, 루프는 한국어→영어 동의어 사전 하나만 편집할 뿐 BM25 스코어링 공식이나 인덱스, 임베딩(애초에 이 검색기는 임베딩을 쓰지 않습니다), 분해 전략, 스킬 본문 내용은 전혀 건드리지 않습니다. 셋째, 벤치마크 규모가 12건으로 작아 체인 완료율이 두 배가 됐다는 결과도 12건 중 6건에 의존하는 만큼 방향성 정도로 읽어야 합니다. 넷째, 패치 로직이 “가장 긴 한글 연속 구간을 정답 스킬명으로 매핑”이라는 고정 규칙이라, “논문”처럼 한 단어가 케이스 안에서 서로 다른 스킬을 가리켜야 하는 모호성은 해결하지 못합니다. 다섯째, 검색기가 이름·설명·프론트매터만 채점하고 스킬 본문은 보지 않는데, 관련 연구에 따르면 스킬 본문이 29~44포인트에 달하는 신호를 담고 있어 이 레버 바깥에 개선 여지가 남아 있습니다. 여섯째, 독립 회귀 벤치마크는 사후 보고용으로만 확인했을 뿐 배포를 막는 게이트로는 아직 쓰이지 않았습니다. 일곱째, “야간 무인” 프레이밍은 목표로 하는 배포 형태를 가리킬 뿐, 이번에 보고된 수치 자체는 실제 라이브 크론이 아니라 통제된 단일 로컬 측정에서 나온 것입니다. 마지막으로 이 연구는 한국어→영어 방향에 국한되며, 더 정교한 실패 분류(의미적 실패 대 언어 선호 실패의 구분)는 다루지 않았습니다.
논문 상세 페이지: https://huggingface.co/datasets/thaki-AI/daily-paper-2026-07-10-autonomous-skill-router-repair-loop