I Tested 6 Local Models on Real Agent Tasks. The Best Scored 50%.
개요
로컬 LLM 모델의 에이전트 작업 수행 능력을 평가한 결과, 코드 생성 능력과 에이전트 기능은 별개이며, 특정 아키텍처를 갖춘 모델이 더 나은 에이전트 성능을 보였다.
주요 내용
* 에이전트 기능은 코드 품질과 다름: 코드 생성 능력(Python 작성, 버그 수정 등)이 높은 모델이라도 함수 호출과 같은 에이전트 관련 작업을 수행하지 못할 수 있으며, 이러한 가정은 테스트 결과 곧바로 무너졌다.
* 에이전트 준비도 벤치마크 개발: 단일 도구 호출, 적절한 도구 선택, tool_choice: required 준수, 도구가 없을 때 침묵, 턴 간 호출 체인, 올바른 인수 전달 등 6가지 통과/실패 차원을 포함하는 벤치마크가 구축되었다.
* 번역 프록시 구축: 로컬 모델이 텍스트 형식으로 출력하는 도구 호출을 Agent framework가 요구하는 OpenAI의 네이티브 tool_calls 형식으로 변환하는 100라인의 번역 프록시가 개발되었다.
* 모델별 성능:
* SmolLM3-3B: 코드 품질 93.3%, 에이전트 작업 50%. 단일 도구 호출 및 파일 쓰기는 가능했으나, 3개 도구 중 선택하거나 2개의 호출을 체인하는 데 실패했다.
* Phi-4-mini: 코드 품질 90%, 에이전트 작업 17%. "거짓 양성 없음" 차원만 통과했다.
* Qwen2.5-Coder-14B (7.7GB): 코드 품질 85%, 에이전트 기능 없음.
* Llama 3.1-8B: 코드 품질 우수에도 불구하고 에이전트 기능 없음.
* 성능 차이의 원인: 코드 벤치마크는 정확한 출력을 테스트하는 반면, 에이전트 작업은 프로토콜을 따르고 도구를 추론하며 실행하는 능력을 테스트한다. 30억 개 미만 파라미터의 오픈 웨이트 모델은 특정 에이전트 능력이 부족할 수 있으며, 아키텍처가 파라미터 수보다 에이전트 준비도에 더 중요하다.
* 확인 사항: 코드 품질 테스트와 도구 호출 테스트를 분리하고, 로컬 모델의 도구 호출 형식 문제를 해결하기 위해 번역 프록시 사용을 고려해야 한다. 파라미터 수보다는 아키텍처가 에이전트 작업에 더 중요하며, 구축 전에 벤치마크 테스트가 선행되어야 한다.
시사점
코드 생성 능력이 뛰어나더라도 에이전트 작업 수행 능력을 보장하지 않으므로, LLM 모델의 실제 에이전트 기능 활용을 위해서는 별도의 벤치마크 및 테스트가 필수적이며, 모델 아키텍처가 성능에 더 큰 영향을 미칠 수 있다.
댓글
GitHub Discussions