이 페이지에서

For AI agents: a documentation index is available at /docs/llms.txt. Append .md to any page URL for markdown, or send Accept: text/markdown.

에이전트 분석 택소노미

조기 액세스

이 기능은 Early Access 버전입니다. 다음 기간동안 기능의 일부 측면은 여전히 개발 중일 수 있으며 이 문서가 항상 최신 상태인 것은 아닐 수도 있습니다. 질문이 있으시면 다음으로 문의하십시오: Amplitude Support.

이 페이지는 [Agent]에이전트 분석에서 생성하는 데이터에 대한 참조입니다. 여기에는 모든 이벤트, 보강 이벤트의 속성 및 기본 신호가 포함됩니다. UI에서 이러한 결과를 읽으려면 에이전트 결과 분석으로 이동하십시오. 코드에서 이벤트를 발생시키려면 Agent Analytics SDK로 이동하십시오.

택소노미는 구성이 가능하며 오픈 베타 기간 동안 계속 발전하고 있습니다. 아래 목록을 기본 구조로 간주하고, 실제 이벤트 스트림과 대조하여 라이브 세트를 확인하십시오.

데이터 계층 구조

에이전트 분석은 각 에이전트 상호 작용을 계층 구조로 모델링합니다.

  • 세션: 사용자가 처음부터 끝까지 에이전트에게 전달하는 하나의 작업입니다. Amplitude는 [Agent] Session ID속성으로 세션을 식별합니다. 에이전트 세션은 Amplitude의 표준 분석 세션($session_id)과 다릅니다. 이 세션은 사용자의 앱 또는 웹 방문입니다.
  • Turn: 사용자 메시지, 에이전트의 도구 호출 및 AI 응답과 같은 세션 내의 단일 왕복 교환.
  • 스팬: 도구 호출, 벡터 검색, 순위 재정리, 가드레일과 같은 하위 회전 단계입니다.

모든 사용자 메시지, AI 응답 및 도구 호출은 독립적인 Amplitude 이벤트로 전송되므로 먼저 추적을 분해하지 않고도 퍼널, 코호트 및 리텐션 차트에서 에이전트 데이터를 사용할 수 있습니다.

이벤트 인벤토리

Agent 분석은 이러한 이벤트를 생성합니다. SDK 계측은 직접 SDK 호출을 통해 또는 enable_otel()/enableOtel()가 활성화될 때 OTEL 스팬을 통해 처음 7개를 생성합니다(SDK는 스팬을 이벤트에 자동으로 매핑합니다). 서버 보강 파이프라인은 세션을 닫은 후 나머지를 생성합니다.

SDK 이벤트

사용자의 계측은 에이전트가 실행될 때 이러한 이벤트를 생성합니다. [Agent] AI Response이벤트는 응답별 모델, 공급자, 토큰, 지연 시간 및 비용 속성을 전달합니다.

  • [Agent] User Message: 사용자가 에이전트에게 전송하는 메시지입니다.
  • [Agent] AI Response: 모델, 공급자, 토큰, 지연 시간 및 비용을 포함한 에이전트의 응답입니다.
  • [Agent] Tool Call: 에이전트가 호출하는 함수 또는 도구입니다.
  • [Agent] Embedding: 임베딩 또는 벡터 검색 단계입니다.
  • [Agent] Span: 순위 변경이나 가드레일과 같은 순서 무관 파이프라인 단계입니다.
  • [Agent] Session End: 세션의 끝을 표시합니다.
  • [Agent] Session Enrichment: 개인 정보 보호 모드에서 전송된 사용자 고유의 세션 레이블입니다customer_enriched.

[Agent]를 제외한 모든 SDK 이벤트 속성에는 접두사가 붙습니다[Amplitude] Session Replay ID. 아래 표에는 SDK가 전송하는 속성이 이벤트별로 그룹화되어 나와 있습니다. 선택적 속성은 관련 데이터를 사용할 수 있고 개인 정보 보호 모드에서 이를 허용할 때 채워집니다.

공통 속성

이러한 속성은 전체 SDK 이벤트에 나타날 수 있습니다.

배포 및 OTEL 메타데이터

이러한 선택적 속성은 구성될 때 모든 SDK 이벤트에 나타날 수 있습니다.

[Agent] User Message 속성

공통 속성 외에도.

[Agent] AI Response 속성

공통 속성 외에도.

[Agent] Tool Call 속성

공통 속성 외에도.

[Agent] Embedding 속성

공통 속성 외에도.

[Agent] Span 속성

공통 속성 외에도.

[Agent] Session End 속성

공통 속성에 더해집니다.

[Agent] Session Enrichment 속성

customer_enriched개인정보 보호 모드로 전송되었습니다. 공통 속성에 더해집니다.

[Agent] Score 속성

[Agent] Score 명시적인 사용자 피드백을 전달합니다. 공통 속성에 더해집니다.

이벤트 JSON 예제

이 예제에서는 SDK가 Amplitude에 전송하는 내용을 보여줍니다. 속성 이름과 $llm_message콘텐츠 모양은 SDK를 사용하든 이벤트를 직접 전송하든 관계없이 동일합니다.

json
{
  "event_type": "[Agent] AI Response",
  "user_id": "user-42",
  "event_properties": {
    "[Agent] Session ID": "sess-abc123",
    "[Agent] Trace ID": "trace-def456",
    "[Agent] Turn ID": 2,
    "[Agent] Message ID": "msg-789xyz",
    "[Agent] Model Name": "gpt-4o",
    "[Agent] Provider": "openai",
    "[Agent] Model Tier": "standard",
    "[Agent] Latency Ms": 1203,
    "[Agent] Input Tokens": 150,
    "[Agent] Output Tokens": 847,
    "[Agent] Total Tokens": 997,
    "[Agent] Cost USD": 0.0042,
    "[Agent] Is Error": false,
    "[Agent] Finish Reason": "stop",
    "[Agent] Component Type": "llm",
    "[Agent] Agent ID": "support-bot",
    "[Agent] Env": "production",
    "[Agent] SDK Version": "1.0.0",
    "[Agent] Runtime": "node"
  }
}
json
{
  "event_type": "[Agent] User Message",
  "user_id": "user-42",
  "event_properties": {
    "[Agent] Session ID": "sess-abc123",
    "[Agent] Turn ID": 1,
    "[Agent] Message ID": "msg-123abc",
    "[Agent] Component Type": "user_input",
    "[Agent] Agent ID": "support-bot",
    "[Agent] SDK Version": "1.0.0",
    "[Agent] Runtime": "node",
    "$llm_message": { "text": "How do I reset my password?" }
  }
}
json
{
  "event_type": "[Agent] Tool Call",
  "user_id": "user-42",
  "event_properties": {
    "[Agent] Session ID": "sess-abc123",
    "[Agent] Turn ID": 3,
    "[Agent] Invocation ID": "inv-456def",
    "[Agent] Tool Name": "search_knowledge_base",
    "[Agent] Tool Success": true,
    "[Agent] Is Error": false,
    "[Agent] Latency Ms": 340,
    "[Agent] Component Type": "tool",
    "[Agent] Agent ID": "support-bot",
    "[Agent] SDK Version": "1.0.0",
    "[Agent] Runtime": "node"
  }
}
json
{
  "event_type": "[Agent] Score",
  "user_id": "user-42",
  "event_properties": {
    "[Agent] Score Name": "thumbs-up",
    "[Agent] Score Value": 1,
    "[Agent] Target ID": "msg-789xyz",
    "[Agent] Target Type": "message",
    "[Agent] Evaluation Source": "user",
    "[Agent] Session ID": "sess-abc123",
    "[Agent] Agent ID": "support-bot",
    "[Agent] SDK Version": "1.0.0",
    "[Agent] Runtime": "node"
  }
}

서버 보강 이벤트

세션이 종료되면, 보강 파이프라인이 평가하고 두 개의 이벤트를 이벤트 스트림에 다시 기록합니다.

세션 기록

[Agent] Session Record 세션당 한 번씩 기록됩니다. 세션 롤업, 상시 연결 신호 결과 및 품질 플래그를 전달합니다.

평가자 결과

[Agent] Evaluator Result 평가자마다 세션당 한 번씩 기록됩니다. 이는 모든 서버측 평가(신호 감지기, 주제 분류기, 루브릭 점수기)에 대한 통합 이벤트입니다.

사용자 피드백 점수

[Agent] Score 는 응답에 대해 좋아요와 싫어요 같은 명시적인 사용자 피드백을 기록합니다. 점수는 보강 파이프라인이 아닌 SDK의 score() 방법을 통해 애플리케이션에서 얻습니다. 점수를 보내려면 사용자 피드백(점수) 보내기로 이동하십시오.

신호

신호는 Amplitude가 닫힌 모든 세션에서 기본적으로 항상 실행되는 평가기입니다. 이러한 결과는 [Agent] Evaluator Result이벤트로 기록됩니다. 사용자가 이를 구성하지 않으며, Amplitude는 시간별로 이를 정제하므로 이를 방향성으로 간주합니다.

주제 및 사용자 지정 평가자

기본 신호 외에도 사용자 고유의 주제 모델과 평가자를 정의할 수 있습니다. 보강 택소노미는 완전히 구성이 가능합니다. query_intent및 product_area와 같은 주제 모델 이름과 task_completion와 같은 평가자 이름은 구성에서 가져오며 프로젝트마다 다릅니다. 고유한 평가자를 생성하고 구체화하려면 사용자 정의 평가자 생성 및 구체화로 이동하십시오.

사용되지 않는 이벤트

[Agent] Topic Classification는 사용되지 않습니다. 주제 분류는 이제 출력 유형이 classification인 이벤트로 표시됩니다. [Agent] Evaluator Result루브릭 점수도 출력 유형이[Agent] Score ${ DNT_2 }인 상태로score ${ DNT_0 }에서 [Agent] Evaluator Result${ DNT_1 }(으)로 이동했습니다. [Agent] Score이제 ${ DNT_0 }에는 사용자 피드백만 포함됩니다.

이 내용이 도움이 되었나요?