Tool Correctness
Tool Correctness
에이전트의 도구 호출 능력을 평가하고 싶을 때 쓰는 단일 턴(single-turn) 지표예요. 다른 지표들과 달리 LLM을 사용하지 않고, LLM 에이전트가 도구(tool)를 올바르게 호출했는지를 결정론적으로 판단해요.
출처: 문서
본문
개요
tool correctness 지표는 단일 턴 지표로, LLM 에이전트가 도구를 올바르게 호출하는 능력을 평가해요. 다른 지표와 달리 평가에 LLM을 사용하지 않아요.
tool correctness 지표는 테스트 케이스에 호출된 도구(tools called)와 기대되는 도구(expected tools)를 모두 제공해야 해요.
필수 파라미터(Required Parameters)
tool correctness 지표로 평가를 실행하려면 테스트 케이스에 반드시 넣어야 하는 파라미터예요:
input (string, required)
LLM 에이전트에 전달한 입력이에요.
actual_output (string, required)
LLM 에이전트가 주어진 입력에 대해 만들어낸 최종 출력이에요.
tools_called (list, required)
LLM 에이전트가 호출한 도구들을 ToolCall 인스턴스에서 호출된 순서대로 나열한 목록이에요.
expected_tools (string, required)
LLM 에이전트가 호출해야 할 것으로 기대되는 도구들을 ToolCall 인스턴스에서 호출되어야 할 순서대로 나열한 목록이에요.
지표 파라미터(Metric Parameters)
metric collection에 tool correctness 지표를 추가할 때 설정할 수 있는 파라미터들이에요:
should_exact_match (boolean)
호출된 도구들이 기대되는 도구들과 정확히 일치할 것(같은 도구, 같은 개수, 같은 순서)을 요구해요.
should_consider_ordering (boolean)
기대되는 도구들이 같은 순서로 호출될 것을 요구해요. 정확 매칭(exact match)이 활성화되면 무시돼요.
계산 방식(How Is It Calculated?)
tool correctness 지표는 결정론적(deterministic) 방식으로 점수를 계산하는데, 호출된 도구와 기대되는 도구를 하나씩 돌아가며 에이전트가 적절한 도구를 호출했는지 확인해요.
$$ \text{Tool Correctness} = \frac{\text{Number of Correctly Used Tools(or Correct Input Parameters / Outputs)}}{\text{Total Number of Tools Called}} $$
최종 점수는 호출된 도구 중 올바르게 사용된 도구의 비율이에요.
사용법(Usage)
Confident AI에서 tool correctness 지표를 실행하려면 단일 턴 metric collection에 추가하면 돼요. 그러면 tool correctness 지표를 다음에 활용할 수 있어요:
- 단일 턴 E2E 테스트(Single-turn E2E testing)
- 단일 턴 컴포넌트 레벨 테스트(Single-turn component-level testing)
- 트레이스와 스팬의 온라인·오프라인 평가(Online and offline evals for traces and spans)
더 알아보기
- Metric Collections — 지표들을 묶어서 관리하고 실행하는 방법