이 레퍼런스에서는 W&B Weave의 Call 객체 스키마를 설명합니다. Call를 쿼리하는 방법은 Call 쿼리 및 내보내기를 참조하세요.Documentation Index
Fetch the complete documentation index at: https://wb-21fd5541-docs-2658.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Call 속성
- Python SDK의 클래스: CallSchema.
- TypeScript SDK의 인터페이스: CallSchema.
| 속성 | 유형 | 설명 |
|---|---|---|
id | string (uuid) | Call의 고유 식별자 |
project_id | string (선택) | 연결된 프로젝트 식별자 |
op_name | string | 오퍼레이션 이름(레퍼런스일 수 있음) |
display_name | string (선택) | Call의 사용자 친화적인 이름 |
trace_id | string (uuid) | 이 Call이 속한 트레이스의 식별자 |
parent_id | string (uuid) | 부모 Call의 식별자 |
started_at | datetime | Call이 시작된 타임스탬프 |
attributes | Dict[str, Any] | Call에 대한 사용자 정의 메타데이터 (실행 중에는 읽기 전용) |
inputs | Dict[str, Any] | Call의 입력 파라미터 |
ended_at | datetime (선택) | Call이 종료된 타임스탬프 |
exception | string (선택) | Call이 실패한 경우의 오류 메시지 |
output | Any (선택) | Call의 출력 |
summary | Optional[SummaryMap] | 실행 후 요약 정보입니다. 실행 중에 이 값을 수정하여 커스텀 메트릭을 기록할 수 있습니다. |
wb_user_id | Optional[str] | 연결된 W&B 사용자 ID |
wb_run_id | Optional[str] | 연결된 W&B run ID |
deleted_at | datetime (선택) | 해당하는 경우 Call이 삭제된 타임스탬프 |
속성 세부 정보
CallSchema 속성은 Call을 추적하고 관리하는 데 도움이 됩니다.
id,trace_id,parent_id속성은 시스템 내에서 Call을 정리하고 서로 연관시키는 데 도움이 됩니다.- 시간 정보(
started_at,ended_at)는 성능 분석에 활용됩니다. attributes및inputs속성은 Call의 컨텍스트를 제공합니다.attributes는 Call이 시작되면 고정되므로, 호출 전에weave.attributes()컨텍스트 관리자를 사용하여 설정하세요.output및summary는 출력을 캡처합니다.wb_user_id및wb_run_id를 사용해 Call을 W&B 사용자 및 run에 연결하세요.
Call summary 사용
summary 속성은 Call 실행 중에 값을 쓸 수 있는 딕셔너리입니다. Call이 완료되면 Weave는 사용자가 쓴 값과 자체적으로 계산한 데이터를 깊게 병합(deep merge)하여 결과를 저장합니다.
이 딕셔너리에는 두 개의 영역이 있습니다.
- 맞춤형 키:
call.summary["accuracy"] = 0.95처럼call.summary에 직접 쓰는 모든 항목입니다. 이 값들은 summary dict의 최상위 레벨에 위치합니다. summary["weave"]: Weave가 Call 완료 시 자동으로 채우는 예약 네임스페이스입니다. 이 키에는 직접 쓰지 마세요.
summary["usage"]에도 캡처합니다(모델 이름을 키로 사용). 이는 공급자로부터 그대로 전달된 소스 데이터이며, Weave가 계산한 값이 아닙니다. summary["weave"] 안의 costs 필드는 Weave가 이 사용 데이터와 token 가격을 바탕으로 계산한 값입니다.
summary["weave"] 안의 Weave 계산 필드:
| Field | 설명 |
|---|---|
status | 실행 상태: SUCCESS, ERROR, RUNNING, 또는 DESCENDANT_ERROR입니다(Call은 성공했지만 하위 Call에서 오류가 발생한 경우). |
latency_ms | started_at과 ended_at 사이의 시간(밀리초)입니다. status가 RUNNING이면 null입니다. |
costs | summary["usage"]와 token 가격 데이터를 바탕으로 계산한 모델별 비용 내역입니다. 비용 추적을 참조하세요. |
trace_name | 내부 Op 레퍼런스 URI에서 파싱한 사람이 읽기 쉬운 Op 이름입니다. 표시 및 필터링에 사용됩니다. |
Call 실행 중에 작성하기
summary 딕셔너리를 사용하면 Call 실행 중에 맞춤형 데이터 값을 추가할 수 있습니다.
- Python
- TypeScript
Python에서는
weave.get_current_call()을 사용해 실행 중 어느 시점에서나 call.summary에 값을 부여할 수 있습니다.summary 데이터 조회
getCall로 ID를 사용해 단일 Call을 조회하거나, getCalls로 여러 Call을 조회할 수 있습니다. 두 경우 모두 summary는 동일한 병합된 딕셔너리입니다.
- Python
- TypeScript