Skip to main content
본 문서를 읽기 전에 다음 문서를 먼저 읽어보시면 도움이 됩니다:
LangSmith는 내보내기와 가져오기가 쉬운 간단한 형식으로 트레이스 데이터를 저장하고 처리합니다. 이러한 필드 중 다수는 선택 사항이거나 알아야 할 중요도가 낮지만 완전성을 위해 포함되었습니다. 굵게 표시된 필드가 알아두어야 할 가장 중요한 필드입니다.
필드 이름타입설명
idUUIDspan의 고유 식별자입니다.
namestring실행과 연결된 이름입니다.
inputsobject실행에 제공된 입력의 맵 또는 집합입니다.
run_typestring실행 유형입니다(예: “llm”, “chain”, “tool”).
start_timedatetime실행 시작 시간입니다.
end_timedatetime실행 종료 시간입니다.
extraobject실행과 관련된 추가 정보입니다.
errorstring실행 중 오류가 발생한 경우 오류 메시지입니다.
outputsobject실행에 의해 생성된 출력의 맵 또는 집합입니다.
eventsarray of objects실행과 연결된 이벤트 객체 목록입니다. 스트리밍으로 실행된 실행에 관련됩니다.
tagsarray of strings실행과 연결된 태그 또는 레이블입니다.
trace_idUUID실행이 속한 트레이스의 고유 식별자입니다. 이는 트레이스의 루트 실행의 id 필드이기도 합니다.
dotted_orderstring계층적 순서 문자열입니다. 형식: run_start_timeZrun_uuid.child_run_start_timeZchild_run_uuid
statusstring실행 실행의 현재 상태입니다(예: “error”, “pending”, “success”).
child_run_idsarray of UUIDs모든 자식 실행의 ID 목록입니다.
direct_child_run_idsarray of UUIDs이 실행의 직접 자식의 ID 목록입니다.
parent_run_idsarray of UUIDs모든 부모 실행의 ID 목록입니다.
feedback_statsobject이 실행에 대한 피드백 통계의 집계입니다.
reference_example_idUUID실행과 연결된 참조 예제의 ID입니다. 일반적으로 평가 실행에만 존재합니다.
total_tokensinteger실행에 의해 처리된 총 토큰 수입니다.
prompt_tokensinteger실행의 프롬프트에 있는 토큰 수입니다.
completion_tokensinteger실행의 완료에 있는 토큰 수입니다.
total_coststring실행 처리와 관련된 총 비용입니다.
prompt_coststring실행의 프롬프트 부분과 관련된 비용입니다.
completion_coststring실행의 완료와 관련된 비용입니다.
first_token_timedatetime모델 출력의 첫 번째 토큰이 생성된 시간입니다. run_type="llm" 및 스트리밍이 활성화된 실행에만 적용됩니다.
session_idstring실행의 세션 식별자입니다. 트레이싱 프로젝트 ID라고도 합니다.
in_datasetboolean실행이 데이터셋에 포함되어 있는지를 나타냅니다.
parent_run_idUUID부모 실행의 고유 식별자입니다.
execution_order (deprecated)integer트레이스 내에서 이 실행이 실행된 순서입니다.
serializedobject해당되는 경우 실행을 실행하는 객체의 직렬화된 상태입니다.
manifest_id (deprecated)UUIDspan과 연결된 매니페스트의 식별자입니다.
manifest_s3_idUUID매니페스트의 S3 식별자입니다.
inputs_s3_urlsobject입력의 S3 URL입니다.
outputs_s3_urlsobject출력의 S3 URL입니다.
price_model_idUUID실행에 적용된 가격 책정 모델의 식별자입니다.
app_pathstring이 실행의 애플리케이션(UI) 경로입니다.
last_queued_atdatetimespan이 마지막으로 대기열에 추가된 시간입니다.
share_tokenstring실행 데이터에 대한 액세스를 공유하기 위한 토큰입니다.
다음은 위 형식의 실행을 JSON으로 표현한 예시입니다:
{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "string",
  "inputs": {},
  "run_type": "llm",
  "start_time": "2024-04-29T00:49:12.090000",
  "end_time": "2024-04-29T00:49:12.459000",
  "extra": {},
  "error": "string",
  "execution_order": 1,
  "serialized": {},
  "outputs": {},
  "parent_run_id": "f8faf8c1-9778-49a4-9004-628cdb0047e5",
  "manifest_id": "82825e8e-31fc-47d5-83ce-cd926068341e",
  "manifest_s3_id": "0454f93b-7eb6-4b9d-a203-f1261e686840",
  "events": [{}],
  "tags": ["foo"],
  "inputs_s3_urls": {},
  "outputs_s3_urls": {},
  "trace_id": "df570c03-5a03-4cea-8df0-c162d05127ac",
  "dotted_order": "20240429T004912090000Z497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "status": "string",
  "child_run_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
  "direct_child_run_ids": ["497f6eca-6276-4993-bfeb-53cbbbba6f08"],
  "parent_run_ids": ["f8faf8c1-9778-49a4-9004-628cdb0047e5"],
  "feedback_stats": {
    "correctness": {
      "n": 1,
      "avg": 1.0
    }
  },
  "reference_example_id": "9fb06aaa-105f-4c87-845f-47d62ffd7ee6",
  "total_tokens": 0,
  "prompt_tokens": 0,
  "completion_tokens": 0,
  "total_cost": "string",
  "prompt_cost": "string",
  "completion_cost": "string",
  "price_model_id": "0b5d9575-bec3-4256-b43a-05893b8b8440",
  "first_token_time": null,
  "session_id": "1ffd059c-17ea-40a8-8aef-70fd0307db82",
  "app_path": "string",
  "last_queued_at": null,
  "in_dataset": true,
  "share_token": "d0430ac3-04a1-4e32-a7ea-57776ad22c1c"
}

dotted_order란 무엇인가요?

실행의 dotted order는 트레이싱 계층 구조 내에서 해당 위치를 완전히 지정하는 정렬 가능한 키입니다. 다음 예시를 살펴보겠습니다:
import langsmith as ls

@ls.traceable
def grandchild():
    p("grandchild")

@ls.traceable
def child():
    grandchild()

@ls.traceable
def parent():
    child()
각 단계에서 ID를 출력하면 다음과 같은 결과를 얻을 수 있습니다:
parent	run_id=0e01bf50-474d-4536-810f-67d3ee7ea3e7	trace_id=0e01bf50-474d-4536-810f-67d3ee7ea3e7  parent_run_id=null	dotted_order=20240919T171648521691Z0e01bf50-474d-4536-810f-67d3ee7ea3e7
child	run_id=a8024e23-5b82-47fd-970e-f6a5ba3f5097	trace_id=0e01bf50-474d-4536-810f-67d3ee7ea3e7  parent_run_id=0e01bf50-474d-4536-810f-67d3ee7ea3e7	dotted_order=20240919T171648521691Z0e01bf50-474d-4536-810f-67d3ee7ea3e7.20240919T171648523407Za8024e23-5b82-47fd-970e-f6a5ba3f5097
grandchild	run_id=0ec6b845-18b9-4aa1-8f1b-6ba3f9fdefd6	trace_id=0e01bf50-474d-4536-810f-67d3ee7ea3e7  parent_run_id=a8024e23-5b82-47fd-970e-f6a5ba3f5097	dotted_order=20240919T171648521691Z0e01bf50-474d-4536-810f-67d3ee7ea3e7.20240919T171648523407Za8024e23-5b82-47fd-970e-f6a5ba3f5097.20240919T171648523563Z0ec6b845-18b9-4aa1-8f1b-6ba3f9fdefd6
몇 가지 불변 조건을 참고하세요:
  • “id”는 dotted order의 마지막 36자(마지막 “Z” 뒤의 접미사)와 같습니다. grandchild의 0ec6b845-18b9-4aa1-8f1b-6ba3f9fdefd6를 예로 들 수 있습니다.
  • “trace_id”는 dotted order의 첫 번째 UUID와 같습니다(즉, dotted_order.split('.')[0].split('Z')[1]).
  • “parent_run_id”가 존재하는 경우, 이는 dotted order의 끝에서 두 번째 UUID입니다. grandchild의 a8024e23-5b82-47fd-970e-f6a5ba3f5097을 예로 들 수 있습니다.
  • dotted_order를 점으로 분할하면 각 세그먼트는 <run_start_time>Z<run_id> 형식으로 구성됩니다.

Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.
I