> For the complete documentation index, see [llms.txt](https://docs.datumo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.datumo.com/documentation/observability/undefined.md).

# 핵심 개념과 구조

Observability는 고객사의 AI Application에서 발생한 실제 유저 사용 로그를 Datumo Platform으로 연동해, 서비스가 현재 잘 작동하고 있는지를 지속적으로 확인하는 기능입니다. 사전에 구성한 벤치마크로 평가하는 Evaluation과 달리, 운영 중인 서비스의 실사용 데이터를 대상으로 안전성과 품질을 점검합니다.

Evaluation이 "출시 전에 미리 만들어둔 문제로 시험을 보는 것"이라면, Observability는 "출시 후 실제 응대 내역을 검토하는 것"에 가깝습니다. 그래서 사전에 예상하지 못했던 질문이나, 테스트에서는 나오지 않았던 답변 문제를 발견할 수 있습니다.

이 문서는 Observability 전반의 개념과 용어를 다룹니다. 각 기능의 화면과 조작 방법은 하단 기능별 문서를 참고하세요.

***

## 전체 파이프라인

<figure><img src="https://2667005819-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FJTwnb351jHLY7t48GvYX%2Fuploads%2FJIx39R19AUzNv3J6mGYf%2Fimage.png?alt=media&amp;token=0f3299eb-98ad-42d4-92f8-18365cc87f2d" alt=""><figcaption></figcaption></figure>

<table><thead><tr><th width="129.67578125">단계</th><th>설명</th></tr></thead><tbody><tr><td><strong>Integration</strong></td><td>고객이 사용하는 AI 개발 플랫폼으로부터 유저 사용 로그를 연동하여, Datumo Platform에서 활용 가능한 형태로 가져옵니다.</td></tr><tr><td><strong>Scenario Analysis</strong></td><td>실제 유저의 사용 패턴을 분석하고 예기치 못한 사용을 인지합니다. 시나리오 분류 결과에 따라 서로 다른 평가 기준과 평가 샘플링 기준이 Evaluation에 적용됩니다.</td></tr><tr><td><strong>Evaluation</strong></td><td>실제 유저가 받아본 AI 서비스 답변의 퀄리티를 확인하여, 서비스가 현재 잘 작동되고 있는지에 대한 안전성·퀄리티를 파악합니다.</td></tr><tr><td><strong>Annotation</strong></td><td>AI 자동화를 통해 분류된 값에 대해 실제 전문가가 정확한 정답·판단을 입력하고, 그 결과가 추후 AI 자동화 기능의 퀄리티를 높이는 데 활용됩니다.</td></tr><tr><td><strong>Report</strong></td><td>평가·분류 결과를 리포트 형태로 제공하여 개선이 필요한 지점을 파악할 수 있도록 지원합니다.</td></tr></tbody></table>

Report에서 도출된 개선 사항은 AI Platform에서 새로운 버전으로 개발·배포되고, 이 버전이 재배포·출시에 문제가 없는지를 Datumo Platform - Evaluation의 사전 설정된 평가 환경에서 재평가하는 순환 구조를 이룹니다.

***

## 사용자 구분

Observability 문서에서는 두 종류의 사용자를 구분합니다.

| 구분     | 정의                           |
| ------ | ---------------------------- |
| **고객** | Datumo Platform의 사용자         |
| **유저** | 고객의 AI Application을 사용하는 사용자 |

***

## 로그 계층 구조

연동된 로그는 아래 계층으로 구조화됩니다. Observability의 모든 화면과 평가는 이 단위를 기준으로 동작합니다.

### **로그 계층 용어**

<table data-search="false"><thead><tr><th width="115.43359375">용어</th><th width="85.2265625">한글</th><th>정의</th></tr></thead><tbody><tr><td><strong>Logs</strong></td><td>로그</td><td>Session부터 Span까지를 통틀어 AI Application의 유저 사용 이력을 통합하여 가리키는 단어</td></tr><tr><td><strong>Session</strong></td><td>세션</td><td>유저가 특정 AI Application에서 대화를 시작해서 끝나기까지의 한 묶음</td></tr><tr><td><strong>Segment</strong></td><td>세그먼트</td><td>한 세션을 '토픽' 기준으로 분류하여 나눈 단위</td></tr><tr><td><strong>Turn</strong></td><td>턴</td><td>AI Application 내 유저의 인풋 ~ App output 한 쌍</td></tr><tr><td><strong>Span</strong></td><td>스팬</td><td>한 번의 턴이 생기기까지의 에이전트 내 중간 결과물 (Retriever 결과, Router 결과 등)</td></tr><tr><td><strong>User Input</strong></td><td>유저 인풋</td><td>한 턴에서 유저가 AI Application에 던진 질문·인풋 값</td></tr><tr><td><strong>App Output</strong></td><td>앱 아웃풋</td><td>한 턴에서 AI Application이 내놓은 최종 답변</td></tr></tbody></table>

### **단위별 활용 위치**

<table><thead><tr><th width="207.73046875">단위</th><th>활용되는 화면</th></tr></thead><tbody><tr><td>Session</td><td>Fail Case 목록의 정렬·페이지네이션 기준, Session 사이드바의 상세 노출 단위</td></tr><tr><td>Turn</td><td>평가(Evaluation)의 기본 단위, Integration 정보 카드의 <code>Total turns</code> / <code>Latest logged at</code> 집계 기준, Fail Case 목록의 행 단위</td></tr><tr><td>User Input / App Output</td><td>평가 프롬프트의 입력 변수(<code>user_input</code>, <code>app_output</code>), Fail Case 목록의 노출 항목</td></tr></tbody></table>

***

## 평가 단위 용어

### **기능 용어**

<table><thead><tr><th width="187.40234375">용어</th><th width="111.9453125">한글</th><th>정의</th></tr></thead><tbody><tr><td><strong>Integration</strong></td><td>연동</td><td>고객이 사용하는 AI Platform, 로깅 플랫폼 등에서 유저 로그를 가져오는 전체 과정</td></tr><tr><td><strong>Sampling Probability</strong></td><td>샘플링 확률</td><td>평가 대상 여부를 결정하는 샘플링 확률 값</td></tr><tr><td><strong>Metric</strong></td><td>평가지표</td><td>평가 단위이자 평가 지표</td></tr><tr><td><strong>Rubric</strong></td><td>평가기준</td><td>Metric에서 개별로 평가해야 하는 기준</td></tr><tr><td><strong>Fail Case</strong></td><td>실패케이스</td><td>평가 지표의 Rubric 중 틀린 Rubric</td></tr></tbody></table>

> ℹ️ **Metric > Rubric > Fail Case 관계** — 하나의 Metric은 여러 Rubric으로 구성되며, 평가 결과 위반(TRUE)으로 판정된 Rubric이 Fail Case가 됩니다. 따라서 한 턴에서 여러 Metric이 Fail일 수 있고, 하나의 Metric 안에서도 여러 Fail Case가 발생할 수 있습니다.

***

## 데이터가 흐르는 순서

Observability를 처음 설정할 때는 아래 순서로 진행합니다.

<table><thead><tr><th width="78.50390625">순서</th><th width="450.07421875">작업</th><th>문서</th></tr></thead><tbody><tr><td>1</td><td>AWS 로그 경로를 연동하고 파서 코드를 작성해 로그를 가져옵니다.</td><td>O-1. Setting > Integration</td></tr><tr><td>2</td><td>연동된 턴 중 평가 대상으로 삼을 비율을 지정합니다.</td><td>O-1. Setting > Sampling Probability</td></tr><tr><td>3</td><td>샘플링된 턴을 어떤 Metric·Rubric으로 평가할지 설정합니다.</td><td>O-1. Setting > Evaluation</td></tr><tr><td>4</td><td>평가 결과 위반이 발견된 턴을 확인합니다.</td><td>O-2. Fail Case</td></tr></tbody></table>

***

### 🔗 **관련 문서**

* [O-1. Setting](/documentation/observability/undefined-1/o-1.-setting.md)
* [O-2. Fail Case](/documentation/observability/undefined-1/o-2.-fail-case.md)
