GPT를 프로덕트에 썼는데 왜 결과가 ‘들쑥날쑥’할까요?
새로운 인공지능(AI) 기능 출시를 앞두고 밤낮없이 테스트를 진행했습니다. 그런데 막상 프로덕션 환경에 배포하고 나니, 예상치 못한 엉뚱한 결과가 튀어나오기 시작합니다. 이런 경험, AI 프로덕트를 개발하는 백엔드 서비스 기획자나 개발자라면 한 번쯤 겪어봤을 만한 흔한 시나리오입니다.
왜 이런 일이 발생할까요? 기존 소프트웨어와 달리 대규모 언어 모델(LLM) 기반의 AI 애플리케이션은 결과가 비결정적입니다. 같은 질문을 던져도 매번 다른 답이 나올 수 있다는 뜻입니다. 단순히 코드를 수정하고 단위 테스트만으로는 품질을 담보하기 어렵습니다. 따라서 우리는 LLM의 예측 불가능한 특성을 제어할 수 있는 새로운 무기가 필요합니다. 그것이 바로 이밸(Evals, 평가)입니다.
이밸은 AI 시스템이 얼마나 잘 작동하는지 체계적으로 점검하는 구조화된 테스트를 의미합니다. 품질, 신뢰성, 정확성 등 중요한 지표를 측정하도록 돕습니다. 많은 개발자가 이밸을 단순히 코드의 결함을 잡아내는 단위 테스트처럼 생각합니다.
하지만 이밸은 그 이상의 가치를 지닙니다. 이밸은 문제가 생겼을 때 방어하는 수단을 넘어, 프로덕트 품질을 적극적으로 개선하는 ‘공격 무기’ 역할을 합니다. 이를 통해 우리는 프롬프트나 기반 모델을 변경했을 때, 성능이 나아지는지 혹은 나빠지는지를 정량적으로 판단할 수 있습니다.
이밸을 구성하는 세 가지 핵심 요소
이밸은 성공적인 AI 애플리케이션 개발에 필수적인 세 가지 핵심 재료로 구성됩니다. 이 재료들은 복잡한 AI 워크플로우를 체계적으로 평가할 수 있는 틀을 제공합니다. 개발자나 기획자는 이 세 요소를 정의하는 것에서부터 평가를 시작할 수 있습니다.
첫째, 태스크(Task)는 평가하고자 하는 코드나 프롬프트를 의미합니다. 이는 사용자 질문에 답하는 단순한 프롬프트일 수도 있고, 여러 도구를 호출하는 복잡한 에이전트 워크플로우일 수도 있습니다. 중요한 것은 태스크가 명확한 입력(Input)과 출력(Output)을 요구한다는 점입니다.
둘째, 데이터셋(Data Set)은 태스크를 실행할 때 사용하는 실제 세계의 테스트 사례 모음입니다. 이 데이터셋은 우리의 AI 애플리케이션이 실제 환경에서 어떻게 작동할지 예측하는 기반이 됩니다. 나중에 프로덕션에서 발생한 실제 사용자 로그를 이 데이터셋에 추가하여 품질을 향상시킬 수 있습니다.
셋째, 스코어(Score)는 이밸의 핵심 로직입니다. 출력물이 얼마나 좋은지 객관적으로 측정하는 기준이 됩니다. 스코어는 LLM을 심판(Judge)으로 활용하여 출력의 우수성을 평가하게 하거나, 코드 기반의 휴리스틱(규칙 기반) 방식으로 정확도나 일치도를 측정할 수 있습니다.
배포 전 ‘오프라인’과 배포 후 ‘온라인’ 평가
이밸은 개발 단계와 운영 단계에 따라 오프라인 이밸과 온라인 이밸의 두 가지 방식으로 나뉩니다. 두 가지 방식 모두 성능을 개선하는 데 필수적인 역할을 합니다.
오프라인 이밸은 프로덕션 배포 전에 문제를 파악하고 해결하는 반복 작업 단계입니다. 개발자는 이 단계에서 태스크와 스코어를 정의하고 테스트를 실행합니다. 너무 완벽한 데이터셋을 만들려고 하기보다는, 일단 작은 규모라도 기준점(Baseline)을 설정하고 반복적으로 개선해 나가는 것이 중요합니다.
반면, 온라인 이밸은 애플리케이션이 실제 운영 환경에서 작동하는 동안 실시간으로 추적하는 것을 말합니다. 모델의 입력, 출력, 중간 단계, 도구 호출 등 모든 로그를 기록하여 라이브 트래픽에 대한 품질을 측정합니다. 이를 통해 지연 시간(Latency)이나 비용 같은 성능 지표까지 진단할 수 있습니다.
사용자 피드백을 데이터셋으로 돌려주는 선순환 구조
온라인 이밸은 단순 모니터링을 넘어, 피드백 선순환 구조(Flywheel Effect)를 완성하는 핵심입니다. 프로덕션 환경에서 수집된 로그는 다시 오프라인 이밸의 데이터셋을 보강하는 데 사용됩니다.
이 과정에서 휴먼 인 더 루프(Human in the Loop)가 중요한 역할을 합니다. 사용자에게 직접 ‘좋아요/싫어요’ 같은 피드백을 받거나, 전문 인력이 로그를 검토하는 휴먼 리뷰를 진행할 수 있습니다. 예를 들어, 사용자 피드백이 ‘싫어요’인 로그만 필터링하여 검토한 후, 개선할 점을 테스트 케이스로 만들어 데이터셋에 추가합니다.
결과적으로 이밸은 개발 단계부터 프로덕션까지 AI 애플리케이션의 품질을 측정하고 보장하는 유일한 방법입니다. 이러한 체계적인 평가 과정을 통해 개발팀은 예측 불가능한 LLM을 통제하고, 고객에게 더 신뢰할 수 있는 AI 경험을 제공할 수 있습니다.
LLM 기반 프로덕트의 성공은 개발자의 직감이나 단순한 몇 번의 테스트만으로 보장되지 않습니다. 이밸은 LLM의 본질적인 비결정성을 극복하고 품질을 정량화할 수 있는 유일한 도구입니다. 오프라인 이밸로 신뢰의 기반을 다지고, 온라인 이밸과 휴먼 피드백을 통해 끊임없이 선순환 구조를 가동해야 합니다. 결국 잘 설계된 이밸이야말로, 우리 AI 프로덕트의 품질을 한 단계 끌어올리는 강력한 엔진이 될 것입니다.
출처: AI Engineer 유튜브
답글 남기기