summary 딕셔너리에 맞춤형 데이터를 기록하는 방법, Call이 완료된 후 summary 데이터를 조회하는 방법을 다룹니다. Weave가 각 Call에 대해 기록하는 데이터를 검사, 필터링 또는 확장하려면 이 페이지를 참고하세요. Call 쿼리에 대한 자세한 내용은 Call 쿼리 및 내보내기를 참조하세요.
Call 속성
다음 표는 Weave에서 Call의 주요 속성을 정리한 것입니다. 전체 구현은 다음을 참조하세요.- Python SDK의 class: CallSchema
- TypeScript SDK의 Interface: CallSchema
속성 세부 정보
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에 첨부해 두었다가 나중에 Weave의 기본 제공 메트릭과 함께 분석할 수 있습니다. 이 속성은 Call이 실행되는 동안 값을 기록할 수 있는 딕셔너리입니다. Call이 종료되면 Weave는 사용자가 기록한 값을 자체 계산 데이터와 딥 병합(deep-merge)한 뒤 그 결과를 저장합니다.
이 딕셔너리는 두 영역으로 나뉩니다.
- 맞춤형 키:
call.summary["accuracy"] = 0.95처럼call.summary에 직접 기록하는 모든 값입니다. 이 값은 summary 딕셔너리의 최상위 수준에 저장됩니다. summary["weave"]: Call이 완료될 때 Weave가 자동으로 채우는 예약된 namespace입니다. 이 키에는 직접 값을 기록하지 마세요.
summary["usage"]에 캡처합니다(모델 이름별로 키가 지정됨). 이 값은 공급자가 제공한 원본 데이터를 그대로 전달한 것으로, Weave가 계산한 값이 아닙니다. 반면 summary["weave"] 내부의 costs 필드는 Weave가 이 사용 데이터와 토큰 가격을 바탕으로 산출한 값입니다.
summary["weave"] 내부에서 Weave가 계산하는 필드는 다음과 같습니다.
Call 실행 중에 쓰기
summary 딕셔너리를 사용하면 Call 실행 중에 맞춤형 데이터 값을 추가할 수 있습니다.
- Python
- TypeScript
Python에서는
weave.get_current_call()을 사용해 실행 중 언제든지 call.summary에 값을 부여할 수 있습니다.summary 데이터 조회
ID로 단일 Call을 가져오려면getCall을, 여러 Call을 가져오려면 getCalls를 사용하세요. 어느 쪽이든 summary는 동일한 병합 딕셔너리입니다.
- Python
- TypeScript