평가 센터를 통해 프로덕션 배포 전에 에이전트 품질을 검증할 수 있습니다. 테스트 케이스 데이터셋을 생성하고, 게시된 모든 에이전트에 대해 실행한 후, 케이스별 통과/실패 판정, 지연 시간 및 토큰 사용량이 포함된 정량적 보고서를 받습니다.Documentation Index
Fetch the complete documentation index at: https://docs.fim.ai/llms.txt
Use this file to discover all available pages before exploring further.
엔터프라이즈 조달 검토를 위해 설계됨 — 모든 결과는 감사 가능하고, 재현 가능하며, 지속적으로 저장됩니다.
작동 방식
각 평가 실행은 모든 테스트 케이스에 대해 3단계 파이프라인을 실행합니다:에이전트 실행
실제 ReActAgent가 테스트 케이스 프롬프트를 실행합니다. 채팅과 동일한 엔진: 동일한 모델, 동일한 도구, 동일한 지침. 모킹 없음, 지름길 없음.생성: 답변, 지연시간, 토큰 사용량.
LLM 채점
별도의 “채점자” LLM(빠른 모델)이 예상 동작 및 어설션에 대해 답변을 판단합니다.입력: 프롬프트 + 예상 동작 + 어설션 + 답변. 출력:
{ verdict: "pass"|"fail", reasoning: "..." }.주요 설계 결정
| 결정 | 이유 |
|---|---|
| 실제 ReActAgent (모의 객체 아님) | 도구 호출 및 다단계 추론을 포함한 실제 에이전트 동작 테스트 |
| 별도의 채점 LLM (빠른 모델) | 저렴하고 빠름; 에이전트 LLM은 실행 중에 이미 토큰 소비 |
asyncio.Semaphore(5) | 동시성을 5로 제한하여 LLM 제공자에 대한 속도 제한 오류 방지 |
| 각 사례는 독립적 | 사례 간 대화 기록 없음; 각각 새로운 에이전트 인스턴스 획득 |
| 백그라운드 실행 | 실행이 비동기 작업으로 시작됨 — API가 즉시 반환되고, 프론트엔드는 3초마다 폴링 |
워크플로우
1. 데이터셋 생성
Eval Center → Datasets 탭으로 이동하여 New Dataset을 클릭합니다. 데이터셋은 테스트 케이스의 명명된 컬렉션입니다. 설명적인 이름(예: “Customer Support — Tier 1 Questions”)과 선택적 설명을 입력합니다.2. 테스트 케이스 추가
데이터셋을 클릭하여 테스트 케이스를 추가합니다. 각 케이스는 세 가지 필드를 가집니다:| 필드 | 필수 | 설명 |
|---|---|---|
| 프롬프트 | 예 | 에이전트에게 전송되는 정확한 질문 또는 지시사항 |
| 예상 동작 | 예 | 올바른 답변이 어떤 모습인지에 대한 자연어 설명 |
| 어설션 | 아니오 | 특정 확인 목록 (예: “답변에서 환불 정책 언급”, “응답이 200단어 미만”) |
3. 평가 시작
Eval Runs 탭으로 이동하여 New Evaluation을 클릭합니다. 다음을 선택합니다:- Agent — 소유한 모든 에이전트
- Dataset — 최소 하나 이상의 테스트 케이스가 있는 모든 데이터셋
4. 결과 읽기
결과 페이지에는 다음이 표시됩니다:- 헤더: 에이전트 이름, 데이터셋 이름, 상태 배지, 통과율, 평균 지연시간, 총 토큰
- 진행률 표시줄: 케이스가 완료되면서 채워짐 (녹색 = 통과 비율)
- 결과 테이블: 테스트 케이스당 한 행:
- 프롬프트 (잘림 — 클릭하여 확장)
- 판정: Pass (녹색), Fail (빨강), 또는 Error (주황)
- 에이전트의 답변 (잘림 — 클릭하여 확장)
- 평가자의 추론 (통과 또는 실패 이유)
- 지연시간 (ms) 및 토큰 수
테스트되는 항목
포함됨
- 기본 제공 도구: calculator, web_search, web_fetch, python_exec, file_ops 등
- 에이전트 지침: 에이전트의
extra_instructions필드가 전달됨 - 에이전트의 구성된 모델: 에이전트에 사용자 정의 모델 구성이 있는 경우 해당 모델이 사용됨
포함되지 않음 (의도적)
- 커넥터: 외부 HTTP 커넥터는 실시간 타사 서비스가 필요하므로 불안정한 테스트를 피하기 위해 평가에서 제외됨
- MCP 서버: 같은 이유 — 외부 프로세스 종속성
- 대화 기록: 각 케이스는 이전 컨텍스트 없이 격리된 상태에서 실행됨
- 지식 베이스: KB 검색 도구는 평가 모드에서 로드되지 않음
이는 평가 결과가 에이전트의 추론 및 도구 사용 능력을 반영하며, 외부 서비스와의 통합을 반영하지 않음을 의미합니다. 커넥터 테스트 기능을 통해 커넥터를 별도로 테스트하세요.
채점자
채점자는 LLM(시스템의 “빠른” 모델)으로, 네 가지 정보를 받아 구조화된 JSON 판정을 반환합니다: 시스템 프롬프트:당신은 공정한 AI 평가자입니다. 당신의 역할은 AI 에이전트의 답변이 주어진 프롬프트에 대한 예상 동작을 충족하는지 판단하는 것입니다. 엄격하지만 공정하게 평가하세요. “통과”는 답변이 예상 동작에 따라 프롬프트를 진정으로 다루어야 합니다. “실패”는 답변이 잘못되었거나, 불완전하거나, 주제를 벗어났거나, 핵심 요구사항을 놓쳤다는 의미입니다.사용자 메시지 포함:
- 원본 프롬프트
- 예상 동작
- 어설션 목록(또는 “지정되지 않음”)
- 에이전트의 실제 답변
structured_llm_call을 사용합니다. 채점자 자체가 실패하면(네트워크 오류, 잘못된 응답), 사건은 error로 표시됩니다.
모범 사례
데이터셋 설계
- 작게 시작하기: 에이전트의 핵심 사용 사례를 다루는 5–10개의 사례
- 엣지 케이스 포함: 최소 2–3개의 적대적 또는 범위 외 프롬프트 포함
- 예상 동작을 구체적으로 명시: 모호한 기대사항은 일관성 없는 채점으로 이어짐
- 하드 요구사항에 어설션 사용: “가격을 반드시 언급해야 함”이 채점자가 이를 포착하기를 바라는 것보다 더 신뢰할 수 있음
결과 해석
- 80% 이상의 통과율은 잘 구성된 에이전트의 좋은 기준입니다
- 낮은 통과율과 높은 지연시간은 에이전트가 다단계 추론에 어려움을 겪고 있음을 시사합니다
- 오류 상태는 에이전트 또는 채점자가 충돌했음을 의미합니다 — 서버 로그에서 세부 정보를 확인하세요
- 채점자 불일치: 채점자가 잘못되었다고 생각하면 그 추론을 읽어보세요. 예상 동작 설명을 수정해야 할 수도 있습니다
재평가 시기
- 에이전트 지시사항을 변경한 후
- 에이전트의 LLM 모델을 전환한 후
- 도구 카테고리를 추가하거나 제거한 후
- 프로덕션 배포 전 (CI/CD 통합은 향후 릴리스에서 제공 예정)