AI VIDEO BRIEFING
AI 에이전트 평가 파이프라인: Harbor와 LangSmith로 샌드박스·추적·관측 구축하기
LangChain 엔지니어가 에이전트 평가에 꼭 필요한 세 요소인 격리 샌드박스, 실행 추적, 관측 가능성을 오픈소스 프레임워크 Harbor와 LangSmith로 구현하는 방법을 데이터 분석 에이전트 예제로 차근차근 설명한다.

핵심 메시지
쉽게 이해하기
예전에는 LLM이나 에이전트의 평가가 비교적 단순했다. 출력 문자열만 확인하면 됐기 때문이다. 하지만 요즘 에이전트는 파일을 읽고 스크립트를 실행하며 환경 자체를 조작한다. 그래서 이제는 각 실행이 저마다 깨끗하고 격리된 환경에서 돌아가야 한다.
발표자는 데이터 분석가 역할을 맡은 OpenAI SDK 에이전트를 예로 든다. 제품·판매량·단가·매출이 담긴 sales.csv 파일을 주고 특정 제품의 값을 바꾸라는 간단한 작업을 시키면, 로컬에서는 파일이 정확히 갱신된다. 다만 두 가지 문제가 남는다. 작업이 늘수록 모든 예외 상황을 확인하는 데 시간이 너무 오래 걸리고, 무엇이 잘못됐는지 짚으려면 작업별 추적을 따로 봐야 한다는 점이다.
이 지점에서 Harbor가 등장한다. Harbor는 오픈소스 평가 프레임워크로, 사용자가 세 가지만 준비하면 된다. 자신의 에이전트 코드, 샌드박스(여기서는 LangSmith의 클라우드 샌드박스), 그리고 작업 폴더 모음인 데이터셋이다. 하나의 작업 폴더 안에는 에이전트가 할 일을 적은 instruction.md, 시작 상태를 담은 환경 폴더(예: 도커 이미지), 합격 기준을 결정론적으로 검사하는 테스트 스크립트, CPU·메모리 한도를 적은 task.toml이 들어간다.
격리는 마이크로 VM으로 이뤄진다. LangSmith 샌드박스에서 각 실행은 자신만의 가상 머신을 받아 에이전트 코드와 해당 작업을 복사하고, 여러 작업을 병렬로 독립 실행한다. 각 실행에는 앞서 정의한 테스트 스크립트로 통과 여부를 판정하는 검증기가 붙는다. 실행은 harbor를 설치한 뒤 모델 API 키와 LangSmith API 키를 넣고 harbor run 명령으로 데이터셋·에이전트·샌드박스·관측 플러그인 경로를 지정해 돌린다.
결과는 LangSmith의 데이터셋·실험 화면에서 확인한다. 각 실행의 보상 점수, 통과 여부, 토큰 수, 비용을 볼 수 있고, 특정 작업이 실패했다면 그 작업의 추적으로 들어가 에이전트가 파일을 읽고 출력을 쓰는 사고 과정을 단계별로 되짚을 수 있다.
주요 인사이트
- 에이전트 평가의 핵심은 '정답 문자열 비교'에서 '격리 환경에서의 행동 검증'으로 옮겨갔다. 부작용을 남기는 도구 호출이 있기 때문이다.
- 합격 판정을 LLM이 아니라 pytest 같은 결정론적 스크립트로 내리면 평가 자체가 흔들리지 않아, 회귀 여부를 신뢰할 수 있다.
- 작업을 폴더 단위(지시문+환경 이미지+테스트+자원 한도)로 표준화하면 평가셋을 데이터처럼 늘리고 병렬로 돌리기 쉬워진다.
- 실패를 숫자 점수로만 보지 않고 추적으로 원인까지 파고들 수 있어야 에이전트를 실제로 개선하는 반복이 가능하다.
자주 묻는 질문
기존 LLM 평가와 에이전트 평가는 무엇이 다른가?
기존에는 출력 문자열만 비교하면 됐지만, 에이전트는 파일을 읽고 스크립트를 실행하며 환경을 바꾸기 때문에 각 실행을 깨끗하게 격리된 환경에서 돌리고 그 행동을 검증해야 한다.
Harbor로 평가하려면 무엇을 준비해야 하나?
세 가지가 필요하다. 자신의 에이전트 코드, 샌드박스(LangSmith 클라우드 샌드박스), 그리고 작업 폴더 모음인 데이터셋이다.
하나의 평가 작업 폴더는 어떻게 구성되나?
할 일을 적은 instruction.md, 시작 상태를 담은 환경 폴더(도커 이미지 등), 합격 기준을 결정론적으로 검사하는 테스트 스크립트, 그리고 CPU·메모리 한도를 적은 task.toml로 구성된다.
실행 결과는 어디서 확인하나?
LangSmith의 데이터셋·실험 화면에서 보상 점수, 통과 여부, 토큰, 비용을 확인하고, 실패한 작업은 추적으로 들어가 에이전트의 단계별 사고 과정을 되짚어 원인을 찾을 수 있다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗