Allganize의 새로운 LLM 평가 플랫폼으로 DeepSeek-V3를 평가해 봤습니다.

Allganize의 새로운 LLM 평가 플랫폼으로 DeepSeek-V3를 평가해 봤습니다.

DeepSeek-V3에 대한 Agent 벤치마크 평가 결과

최근 6700억 개의 파라미터를 가진 DeepSeek-V3가 오픈소스로 공개되었습니다. DeepSeek-V3는 ChatGPT나 Gemini처럼 텍스트를 이해하고 생성하는 데 뛰어난 능력을 가진 LLM이지만, 기존 모델과는 몇 가지 중요한 차이점을 가지고 있습니다. 이 모델의 핵심 목표는 높은 성능을 유지하면서도 학습 비용을 크게 절감하는 것입니다.

DeepSeek-V3는 주요 기술적 혁신을 통해 이 목표를 달성했습니다. 먼저, MLA(Multi-head Latent Attention)라는 새로운 어텐션 방식을 도입하여 학습과 추론 과정에서 더 적은 자원으로 효율적으로 텍스트를 처리할 수 있게 했습니다. 기존 어텐션 방식은 계산량이 많아 효율성 문제가 있었지만, MLA를 통해 이러한 단점을 극복했습니다. 또한, MoE(Mixture-of-Experts) 구조를 활용해 모델 성능을 크게 향상시켰습니다. MoE는 여러 전문가 모델을 두고 입력에 가장 적합한 전문가를 선택하는 구조로, 모델 크기를 크게 늘리지 않고도 성능을 향상시킬 수 있는 장점이 있습니다. 다만, 전문가 간의 부하 불균형 문제가 있었는데, 이를 해결하기 위해 Auxiliary-Loss-Free Load Balancing 방법을 적용해 균등한 부하 분배를 구현했습니다. 이 외에도 MTP(Multi-Token Prediction) 학습과 FP8(8비트 부동소수점) 연산 방식을 활용해 모델을 개발하였습니다.

DeepSeek-V3는 다양한 벤치마크에서 뛰어난 성능을 보여주며, 현재 공개된 오픈소스 모델 중 가장 강력하다고 평가받고 있습니다. 구글이 개발한 GPQA-Diamond 벤치마크에서 88.5%의 정확도를 기록하며, DeepSeek-V2(78.2%), Qwen2.5-72B(85.3%), Llama-3.1-405B(88.6%)와 비슷하거나 더 나은 성능을 보였습니다. 수학 문제 해결 능력을 평가하는 MATH 500에서는 90.2%, 코드 생성 및 이해를 평가하는 Codeforces에서는 51.6%의 성능을 달성했습니다. 긴 맥락 처리 능력을 평가하는 NIAH(Needle In A Haystack)에서는 128k 토큰 길이까지 안정적인 성능을 유지했습니다.

추가로, DeepSeek-V3의 Agent로서의 성능은 공개된 자료가 없었기에, 저희는 자체적으로 개발한 LLM 평가 플랫폼을 통해 이를 평가했습니다. 결과적으로, DeepSeek-V3는 GPT4o-mini와 유사하거나 약간 낮은 성능을 보였습니다. 이렇게 빠르게 Agent 성능을 평가할 수 있었던 이유는, 저희가 이미 LLM의 Agent 역할 수행 능력을 평가할 수 있는 플랫폼을 운영해왔기 때문입니다.

- Allganize LLM 평가 플랫폼의 Agent 벤치마크 평가 결과 -

LLM 기반 Agent가 가져온 새로운 가능성

Agent는 오랫동안 인공지능 분야에서 핵심적인 목표 중 하나인 AGI(Artificial General Intelligence), 즉 인공지능의 일반적인 지능을 실현하기 위한 중요한 접근법으로 여겨져 왔습니다. Agent는 인간과 유사한 지능을 가진 채 다양한 과제를 해결하기 위해 스스로 계획을 하고, 자율적으로 결정을 내리면서 문제를 해결하는 능력을 갖추어야 합니다.

LLM이 등장하기 전에는 대부분의 AI 모델들이 비교적 단순한 문제 상황에 대해 제한된 환경에서 학습되었습니다. 초기 AI 모델들은 특정 도메인이나 제한된 상황에서만 효율적으로 동작할 수 있었고, 이를 넘어서는 복잡한 문제 해결 능력을 갖추는 데에는 한계가 있었습니다. 이러한 제한은 Agent가 다양한 도메인 환경에서 인간처럼 의사결정을 내리고 문제를 해결하는 데 큰 한계로 작용했습니다.

하지만 최근 LLM의 발전은 이러한 한계를 뛰어넘을 가능성을 보여주었습니다. LLM은 다양한 환경에서 문제를 해결하는 데 필요한 지식과 능력을 바탕으로 인간과 유사한 지능을 보여주었고, 단순한 질문에 답하는 수준을 넘어 복잡한 작업을 자율적으로 수행할 수 있는 능력을 지닌 Agent로 발전할 수 있는 기반을 마련할 수 있었습니다. 이로 인해 최근 인간처럼 의사결정을 내리는 Agent를 구축하려는 연구가 더욱 활발히 진행되고 있으며, 여러 분야에서 LLM 기반 Agent는 자동화된 시스템으로 효율적인 문제 해결을 위한 역할을 수행할 수 있을 것 입니다.

LLM이 Agent 역할을 수행하는 방법

LLM은 본질적으로 사용자가 입력한 프롬프트에 대해 적절한 답변을 생성하는 함수로 생각할 수 있습니다. 하지만 LLM이 복잡한 문제를 해결하려면 단순히 답변을 생성하는 수준을 넘어서, 실제로 문제를 해결하는 능력을 갖추어야 합니다. 이를 위해서는 LLM이 단독으로 행동을 수행할 수 있도록 만들어야 합니다. 해결해야 할 문제에 맞춰 여러 tool을 미리 정의하고, 각 tool에 대한 정보를 LLM에게 제공한 뒤, LLM이 해당 tool을 적절히 선택하고 활용할 수 있게 하는 방식으로 Agent 역할을 수행하게 됩니다. 이를 tool calling이라고 부르며, LLM이 특정 작업을 수행할 때 외부 tool을 호출하여 보다 복잡한 문제를 해결하는 능력을 의미합니다.

또한, Agent로서 LLM은 사용자와의 지속적인 상호작용을 통해 대화의 흐름을 기억하고 이해하는 능력을 가져야 합니다. 사용자가 요구하는 사항을 정확히 파악하고, 그에 맞는 행동을 취하는 것은 단순한 질의 응답을 넘어서는 중요한 기능입니다. 따라서 LLM이 Agent 역할을 잘 수행하기 위해서는 다양한 도메인에 대한 지식뿐만 아니라, 주어진 문제를 해결하기 위한 tool calling 능력, 대화의 맥락을 이해하는 능력, 그리고 얻어진 정보를 적절히 활용하는 능력까지 갖추어야 합니다. 이러한 능력들이 결합되어야만 LLM이 능동적이고 자율적인 Agent로서 역할을 제대로 수행할 수 있습니다.

Agent 능력을 향상시키기 위한 학습 방법

올거나이즈는 Qwen2.5 3B Instruct 모델을 기반으로 한국어 특화 LLM을 위한 학습 방법을 연구 및 개발하였고, 이를 통해 한국어 벤치마크에서 우수한 성능을 달성했습니다.

- KoMTBench 벤치마크 평가 결과 -

Qwen2.5 3B Instruct 모델에 비해 학습을 반복 수행한 stage 모델들에서 지속적인 성능 향상을 확인할 수 있습니다.

이 과정에서 중요한 질문이 생겼습니다. 뛰어난 성능을 가진 LLM이 과연 Agent로서도 제대로 기능할 수 있을까? 결론부터 말하자면, 모든 LLM이 Agent 역할을 효과적으로 수행할 수 있는 것은 아닙니다. 단순히 요청에 대한 이해와 답변 능력만으로는 부족하고, tool calling 능력, 대화 맥락의 이해, 그리고 복잡한 문제를 해결하는 자율적 사고가 필요하기 때문입니다. 따라서 기본적인 언어 모델링 능력만으로는 부족하며, 이를 보완하기 위한 추가적인 훈련과 조정이 필요합니다.

- FunctionChat 벤치마크 평가 결과 -

우리가 선택한 Qwen 모델은 원래부터 tool calling 능력을 어느 정도 갖추고 있었습니다. 하지만 Stage 모델들의 세부 성능 지표를 확인해보면 답변을 생성하는 completion, 부족한 정보를 역으로 물어보는 slot, 수행할수 없는 일에 대한 거절을 하는 relevance 점수는 보존되거나 올랐습니다. 이들 세부항목의 특징은 자연어 출력을 한다는 점입니다.  하지만 특정 포멧에 맞는 응답을 해야하는 call항목은 점수가 하락한 모습을 보였습니다.

결론적으로, LLM이 Agent 역할을 제대로 수행하기 위해서는, 단순한 언어 모델링을 넘어서 문맥을 정확하게 파악하고, 적절한 tool을 효과적으로 활용하며, 자율적으로 판단을 내리는 능력을 훈련시키는 과정이 필수적입니다. 이는 복잡한 문제 해결을 가능하게 하며, 이를 위해서는 특화된 학습 데이터와 지속적인 튜닝이 필수적입니다. Allganize는 Agent 역할을 더 잘할 수 있는 모델을 개발하기 위해 최선을 다하고 있습니다.

Agent 역할을 잘 수행하는 LLM 평가를 위한 노력

올거나이즈는 Agent 역할을 잘 수행하는 LLM을 개발하기 위해, 기존 LLM이 Agent로서 얼마나 효과적으로 작동할 수 있는지 깊이 고민하고 있습니다. 이를 위해 다양한 벤치마크를 활용하여 LLM의 능력을 평가하고, 어떤 모델과 학습 방법이 Agent 능력을 향상시키기에 적합한지 분석할 수 있는 평가 플랫폼을 개발했습니다.

LLM이 Agent로서 성공적으로 동작하기 위해서는 단순히 주어진 요청에 응답하는 것을 넘어, 적절한 tool을 선택하고 실행하며 복잡한 대화 맥락 속에서 유의미한 판단을 내릴 수 있어야 합니다. 또한, 영어와 한국어 등의 다양한 언어 뿐만 아니라 여러 도메인의 다양한 tool이 주어진 환경에서도 효과적으로 작동해야 하며, 단순한 tool calling을 넘어 여러 번의 상호작용을 통해 문제를 해결할 수 있는 능력도 필요합니다. 이러한 기준을 바탕으로 우리는 총 3가지 공개 벤치마크를 활용하여 Agent로서의 LLM 성능을 종합적으로 평가했습니다.

우선, BFCL V3 벤치마크를 통해 다양한 상황에서 LLM의 tool calling 능력을 평가했습니다. BFCL 벤치마크는 Multi Trun으로 주어진 대화에서 tool calling 능력을 테스트하며, 주요 평가 항목으로 기본적인 tool calling 능력을 검증하는 Base Multi-Turn, tool 실행을 위한 필요한 정보가 누락된 경우 적절한 질문을 생성하는 Missing Parameters, 필요한 tool이 제공되지 않았을 때 적절한 응답을 생성하는 Missing Functions, 그리고 긴 대화 맥락 속에서 핵심 정보를 추출해 tool을 호출하는 Long-Context Multi-Turn이 포함됩니다. 이를 통해 모델이 복잡한 맥락에서도 정확히 tool을 선택하고 활용할 수 있는지를 파악할 수 있었습니다.

한국어 환경에서의 tool calling 능력을 평가하기 위해 카카오의 FunctionChat-Bench를 활용했습니다. FunctionChat-Bench는 단일 tool calling을 평가하는 SingleCall과 다양한 대화 시나리오에서의 tool calling 능력을 평가하는 Dialog로 구성됩니다. SingleCall은 주어진 tool 목록에서 정답 tool을 얼마나 정확히 호출하는지 평가하며, tool의 수나 유사성을 고려한 다양한 조건에서 모델의 성능을 테스트합니다. Dialog는 대화 흐름에 따라 정확한 tool과 arguments 생성, 누락된 정보 요청, 적절한 대안 제시 등 Agent로서의 역할을 다각도로 평가합니다. 이를 통해 우리는 한국어 기반 Agent 역할 수행 능력에 대한 명확한 지표를 확보할 수 있었습니다.

마지막으로, 실제 상황을 반영한 τ-bench를 통해 Agent로서의 신뢰성과 실용성을 평가했습니다. τ-bench는 retail과 airline이라는 현실적인 도메인에서 LLM이 사용자 요청을 처리하며 의사결정을 내리는 과정을 테스트합니다. 주어진 시나리오 내에서 데이터 생성과 인간 역할 수행을 LLM이 자체적으로 수행하면서 다양한 변수와 변화가 발생하고, 이를 처리할 수 있는 능력을 평가함으로써, 단순히 정해진 절차를 따르는 것을 넘어 복잡한 대화와 상황 속에서도 유연하게 대처할 수 있는지 확인할 수 있었습니다.

결과적으로, 이 플랫폼은 여러 모델과 학습 방법을 실험적으로 비교할 수 있는 환경을 제공하여, 각 모델이 Agent로서 어떤 상황에서 잘 작동하고, 어떤 상황에서 약점을 드러내는지를 분석할 수 있도록 해주었습니다. 추가로 저희는 우리 Alli App의 Agent 서비스에서 실제로 좋은 성능을 보이는지를 직접적으로 평가할 수 있는 자체 벤치마크도 개발하여 평가하고 있습니다. 이 벤치마크를 통해 우리의 서비스 환경에 최적화된 테스트를 통하여 LLM의 성능을 보다 정밀하게 측정할 수 있도록 설계하였습니다. 우리는 총 4가지 벤치마크를 활용하여 Agent 능력을 종합적으로 평가하고 있고, Agent 특화 LLM을 지속적으로 연구하고 개발하며, 앞으로도 더 고도화된 Agent 시스템에서 우리의 LLM이 안정적이고 효과적으로 작동할 수 있는지 빠르게 분석할 수 있을 것 입니다.

- LLM 평가 플랫폼의 Allganize 한국어 Agent 벤치마크 -

Allganize의 LLM 평가 플랫폼

올거나이즈는 LLM 평가 플랫폼의 Agent 평가 벤치마크들을 통해 LLM이 얼마나 효과적으로 Agent 역할을 수행할 수 있는지 분석할 수 있으며, 이를 통해 우리의 Agent 서비스에 적합한 모델을 구별할 수 있습니다. 뿐만 아니라 LLM 평가 플랫폼에서는 일반적인 언어 이해, 지식 수준, Instruction Following 능력까지 포괄적으로 평가할 수 있습니다. 이 플랫폼은 총 10개 이상의 벤치마크를 활용해 모델의 다각적인 성능을 평가하며, 그 과정에서 효율성과 편의성을 모두 높이는 데 초점을 맞춰 개발하였습니다.

과거에는 새로운 모델이 개발될 때마다 각 벤치마크 별로 제공되는 개별 코드를 실행해 성능을 평가해야 했습니다. 이러한 방식은 각 모델마다 동일한 작업을 반복해야 했기 때문에 시간과 노력이 많이 드는 비효율적인 과정이었습니다. 이 문제를 해결하기 위해 평가 프로세스를 자동화하고, 개발자가 더 쉽게 접근할 수 있도록 플랫폼을 개발했습니다. 현재는 대시보드 인터페이스를 통해 단순히 새로 개발된 모델의 이름만 입력하면, 플랫폼이 모델의 API를 자동으로 구현하고, 벤치마크 평가를 실행하며, 결과를 분석해 사용자에게 제공합니다. 덕분에 평가 작업이 훨씬 간편해졌을 뿐 아니라 개발자들이 본연의 연구와 개발에 집중할 수 있는 환경을 조성했습니다.

또한 기존의 LLM 벤치마크 평가 과정에서의 문제 중 하나는 평가 시간이 오래 걸린다는 점이었습니다. 대규모 데이터셋과 복잡한 벤치마크에서도 효율적인 평가를 위해 개선을 진행하였고, ArenaHard 벤치마크는 기존에는 한 모델을 평가하는 데 약 1시간 30분이 소요됐었지만 LLM 평가 플랫폼에서는 약 20분으로 평가 시간을 단축할 수 있었습니다.

- LLM 평가 플랫폼의 자동 평가 페이지 -

올거나이즈는 지난 2024년 4월 9일 금융전문 LLM 리더보드를 공개한바 있습니다. 이제 그 자리를 LLM의 Agent 역량을 평가하는 새로운 LLM 평가 플랫폼으로 대체하였습니다. 

오늘 뉴스레터에서 소개한 새로운 LLM 평가 플랫폼을 지속적으로 업데이트하고 발전시켜 나갈 계획입니다. 언제나 그렇듯 올거나이즈는 LLM에 진심이기 때문입니다.