LLMOps 27

제대로 된 AI Agent 평가하기

Agent 평가를 최종 답변이 좋은지 나쁜지만 보는 것으로 좁히기 쉽다.

근거 · 교안 p95-p100

제대로 된 AI Agent 평가하기 대표 이미지

1장: 요리책과 요리사

솔라는 거실 테이블 위에 놓인 태블릿 화면을 톡, 톡, 가볍게 두드리고 있었다. 화면 한구석에는 ‘LLM 평가는 모델 자체의 능력을 보지만, Agent 평가는 실제 서비스 품질에 초점을 맞춘다’는 문장이 하이라이트 되어 있었다. 방금 읽은 글에서 가장 마음에 걸리는 부분이었다.

“언니, 나 이거 잘 모르겠어.”

부엌에서 물을 마시고 있던 루나가 솔라의 목소리에 고개를 돌렸다. 솔라가 태블릿을 들어 보였다.

“AI Agent를 평가하는 게 LLM 평가랑 다르대. 그런데 왜 다른 거지? Agent도 결국 LLM을 쓰는 거잖아. 그럼 마지막에 내놓는 답변이 좋은지만 보면 되는 거 아니야?”

솔라의 말에는 그럴듯한 확신이 섞여 있었다. 복잡하게 생각할 것 없이, 결과물이 똑똑하면 그만이라는 생각. 마치 어려운 수학 문제의 답만 맞으면 풀이 과정은 어떻든 상관없다는 듯한 태도였다.

루나는 솔라의 옆자리에 앉는 대신, 거실 한쪽 책장에 꽂혀 있던 낡은 요리책 한 권을 꺼내 테이블 위에 올려놓았다. 두툼하고 표지가 반들반들한, 손때 묻은 이탈리아 요리책이었다.

“솔라, 이 요리책한테 ‘오늘 저녁으로 먹을 토마토 파스타 레시피 알려줘’라고 물어본다고 상상해 봐. 이 책의 좋고 나쁨은 뭘로 판단할 수 있을까?”

“음… 레시피가 얼마나 맛있을지? 설명이 얼마나 따라 하기 쉬운지, 필요한 재료가 정확히 적혀 있는지 같은 거겠지.”

“맞아. 우리는 이 책이 ‘얼마나 훌륭한 레시피를 담고 있는지’를 평가해. 이 책 자체가 요리를 해주진 않으니까.”

루나는 잠시 말을 멈추고, 요리책을 가리키던 손가락을 거두었다.

“그럼 질문을 바꿔볼게. 요리책이 아니라, 재료 손질부터 요리까지 전부 다 해주는 ‘개인 요리사 Agent’에게 똑같이 시켰다고 해보자. ‘오늘 저녁으로 토마토 파스타 만들어줘’라고.”

“그야 당연히 완성된 파스타가 얼마나 맛있는지로 판단해야지!”

솔라는 즉시 대답했다. 너무나 당연한 질문이라고 생각했다. 하지만 루나는 고개를 저으며 다른 질문을 던졌다.

“정말? 파스타 맛이 전부일까? 만약 그 요리사가 파스타 한 접시를 만드는 데 세 시간이 걸렸다면?”

“세 시간? 그건 좀… 너무 오래 걸리는데.”

“장을 보러 가서 세상에서 제일 비싼 유기농 토마토를 사 오는 바람에 재료비가 10만 원이 나왔다면?”

솔라의 미간이 살짝 찌푸려졌다. “그것도 좀 심하다. 아무리 맛있어도 다시 시키진 않을 것 같아.”

“만약, 냉장고에 재료가 없는 걸 확인하고 장을 보러 나갔는데, 바질을 파는 곳이 없어서 그냥 빈손으로 돌아왔다면 어때? ‘죄송합니다, 바질이 없어서 파스타를 만들 수 없습니다.’ 하고.”

“아…”

솔라의 입에서 짧은 탄식이 터져 나왔다. 마지막 질문이 결정타였다. 요리사가 파스타를 아예 만들지 못했다면, ‘완성될 뻔했던’ 파스타가 얼마나 맛있었을지를 상상하는 건 아무 의미가 없었다. 최종 결과물이 존재하지 않으니 맛을 평가할 기회조차 없다.

솔라는 잠시 생각에 잠겼다. 처음에는 그저 ‘최종 결과물’인 파스타의 맛만 생각했다. 하지만 루나의 질문을 따라가다 보니, 파스타가 식탁에 오르기까지의 보이지 않던 과정들이 보이기 시작했다. 재료 확인, 장보기, 요리 시간, 사용한 비용, 그리고 임무 완수 자체의 성공 여부. 이 모든 것이 ‘개인 요리사 서비스’의 가치를 결정하는 중요한 요소였다.

“알겠다. 요리책은 그냥 좋은 ‘정보’를 주기만 하면 되니까, 그 정보의 품질, 그러니까 레시피 자체만 평가하면 되는 거구나. 그게 LLM 평가 같은 거네.”

솔라는 스스로 정리하며 고개를 끄덕였다.

“하지만 요리사는 단순히 정보를 주는 게 아니라, ‘파스타를 만든다’는 목표를 달성하기 위해 장을 보고, 불을 쓰는 것처럼 여러 단계의 ‘행동’을 하는 거였어. 그래서 최종 결과물인 파스타 맛뿐만 아니라, 그 행동 과정 전체를 봐야 해. 시간이 얼마나 걸렸는지, 돈은 얼마나 썼는지, 그리고 애초에 임무를 완수했는지부터 따져야 하는구나.”

솔라의 시선이 다시 태블릿 화면 속 문장으로 향했다. ‘LLM 평가는 모델 자체의 능력을 보지만, Agent 평가는 실제 서비스 품질에 초점을 맞춘다.’ 이제야 그 문장이 흐릿한 개념이 아닌, 구체적인 장면으로 이해되기 시작했다. 좋은 요리책과 좋은 요리사는 평가 기준이 완전히 달랐다. 하나는 지식의 평가, 다른 하나는 수행 능력 전체에 대한 평가였다. Agent는 요리책이 아니라 요리사였다.

“그래, 바로 그거야. Agent는 답변을 생성하는 모델이 아니라, 목표를 달성하는 시스템이니까.”

루나의 말에 솔라는 완전히 이해했다는 듯 고개를 끄덕였다. 하지만 새로운 의문이 곧바로 고개를 들었다.

“좋아, Agent가 시스템이라는 건 알겠어. 그럼 그 시스템을 평가할 때, 방금 말한 것처럼 ‘답변 품질’ 말고 다른 것들도 봐야 한다는 거잖아. 그런데 정확히 뭘, 또 얼마나 많이 봐야 하는 거야? 시간, 비용… 또 뭐가 있지? 평가 기준이 갑자기 너무 복잡해지는 것 같은데.”

2장: 빠른 추천과 완벽한 추천

솔라의 질문이 채 끝나기도 전에, 루나는 말없이 태블릿을 가져가 화면을 두 번 탭했다. 화면이 둘로 나뉘더니, 양쪽에 비슷해 보이지만 미묘하게 다른 디자인의 영화 추천 챗봇이 나타났다. 왼쪽 챗봇은 ‘시네마틱 소믈리에(Cinematic Sommelier)’, 오른쪽은 ‘무비 파인더(Movie Finder)’라는 이름이 붙어 있었다.

루나는 아무런 설명 없이 태블릿을 다시 솔라 앞으로 밀어 놓았다. 마치 방금 전 솔라가 던진 질문에 대한 답이 그 안에 있다는 듯한 몸짓이었다. “시간, 비용… 또 뭐가 있지? 평가 기준이 너무 복잡해지는 것 같은데.” 솔라의 혼잣말 같은 질문이 아직 거실 공중에 떠다니는 것 같았다.

“두 Agent에게 똑같은 질문을 해봐.”

루나의 말에 솔라는 잠시 망설이다가, ‘시네마틱 소믈리에’의 입력창에 손가락을 올렸다. 오늘 밤에 볼 만한, 좀 어두운 분위기의 SF 영화 추천해줘.

엔터 키를 누르자, ‘시네마틱 소믈리에’의 화면에 작은 모래시계 아이콘이 나타나 빙글빙글 돌기 시작했다. 10초, 20초… 1분이 지나도 화면은 바뀔 줄을 몰랐다. 솔라의 표정이 점점 굳어졌다.

“얘 왜 이래? 고장 났나?” “기다려봐. 생각 중일 거야.”

솔라는 초조하게 손가락으로 테이블을 두드렸다. 거의 3분이 지났을까, 마침내 화면이 바뀌며 긴 답변이 나타났다. 추천된 영화는 솔라가 한 번도 들어본 적 없는 희귀한 동유럽 영화였다. 줄거리 요약과 함께 ‘디스토피아적 세계관 속에서 인간의 고독을 철학적으로 탐구하는 영상미가 압권’이라는 평까지 붙어 있었다. 딱 솔라가 좋아할 만한 설명이었다.

“와, 이건 진짜… 완벽한 추천인데?”

감탄도 잠시, 솔라는 고개를 절레절레 저었다. “하지만 이걸 받자고 3분이나 기다리는 건 좀 아니지 않아? 성격 급한 사람은 속 터져서 못 써.”

이번에는 오른쪽의 ‘무비 파인더’에 똑같은 질문을 입력했다. 엔터 키를 누르자마자, 거의 1초도 안 되어 답변이 튀어나왔다.

'블레이드 러너'를 추천합니다. 어두운 미래 도시를 배경으로 한 SF 명작입니다.

짧고 간결한 답변이었다. 솔라가 이미 여러 번 본 영화였다.

“음… 나쁘지 않은 추천이긴 한데, 너무 뻔하잖아. 그래도 속도는 정말 빠르네.”

솔라는 태블릿을 내려놓고 루나를 바라보았다. “자, 이제 언니가 나한테 물어볼 차례지? 둘 중에 뭘 다시 쓸 거냐고.”

“그래서, 뭘 다시 쓸 건데?”

“나라면… ‘무비 파인더’를 쓸 거야. ‘시네마틱 소믈리에’의 추천은 정말 대단했지만, 기다리는 시간이 너무 길었어. 그냥 빨리 아무거나 추천받아서 보는 게 낫지.”

솔라는 단호하게 말했다. 결과물의 품질이 조금 떨어지더라도, 과정의 답답함을 견딜 수 없다는 판단이었다. 결과만 좋으면 장땡이라는 생각은 온데간데없었다.

루나는 솔라의 대답을 듣고는 옆에 있던 메모지를 가져와 펜으로 네 개의 줄을 그었다. 그리고 맨 위에 ‘시네마틱 소믈리에’와 ‘무비 파인더’라고 썼다.

평가 기준시네마틱 소믈리에무비 파인더
과제 성공 (Task Success)성공성공
결과물 품질 (Output Quality)
실행 성능 (System Performance)
운영 비용 (Cost)

“네가 방금 한 판단을 이 표에 정리해 보자. 첫째, 과제 성공. 둘 다 ‘어두운 SF 영화 추천’이라는 과제를 완수했지?”

솔라는 고개를 끄덕였다. 루나는 두 Agent의 ‘과제 성공’ 칸에 동그라미를 쳤다.

“둘째, 결과물 품질. 추천해 준 영화 자체의 만족도는 어땠어?”

“그건 ‘시네마틱 소믈리에’가 압도적으로 좋았지. 10점 만점에 10점. ‘무비 파인더’는 6점 정도?”

루나는 솔라가 말한 대로 점수를 적어 넣었다.

“셋째, 실행 성능. 네가 아까 불평했던 거 말이야. 속도.”

“‘무비 파인더’가 10점, ‘시네마틱 소믈리에’는 1점. 거의 고장 난 줄 알았으니까.”

루나는 다시 숫자를 채워 넣었다. 표를 보니 ‘시네마틱 소믈리에’와 ‘무비 파인더’의 장단점이 극명하게 갈렸다.

“마지막으로, 운영 비용. 이건 우리가 지금 볼 수는 없지만 중요한 기준이야. 만약 ‘시네마틱 소믈리에’가 완벽한 추천을 위해 수십 개의 유료 영화 데이터베이스를 뒤지느라 한 번 요청에 1,000원씩 쓴다면? ‘무비 파인더’는 무료 데이터베이스만 써서 1원도 안 들고.”

“당연히 ‘무비 파인더’를 써야지. 영화 한 편 추천받자고 1,000원을 내는 건 바보 같은 짓이야.”

루나가 마지막 칸을 채우자, 네 가지 기준에 대한 두 Agent의 평가가 한눈에 들어왔다.

평가 기준시네마틱 소믈리에무비 파인더
과제 성공 (Task Success)OO
결과물 품질 (Output Quality)10점6점
실행 성능 (System Performance)1점 (3분)10점 (1초)
운영 비용 (Cost)높음 (1,000원)낮음 (0원)

솔라는 표를 가만히 들여다보았다. ‘결과물 품질’만 보면 ‘시네마틱 소믈리에’의 완승이었다. 하지만 ‘실행 성능’과 ‘운영 비용’까지 함께 보니, ‘무비 파인더’가 훨씬 합리적인 선택처럼 보였다. ‘어떤 Agent가 더 좋은가?’라는 질문은 사용자의 상황과 목적에 따라 답이 달라질 수밖에 없었다.

“알겠다. 요리사 Agent를 평가할 때 파스타 맛만 보는 게 아니었던 것처럼, 영화 추천 Agent도 단순히 추천 결과가 얼마나 내 취향인지만 보면 안 되는 거였어. 임무를 완수했는지(Task Success), 결과물의 품질은 어떤지(Output Quality), 얼마나 빠르고 안정적인지(System Performance), 그리고 얼마나 많은 돈과 자원을 썼는지(Cost)를 전부 다 봐야 진짜 가치를 알 수 있는 거구나.”

솔라는 방금 자신이 겪은 경험과 루나가 만든 표가 정확히 일치하는 것을 깨달았다. 복잡하게만 느껴졌던 평가 기준들이 이제는 Agent의 가치를 입체적으로 보기 위한 필수적인 렌즈처럼 느껴졌다.

“그래. 이 네 가지 기준을 다면적으로 봐야 해. 그래야 ‘우리에게’ 정말 좋은 Agent가 무엇인지 판단할 수 있어.”

루나의 말에 솔라는 고개를 끄덕였다. 머릿속이 명쾌하게 정리되는 기분이었다. 하지만 그 명쾌함 끝에 또 다른 질문이 꼬리를 물고 이어졌다.

“좋아, 어떤 기준들로 봐야 하는지는 알겠어. 그런데 이 기준들을 실제로 어떻게 점수를 매겨? ‘과제 성공’이나 ‘실행 성능’은 성공/실패나 시간 측정처럼 쉬운데… ‘결과물 품질’ 같은 건 어떻게 숫자로 바꿔? 이것도 결국 사람이 하나하나 보고 ‘음, 이건 10점이군’ 하고 주관적으로 판단해야 하는 거야?”

3장: 깐깐한 규칙과 똑똑한 비평가

솔라의 질문이 끝나자, 루나는 대답 대신 펜을 들어 이전 장에서 함께 채웠던 평가표를 가만히 들여다보았다. 솔라는 숨을 죽이고 언니의 다음 행동을 지켜봤다. ‘결과물 품질 같은 건 어떻게 숫자로 바꿔?’라는 질문은, 결국 모든 평가의 끝에는 모호한 사람의 주관이 기다리고 있다는 체념 섞인 말이었다. 솔라는 루나가 ‘결국 사람이 꼼꼼히 봐야지’ 같은 원론적인 답을 할 것이라 예상했다.

하지만 루나는 표의 맨 윗줄, ‘평가 기준’이라는 제목 옆에 새로운 두 개의 칸을 더 그렸다. 그리고 각각 ‘깐깐한 규칙으로’와 ‘똑똑한 비평가에게’라고 적었다. 이전 표에는 없던 낯선 분류였다. 그저 점수를 매기는 것에서 나아가, 점수를 매기는 ‘방법’ 자체를 나누려는 것처럼 보였다.

평가 기준시네마틱 소믈리에무비 파인더깐깐한 규칙으로똑똑한 비평가에게
과제 성공OO
결과물 품질10점6점
실행 성능1점 (3분)10점 (1초)
운영 비용높음 (1,000원)낮음 (0원)

새로운 칸을 본 솔라는 미간을 찌푸렸다. “깐깐한 규칙? 똑똑한 비평가? 그게 뭔데? 결국 사람이 평가한다는 말을 다르게 하는 것뿐이잖아. ‘과제 성공’이나 ‘실행 성능’은 성공/실패나 시간 측정처럼 딱 떨어지니까 규칙으로 된다 쳐도, ‘결과물 품질’ 같은 건… 이것도 결국 사람이 하나하나 보고 ‘음, 이건 10점이군’ 하고 주관적으로 판단해야 하는 거 아니야?”

솔라의 목소리에는 ‘결국 모든 평가는 귀찮은 수작업으로 돌아온다’는 익숙한 불신이 묻어났다.

루나는 고개를 저으며 태블릿의 ‘무비 파인더’ 앱을 다시 열었다. 그리고 이전과는 다른 요청을 입력했다. 우울한 날 볼 만한 영화 2편만 추천해줘.

이번 요청에는 ‘2편만’이라는 명확한 조건이 추가되었다. 잠시 후, ‘무비 파인더’가 답을 내놓았다. '이터널 선샤인'을 추천합니다. 헤어진 연인의 기억을 지워가며 사랑의 의미를 되새기는 이야기입니다.

루나는 답변을 솔라에게 보여주며, 방금 자신이 추가했던 ‘깐깐한 규칙으로’ 칸을 손가락으로 가리켰다.

“자, 먼저 깐깐한 규칙 평가관이 되어보자. 규칙은 단 하나, ‘영화를 정확히 2편 추천했는가?’야. 이 답변은 통과야, 실패야?”

“실패지. 한 편만 추천했으니까.”

솔라는 즉답했다. 너무나 명백했다. 정답과 오답이 칼같이 나뉘는 수학 문제 같았다.

“맞아. 이런 평가는 컴퓨터가 훨씬 잘해. 사람이 굳이 답변 내용을 읽어볼 필요도 없이, 추천된 영화 개수만 세어서 2가 아니면 전부 ‘실패’ 처리하면 그만이야. 수천, 수만 개의 답변도 순식간에 평가할 수 있지.”

“아… ‘과제 성공’ 여부는 이런 식으로 규칙을 만들어서 자동으로 평가할 수 있겠구나.” 솔라는 고개를 끄덕였다. 사람의 주관이 끼어들 여지가 없었다.

“그럼 이제 다음 단계. ‘똑똑한 비평가에게’ 칸으로 넘어가자.” 루나의 손가락이 옆 칸으로 옮겨갔다. “규칙은 어겼지만, 추천한 영화 자체는 어때? ‘이터널 선샤인’이 ‘우울한 날’이라는 분위기와 잘 어울리는 것 같아?”

솔라는 잠시 생각에 잠겼다. “‘이터널 선샤인’… 우울할 때 보면 더 깊이 빠져들 수도 있고, 위로를 받을 수도 있지. 응, 추천 자체는 꽤 괜찮은 것 같아. 분위기에 적절해.”

“바로 그 지점이야. ‘분위기에 적절한가?’ 같은 평가는 ‘영화가 2편인가?’처럼 간단한 규칙으로 만들 수 없어. 사람의 감성이나 미묘한 맥락을 이해해야 하니까. 그래서 똑똑한 비평가가 필요한 거야.”

“결국 그 비평가가 사람이란 소리네. 추천 영화 만 개를 평가하려면, 만 번 사람이 직접 보고 판단해야 하는 거잖아.” 솔라가 다시 처음의 질문으로 돌아왔다.

“꼭 그럴 필요는 없어.”

루나가 말했다.

“만약 우리보다 영화를 훨씬 더 많이 보고, 수많은 사람들의 감상평까지 학습한, 아주 유능하고 지치지도 않는 영화 비평가가 있다면 어떨까? 그 비평가에게 ‘이 요청에 대해 이 답변이 얼마나 적절한지 10점 만점으로 평가해 줘’라고 시키는 거야.”

“그런 비평가가 어딨어?”

“바로 다른 LLM이지.”

순간 솔라의 머릿속에 흩어져 있던 조각들이 맞춰졌다. Agent를 평가하기 위해 또 다른 AI를 심판으로 고용하는 그림.

“아! 그러니까, 개수나 형식처럼 명확한 조건들은 ‘깐깐한 규칙’으로 컴퓨터가 빠르고 정확하게 자동 평가하고, 추천 내용이 좋은지, 문장이 자연스러운지처럼 품질과 관련된 애매한 부분들은 사람 대신 ‘똑똑한 비평가’, 즉 다른 LLM한테 맡겨서 평가를 자동화하는 거구나!”

솔라는 이제야 루나가 왜 표에 두 칸을 나누었는지 완전히 이해했다. 모든 것을 사람이 하거나, 모든 것을 규칙으로 하려는 극단적인 생각이 문제였다. 평가하려는 대상의 성격에 맞춰 두 가지 방법을 조합하는 것이 핵심이었다. ‘과제 성공’은 규칙으로, ‘결과물 품질’은 LLM으로 평가할 수 있다는 사실이 눈앞에서 증명된 것이다.

더 이상 Agent 평가는 막막하고 주관적인 노동으로 느껴지지 않았다. 오히려 잘 설계된 시스템처럼 느껴졌다. 솔라는 흥미가 동했다. 그녀는 루나의 손에서 메모지와 펜을 가져왔다. 그리고 새로운 평가 계획 초안을 짜기 시작했다. 이번에는 가상의 ‘맛집 추천 Agent’를 위한 것이었다.


[맛집 추천 Agent 평가 계획 초안]

1. 과제 성공 (Task Success)

  • 측정 항목: “강남역 근처 파스타 맛집 3곳 추천” 요청에, 정확히 3곳을 추천했는가?
  • 평가 방법: 규칙 기반. (결과에서 ‘곳’ 또는 ‘개’를 카운트)

2. 결과물 품질 (Output Quality)

  • 측정 항목: 추천된 식당이 실제로 ‘파스타 맛집’이라는 평판에 부합하는가?
  • 평가 방법: LLM-as-Judge. (별도의 LLM에게 상위 리뷰 데이터와 함께 적절성 평가 요청)

3. 실행 성능 (System Performance)

  • 측정 항목: 요청 후 3초 이내에 답변을 생성하는가?
  • 평가 방법: 시간 측정.

4. 운영 비용 (Cost)

  • 측정 항목: API 호출 1회당 비용이 10원 미만인가?
  • 평가 방법: 비용 측정.

자신이 직접 작성한 평가 계획을 내려다보는 솔라의 눈이 반짝였다. 이제 Agent를 평가한다는 것이 최종 결과물의 품질만 보는 단순한 행위가 아니라는 것을, 그리고 그 복잡해 보이는 과정조차 체계적으로 자동화할 수 있다는 것을 알게 되었다. 그것은 좋은 요리사의 가치를 파스타 맛만으로 판단하지 않는 것과 같은 이치였다. 얼마나 빠르고, 얼마나 경제적이며, 무엇보다 주어진 임무를 얼마나 충실히 완수했는가를 함께 보는 입체적인 시선. 솔라는 이제 그 시선을 자신의 것으로 만들었다.