대시보드로 프로젝트 모니터링하기

대시보드로 프로젝트 모니터링하기

대시보드는 트레이스 데이터에 대한 높은 수준의 인사이트를 제공해 추세를 파악하고 애플리케이션의 건강 상태를 모니터링하는 데 도움을 줘요. 대시보드는 LangSmith UIMonitoring에서 사용할 수 있어요.

LangSmith는 두 가지 대시보드 유형을 제공해요:

  • 미리 빌드된 대시보드: 모든 추적 프로젝트에 대해 자동으로 생성.
  • 커스텀 대시보드: 필요에 따라 구성할 수 있는 차트 모음. 플랫폼 설정에 따라 두 가지 환경이 제공돼요:

출처: 문서

본문

미리 빌드된 대시보드

미리 빌드된 대시보드는 각 프로젝트에 대해 자동으로 생성되며 트레이스 수, 오류율, 토큰 사용량 등의 핵심 지표를 다뤄요. 기본적으로 추적 프로젝트 페이지 오른쪽 상단의 Dashboard 버튼을 사용해 추적 프로젝트의 미리 빌드된 대시보드에 접근할 수 있어요.

대시보드 섹션

미리 빌드된 대시보드는 다음 섹션으로 나뉘어요:

섹션 보여주는 내용
Traces 트레이스 수, 지연 시간 및 오류율. 트레이스는 단일 작업과 관련된 의 모음이에요. 예를 들어 사용자 요청이 에이전트를 트리거하면 해당 에이전트 호출의 모든 런이 동일한 트레이스의 일부가 돼요.
LLM Calls LLM 호출 수 및 지연 시간. 런 유형이 "llm"인 모든 런을 포함해요.
Cost & Tokens 총 및 트레이스별 토큰 수와 비용을 토큰 유형별로 세분화해 보여줘요. 비용은 LangSmith의 비용 추적을 사용해 측정돼요.
Tools 도구 이름별로 세분화된 도구 런의 런 수, 오류율 및 지연 시간 통계. 런 유형이 "tool"인 런을 포함해요. 가장 빈번하게 발생하는 상위 5개 도구로 제한돼요.
Run Types 루트 런의 직접 하위 런에 대한 런 수, 오류율 및 지연 시간 통계. 에이전트의 높은 수준 실행 경로를 이해하는 데 도움이 돼요. 가장 빈번하게 발생하는 상위 5개 런 이름으로 제한돼요.
Feedback Scores 가장 빈번하게 발생하는 상위 5개 피드백 유형의 집계 통계. 차트는 숫자 피드백의 평균 점수와 범주형 피드백의 범주 수를 보여줘요.

Group by

런 태그 또는 메타데이터로 그룹화해서 애플리케이션에 중요한 속성으로 데이터를 분할할 수 있어요. 전역 그룹별 설정은 대시보드 오른쪽 상단에 나타나요. ToolRun Type 차트는 이미 그룹별이 적용되어 있으므로 전역 그룹별은 효과가 없어요. 전역 그룹별은 다른 모든 차트에 적용돼요.

런에 메타데이터를 추가할 때는 트레이스와 특정 런(예: LLM 호출)에 동일한 메타데이터를 두는 것을 권장해요. 메타데이터와 태그는 상위 런에서 하위 런으로(또는 그 반대로) 전파되지 않아요. 메타데이터 키로 트레이스 차트와 LLM 호출 차트를 모두 그룹화하려면 트레이스(루트 런)와 LLM 런 모두에 해당 메타데이터가 첨부되어야 해요.

커스텀 대시보드

LangSmith Cloud US에서 사용 가능해요.

애플리케이션에 가장 중요한 지표를 추적하기 위한 맞춤형 차트 모음을 만드세요.

새 대시보드 만들기

  1. 왼쪽 사이드바의 Monitoring 탭으로 이동하세요.
  2. + New Dashboard 버튼을 클릭하세요.
  3. 대시보드에 이름과 설명을 지정하세요.
  4. Create를 클릭하세요.

대시보드에 차트 추가하기

  1. 대시보드 안에서 + New Chart 버튼을 클릭해 차트 생성 창을 여세요.
  2. 창 상단의 Edit 아이콘을 사용해 차트에 이름과 설명을 지정하세요.

차트 구성

템플릿에서 시작하기 (선택)

템플릿에서 시작하려면 그중 하나를 선택하세요. 일반적인 옵저버빌리티 사용 사례가 포함돼 있어요:

  • 시간 경과에 따른 오류율
  • 모델별 평균 지연 시간
  • 런 볼륨
  • 시간 경과에 따른 토큰 사용량
  • 가장 비싼 모델

또는 Search templates를 사용해 다른 템플릿을 찾아보세요.

추적 프로젝트 또는 데이터셋 선택하기

+ Select project or dataset을 열어 소스를 찾으세요. 팝오버 상단의 탭으로 두 소스 유형을 전환하세요.

  • 추적 프로젝트: 차트별로 하나 또는 여러 개를 추가할 수 있어요. 지표는 각 프로젝트별로 표시되지 않고 선택한 모든 프로젝트의 런을 단일 집합으로 풀링해 계산해요. 프로젝트별로 결과를 분리하려면 Group by를 사용하세요.
  • 데이터셋: 차트당 단일 데이터셋을 선택하세요.
    • 두 번째 데이터셋을 선택하면 이전 데이터셋을 자동으로 대체해요.
    • 차트는 추적 프로젝트 기반이거나 데이터셋 기반이에요. 프로젝트를 선택한 상태에서 데이터셋을 선택하면(또는 그 반대) 기존 선택이 지워져요.

지표 선택하기

드롭다운에서 지표를 선택하세요. 옵션은 측정 대상별로 그룹화돼요:

지표 설명 집계
Count 런의 수.
Latency latency_seconds에 대한 집계. 평균, 백분위 (p50 또는 p99)
Time to first token first_token_seconds에 대한 집계. 백분위 (p50 또는 p99), 평균
Tokens Total, Input 또는 Output 토큰 선택. 합계, 평균, 백분위
Cost Total, Input 또는 Output 비용 선택. 합계, 평균, 백분위
Feedback score 피드백 키 선택. 평균, 최소, 최대
Ratio 분자와 분모를 정의하며, 각각 자체 필터가 있는 지표. 오류율, LLM 런 점유율 등에 유용.

여러 지표로 필터링하려면 다음 Filter and group 섹션을 읽어보세요.

필터 및 그룹화

필터로 차트에 표시될 데이터를 정제하고, 그룹으로 여러 시리즈로 분할하세요.

필터가 나타나는 위치는 차트에 지표가 몇 개인지에 따라 달라져요:

  • 단일 지표: Filter & group 패널에 + Filter 하나(where 슬롯). 해당 지표에 적용돼요.
  • 여러 지표 또는 비율: 각 지표(또는 비율)는 Pick a metric 아래 카드 안에 자체 + Filter를 가져요. 차트 전체 필터는 없어요.

필터를 추가하면 기본적으로 수준에서 필터링해요. 범위를 넓히려면 필터 선택기를 연 다음 하단의 Advanced 하위 메뉴를 열고 선택하세요:

  • 트레이스 필터: 트레이스(루트 런) 수준에서 필터링.
  • 트리 필터: 런 중 하나라도 조건과 일치하면 전체 트레이스 트리를 포함.

활성 범위는 Advanced 항목의 접미사로 나타나요 (예: Advanced Tree Filter). 옆의 X를 클릭하면 일반 런 필터로 재설정돼요.

데이터셋 소스는 런/트레이스/트리 필터를 노출하지 않아요. 데이터는 선택한 데이터셋으로 범위가 한정돼요. 필터 구문은 트레이스 필터링 (ClickHouse)을 참고하세요.

그룹화는 같은 차트에 여러 시리즈를 만드는 두 가지 방법 중 하나로 이루어져요:

  1. Group by: 하나의 속성을 기반으로 데이터를 자동으로 시리즈로 분할. 사용 가능한 속성: 런 이름, 런 유형, 태그, 프로젝트, 메타데이터(metadata.ls_model_name 같은 경로 포함), 피드백 레이블. 그룹은 빈도순으로 순위가 매겨지고 상위 20개로 제한돼요.
  2. 데이터 시리즈: Add another metric 버튼으로 지표를 수동 추가. 각 시리즈는 자체 필터를 가질 수 있어서, 예를 들어 같은 차트에서 "상태가 error인 count"와 "상태가 success인 count"를 비교할 수 있어요.

Group by와 다중 지표는 단일 차트에서 상호 배타적이에요. 그룹별 속성은 하나만 허용돼요. 도넛, 순위 막대, 테이블 차트는 여러 데이터 시리즈를 지원하지 않아요 (추가는 삭제되거나 차단돼요).

시각화 선택하기

시각화 유형을 선택하세요:

  • 선 (Line)
  • 누적 막대 (Stacked bar)
  • KPI
  • 순위 막대 (Ranked bar)
  • 도넛 (Donut)
  • 테이블 (Table)

차트 저장 및 관리

  • Save를 클릭해 차트를 대시보드에 저장하세요.
  • 차트 오른쪽 상단의 세 점 버튼을 클릭해 차트를 편집하거나 삭제하세요.
  • 차트 오른쪽 상단의 세 줄 버튼을 클릭하고 + Clone을 선택해 차트를 복제하세요. 원본과 동일한 구성으로 새 차트 생성 창이 열려요.

대시보드 정리하기

  • 차트 재정렬: 차트의 헤더를 끌어 그리드에서 이동하세요.
  • 대시보드 시간 범위: 대시보드 상단에서 한 번 설정해요. 각 차트는 자체 버킷 크기를 재정의하지 않는 한 이 범위를 사용해요.
  • 대시보드 복제: 대시보드 헤더의 복사 아이콘을 사용하세요. 미리 빌드된 대시보드를 복제하면 차트가 완전히 편집 가능한 커스텀 차트로 변환돼요.

커스텀 대시보드 (레거시)

LangSmith Self-hosted 및 LangSmith Cloud EU/APAC 고객에게 사용 가능해요.

애플리케이션에 가장 중요한 지표를 추적하기 위한 맞춤형 차트 모음을 만드세요.

새 대시보드 만들기

  1. 왼쪽 사이드바의 Monitor 탭으로 이동하세요.
  2. + New Dashboard 버튼을 클릭하세요.
  3. 대시보드에 이름과 설명을 지정하세요.
  4. Create를 클릭하세요.

대시보드에 차트 추가하기

  1. 대시보드 안에서 + New Chart 버튼을 클릭해 차트 생성 창을 여세요.
  2. 차트에 이름과 설명을 지정하세요.
  3. 차트를 구성하세요.

차트 구성

추적 프로젝트 선택 및 런 필터링

  • 지표를 추적할 추적 프로젝트를 하나 이상 선택하세요.
  • Chart filters 섹션을 사용해 일치하는 런을 정제하세요. 이 필터는 차트의 모든 데이터 시리즈에 적용돼요. 자세한 내용은 트레이스 필터링 (ClickHouse) 가이드를 참고하세요.

지표 선택하기

  • 드롭다운 메뉴에서 지표를 선택해 차트의 y축을 설정하세요. 프로젝트와 지표를 선택하면 차트 미리보기와 일치하는 런이 보여요.
  • 특정 지표(지연 시간, 토큰 사용량, 비용 등)의 경우 LangSmith는 동일한 단위의 여러 지표 비교를 지원해요. 예를 들어 프롬프트 토큰과 완료 토큰을 볼 수 있는 차트를 원할 수 있어요. 각 지표는 별도의 선으로 나타나요.

데이터 분할

차트에 여러 시리즈를 만드는 방법은 두 가지가 있어요 (즉, 차트에 여러 선 만들기):

  1. Group by: 런 태그 또는 메타데이터, 런 이름 또는 런 유형으로 런을 그룹화. Group by는 선택한 필드를 기반으로 데이터를 여러 시리즈로 자동 분할해요. Group by는 기본적으로 빈도별 상위 5개 요소로 제한되며 최대 20까지 구성 가능해요.
  2. 데이터 시리즈: 개별 필터로 여러 시리즈를 수동 정의. 단일 지표 내에서 세분화된 데이터를 비교하는 데 유용해요.

차트 유형 선택하기

  • 시각화를 위해 선 차트와 막대 차트 중에서 선택하세요.

차트 저장 및 관리

  • Save를 클릭해 차트를 대시보드에 저장하세요.
  • 차트 오른쪽 상단의 세 점 버튼을 클릭해 차트를 편집하거나 삭제하세요.
  • 차트 오른쪽 상단의 세 줄 버튼을 클릭하고 + Clone을 선택해 차트를 복제하세요. 원본과 동일한 구성으로 새 차트 생성 창이 열려요.

추적 프로젝트에서 대시보드 연결하기

추적 프로젝트에서 직접 어떤 대시보드로든 연결할 수 있어요. 기본적으로 추적 프로젝트의 미리 빌드된 대시보드가 선택돼요. 대신 연결할 커스텀 대시보드가 있다면:

  1. 추적 프로젝트에서 Dashboard 버튼 옆의 세 점을 클릭하세요.
  2. 새 기본값으로 설정할 대시보드를 선택하세요.

예시: 사용자 여정 모니터링

모니터링 차트를 사용해 특정 노드에서 에이전트가 내린 결정을 매핑하세요.

이메일 어시스턴트 에이전트를 생각해보세요. 특정 노드에서 이메일에 대해 다음 결정을 내려요:

  • 이메일을 다시 보내기.
  • 사용자에게 알리기.
  • 응답 불필요.

이러한 결정의 비율을 추적하고 시각화하는 차트를 만들 수 있어요.

차트 만들기

  1. 지표 선택: Run count 지표를 선택하세요.

  2. 차트 필터: 이름이 triage_input인 모든 트레이스를 포함하도록 트리 필터를 추가하세요. 이는 triage_input 노드를 거친 트레이스만 포함한다는 뜻이에요. 또한 Is Roottrue인 차트 필터를 추가해 트레이스의 노드 수로 인해 카운트가 부풀려지지 않도록 하세요.

  3. 데이터 시리즈: triage_input 노드에서 내린 각 결정에 대한 데이터 시리즈를 만드세요. 결정의 출력은 출력 객체의 triage.response 필드에 저장되며, 결정 값은 no, email 또는 notify 중 하나예요. 각 결정은 차트에서 별도의 데이터 시리즈를 생성해요.

    Decision at node

이제 시간이 지남에 따라 triage_input 노드에서 내린 결정을 시각화할 수 있어요.

더 알아보기 (Learn more)