툴 호출 인자 검증기는 참조 없는 정답을 더 자주 거부한다
Judges Follow the Reference: The Derivation Gap in Verifying Tool-Call Arguments
무엇인가
LLM 에이전트는 툴 호출로 행동하고, 그 인자 값이 틀리는 것은 가장 흔한 오류 중 하나다. 그래서 에이전트 파이프라인은 리워드 모델이나 실행 전 가드 형태로 판정기(judge)를 붙여 인자 값을 검사한다. 이 논문은 그 판정기가 정답 값을 언제 덜 받아들이는지를 파고든다. 판정기는 컨텍스트와 후보 값(candidate)을 받아 옳고 그름을 판정하는데, 정답 값이 호출에 도달하는 경로는 하나가 아니다. 보이는 텍스트에서 복사될 수도 있고, 이전 툴 반환값에서 왔을 수도 있고, 사용자가 언급하지 않은 함수 스키마의 기본값일 수도 있고, 포맷만 바뀌었거나 추론된 값일 수도 있다. 저자들은 이 경로를 다섯 가지 유도 경로(Visible, History-only, Format, Default, No-source)로 정의하고, 입력에 그 값을 뒷받침하는 참조 텍스트가 없을 때 정답 수용률이 떨어지는 현상을 '유도 격차(derivation gap)'라고 부른다.
어떻게 동작하나
측정 방식은 이렇다. 판정기마다 점수 스케일이 크게 달라서 고정 임계값은 불공정하므로, 각 판정기·데이터셋·입력 조합마다 정답 인자의 80%를 수용하는 임계값 τ를 잡고, Visible 경로의 수용률에서 각 경로의 수용률을 뺀 값을 격차로 정의한다. 실험에 쓴 판정기는 7개다. 확률을 반환하는 System One 계열 CLM과 Jev, 그리고 Qwen3-4B, Qwen3-8B, Qwen3.8-27B, Llama-3.1-8B-Instruct, Mistral-7B-Instruct-v0.3이다. 벤치마크는 세 개로, 단일 턴 630개 요청에 정답 호출과 실제 모델의 오답 호출을 짝지은 FCRB, 긴 툴 반환을 가진 다단계 태스크 CFB(정답 347·오답 644 호출), 금융 질의 골든 호출 2,334개와 규칙으로 한 인자씩 바꿔 만든 오답 2,334개로 구성된 FinTrace다. 판정기 입력은 의도적으로 잘린 상태(마지막 몇 스텝 유지, 각 반환은 1,000자로 절단)를 쓴다. 결과는 CFB와 FinTrace에서 모든 판정기의 out-of-view 격차가 유의했고 22.67~36.13포인트였으며, 절단이 없는 FCRB에서는 정답 기본값의 격차가 14.40~50.51포인트로 가장 컸다. 가장 큰 판정기인 Qwen3.8-27B도 세 벤치마크 모두에서 12.29~29.76포인트의 유의한 격차를 보여, 모델 크기를 키운다고 해소되지 않는다. 경로별 정답 비율(기저율)도 원인이 아니다. FCRB는 기본값의 77%가 정답이고 Visible은 75%, CFB는 history-only의 83%가 정답이고 Visible은 82%다. FinTrace만 no-source 정답률이 45%로 Visible 97.5%보다 낮아 격차의 일부가 기저율로 설명될 여지가 있다.
무엇과 다른가
원인 규명을 위한 통제 실험이 세 개다. 첫째, FCRB 257개 상태로 만든 FCRB-Relocate에서 한 인자 값을 사용자 요청에서 떼어 새로 추가한 이전 호출의 반환값으로 옮겼다. 반환값에는 정답 항목과 다른 샘플에서 가져온 7개 방해 항목이 있고, 정답 항목이 판정기가 보는 1,000자 안에 오는 버전과 그 밖으로 밀리는 버전 두 가지를 만들었다. 출처를 묻으면 인자 AUROC가 91.89~99.88에서 39.80~49.03으로 떨어졌고, 보이는 방해 항목 하나와만 비교하면 26.71~39.88로, 네 판정기 모두 눈에 보이는 오답을 잘린 정답보다 위에 랭크했다. 둘째, 전체 히스토리를 주면 CFB의 history-only 격차는 37.50~62.84포인트 줄고 Qwen3.8-27B는 남은 격차가 유의하지 않게 되지만, no-source 값에서는 AUROC가 오르지 않고 Jev는 2.83포인트, Qwen3-8B는 13.83포인트 오히려 떨어졌다. 셋째, FCRB에서는 기본값이 판정기가 읽는 파라미터 설명에 적혀 있고 잘린 것도 없는데도 격차가 남는다. 정답 기본값 185개 중 DeRef 참조가 '기본값이 적용된다'고 말한 142개에서, 스키마 기본값을 다시 적고 요청에 나타난 관련 단어를 나열하는 줄을 추가해도 수용률 변화는 최대 6.18포인트였지만, 그 유도를 풀어 쓴 참조 자체는 수용률을 73.02~88.06으로 끌어올렸다. 반대로 CFB의 오답 history-only 인자 59개에 그 값이 등장하는 히스토리 스니펫을 붙이면 네 판정기 모두 평균 점수가 14.28~39.39포인트 올라, 0.5 임계값에서 CLM·Jev·Qwen3-8B는 59개 중 28~49개를 수용하게 된다. 판정기는 값의 옳고 그름이 아니라 입력에 있는 참조와의 일치 여부를 따라간다는 뜻이다.
어떻게 쓰나
제안 방법 DeRef(Derived Reference)는 이 지점을 노린다. 별도의 deriver 모델이 후보 값을 보지 않은 채 잘리지 않은 전체 히스토리와 스키마를 읽고, 판정 대상 스텝의 함수와 스키마만 참고해 각 인자의 기대값과 그 출처를 적는다. 히스토리가 값을 확정하지 못하면 그렇다고 쓴다. 후보를 보지 않기 때문에 참조가 시험 대상 값을 그대로 되풀이할 수 없고, 한 상태의 모든 후보가 같은 참조를 공유한다. 모든 판정기에 deriver로 Qwen3.8-27B를 thinking 켠 상태로 고정 사용하고, 참조는 히스토리 뒤·함수 설명 앞에 삽입한다. 판정기 자체는 재학습이나 수정 없이 그대로이며, 평소의 잘린 입력에 참조만 추가로 읽는다.
전제와 한계
주요 실험은 4개 판정기(CLM, Jev, Qwen3-8B, Qwen3.8-27B)와 3개 벤치마크, 즉 12개 조합에서 이뤄졌다. DeRef는 12개 조합 전부에서 Plain 대비 인자 AUROC를 1.44~22.14포인트 올렸고 모든 향상이 유의했다. Llama와 Mistral 판정기도 8.78~20.84포인트 올랐다. 기존 방법과 비교하면 RevisEval이 12개 조합 모두에서 가장 강한 베이스라인이었는데, DeRef는 10개 조합에서 그보다 높고 8개에서 유의하게 높았다. 예외는 Qwen3.8-27B의 FCRB와 FinTrace로 RevisEval이 각각 0.32, 0.27포인트 높았지만 유의하지 않다. ProvenanceGuard evidence보다는 12개 조합 전부에서 유의하게 높고, 판정기 스스로 참조를 쓰게 하는 self-generated reference는 Plain 대비 최대 3.01포인트 오르는 데 그쳤다. 전체 히스토리를 주는 것도 DeRef보다 유의하게 낮았고(3개 판정기 평균 CFB 11.58포인트, FinTrace 4.35포인트), 판정기의 추론을 늘리는 것도 대체가 되지 못했다. Qwen3.8-27B가 thinking 켜고 직접 판정하는 것이 같은 모델이 참조를 읽고 thinking 끄고 판정하는 것보다 세 벤치마크 모두에서 2.82~10.92포인트 낮았다. 통제 세트에서도, 네 판정기가 우연 수준 이하로 떨어졌던 FCRB-Relocate 은닉 버전에서 DeRef는 98.40~99.59로 되돌렸다.
절제 실험은 이득의 출처를 분해한다. CFB·Qwen3.8-27B에서 가장 큰 하락은 참조를 전체 히스토리가 아니라 판정기의 잘린 입력에서 쓰게 했을 때 나왔다. 참조와 판정기 thinking을 교차한 실험에서는 참조 + thinking off가 96.01로 최선이었다. 후보를 보는 deriver(DeRef-v)는 CFB에서는 DeRef보다 높지만 FCRB와 FinTrace에서는 낮았고, 시험 대상 오답 값을 기대값으로 적는 빈도가 최대 6배였다. 참조가 판정을 실제로 좌우하는지도 확인했다. 벤치마크별 최대 500개 인자(CFB 332, FCRB 417, FinTrace 500)에서 참조가 정답 값을 지목한 경우, 그 값만 같은 상태의 오답 값으로 바꾸고 나머지 텍스트는 유지했다. CFB와 FCRB에서 네 판정기 모두 바뀐 참조를 따랐다. 0.5 임계값에서 정답 수용률은 15.36~57.07포인트 하락하고 오답 수용률은 20.38~57.79포인트 상승했으며, 인자 AUROC는 92.16~99.91에서 42.63~77.92로 떨어졌다. 24개 변화 모두 유의했다. 참조만 바꿨으므로 판정 변화의 원인은 참조다.
실무적으로 이 논문이 주는 신호는 두 가지다. 첫째, 툴 호출 가드나 리워드 모델을 붙일 때 '정답인데 거부되는' 케이스가 잘린 툴 반환, 스키마 기본값, 포맷 변환, 추론값에서 체계적으로 몰려 있을 수 있다. 판정기 임계값을 정답 80% 수용 기준으로 잡았다면 이 경로들이 그대로 오탐(false reject)으로 남는다. 둘째, 판정기를 재학습시키지 않고도 전체 히스토리를 읽는 별도 모델이 쓴 참조문을 입력에 끼워 넣는 것만으로 AUROC가 오른다. 다만 참조가 틀리면 판정도 틀리는 쪽으로 뒤집히므로, 참조문과 점수를 함께 로그로 남겨 리뷰어가 왜 수용됐는지 볼 수 있게 해야 한다.
저자들이 밝힌 한계는 다음과 같다. 각 인자에 골든 값이 하나뿐이라, 참조가 그 값을 지목하면 역시 정답인 다른 값이 거부될 수 있다. CFB와 FinTrace의 오답 라벨은 저자들이 직접 만든 것이라 데이터셋당 100개씩 두 명이 감사했을 때 3%와 4%는 확인되지 않았고, FCRB 라벨은 공식 BFCL 체커를 따르며 독립 감사는 없다. FinTrace에서는 4개 판정기 중 3개에서 no-source 값의 격차가 줄지 않았는데, 이 경로의 낮은 기저율이 일부 원인일 수 있다. 주요 실험은 deriver 모델을 Qwen3.8-27B 하나로 고정했으며(절제 실험에서 더 약한 Qwen3-8B도 CFB에서 개선을 보이긴 했다), 다른 모델 계열 deriver에 대한 평가는 향후 과제다. 판정기도 최대 27B 오픈 LLM까지이며 범용 프런티어 LLM을 판정기로 쓴 평가는 남아 있다. 윤리 항목에서 저자들은 DeRef를 리뷰 보조로 규정하고, 예약이나 거래처럼 위험도가 높은 호출은 사람이나 판정기에 의존하지 않는 검사로 넘길 것을 권한다.