메인 콘텐츠로 건너뛰기
이 레퍼런스에서는 W&B Weave의 Call 객체 스키마를 설명합니다. 여기에는 속성, 실행 중 summary 딕셔너리에 맞춤형 데이터를 기록하는 방법, 그리고 Call이 완료된 후 summary 데이터를 조회하는 방법이 포함됩니다. 각 Call에 대해 Weave가 기록하는 데이터를 검사, 필터링하거나 확장해야 할 때 이 페이지를 사용하세요. Call을 쿼리하는 방법에 대한 자세한 내용은 Query and export calls를 참조하세요.

Call 속성

다음 표는 Weave에서 Call의 주요 속성을 보여줍니다. 전체 구현은 다음을 참조하세요:

속성 세부 정보

CallSchema 속성은 Call을 추적하고 관리하는 데 도움이 됩니다.
  • id, trace_id, parent_id 속성은 시스템 내에서 Call을 정리하고 서로 연관시키는 데 도움이 됩니다.
  • 시간 정보(started_at, ended_at)는 성능 분석에 활용됩니다.
  • attributesinputs 속성은 Call의 컨텍스트를 제공합니다. attributes는 Call이 시작되면 고정되므로, 호출 전에 weave.attributes() 컨텍스트 관리자를 사용하여 설정하세요. outputsummary는 출력을 캡처합니다.
  • wb_user_idwb_run_id를 사용해 Call을 W&B 사용자 및 run에 연결하세요.
이러한 속성을 함께 사용하면 프로젝트 전반에서 Call을 세부적으로 추적하고 분석할 수 있습니다.

Call summary 사용

summary 속성을 사용하면 Call에 맞춤형 실행 후 데이터를 추가하여 나중에 Weave의 기본 제공 메트릭과 함께 분석할 수 있습니다. 이 속성은 Call 실행 중에 값을 쓸 수 있는 딕셔너리입니다. Call이 완료되면 Weave는 사용자가 쓴 값과 자체적으로 계산한 데이터를 깊게 병합(deep merge)하여 결과를 저장합니다. 이 딕셔너리에는 두 개의 영역이 있습니다.
  • 맞춤형 키: call.summary["accuracy"] = 0.95처럼 call.summary에 직접 쓰는 모든 항목입니다. 이 값들은 summary dict의 최상위 레벨에 위치합니다.
  • summary["weave"]: Weave가 Call 완료 시 자동으로 채우는 예약 네임스페이스입니다. 이 키에는 직접 쓰지 마세요.
Weave는 모델 응답의 원시 LLM token 수를 summary["usage"]에도 캡처합니다(모델 이름을 키로 사용). 이는 공급자로부터 그대로 전달된 소스 데이터이며, Weave가 계산한 값이 아닙니다. summary["weave"] 안의 costs 필드는 Weave가 이 사용 데이터와 token 가격을 바탕으로 계산한 값입니다. summary["weave"] 안의 Weave 계산 필드:

Call 실행 중에 작성하기

summary 딕셔너리를 사용하면 Call 실행 중에 맞춤형 데이터 값을 추가할 수 있습니다.
Python에서는 weave.get_current_call()을 사용해 실행 중 어느 시점에서나 call.summary에 값을 부여할 수 있습니다.

summary 데이터 조회

getCall로 ID를 사용해 단일 Call을 조회하거나, getCalls로 여러 Call을 조회할 수 있습니다. 두 경우 모두 summary는 동일한 병합된 딕셔너리입니다.