@weave.op으로 데코레이션한 함수 또는 메서드입니다. 기본적으로 Op의 이름은 함수 이름이며, 해당 Op에 연결된 Calls도 동일한 표시 이름을 가집니다.
맞춤형 표시 이름을 사용하면 Weave UI에서 Calls를 더 쉽게 파악할 수 있습니다. 같은 Op의 Calls를 서로 구분하거나, 입력값이나 타임스탬프 같은 동적인 컨텍스트를 보여주거나, Call 이름을 팀의 규칙에 맞출 때 유용합니다.
특정 Op의 모든 Calls에 대한 표시 이름은 여러 가지 방법으로 재정의할 수 있습니다. 필요한 범위에 맞는 방법을 선택하세요. 단일 Call, Op의 모든 Calls, 또는 Op 자체에 적용할 수 있습니다.
- Python
- TypeScript
- Op를 호출할 때 표시 이름을 변경합니다. 다음 예제에서는
__weave딕셔너리를 사용해 Op 표시 이름보다 우선하는 Call 표시 이름을 설정합니다:
- Call별로 표시 이름을 변경합니다. 다음 예제에서는
Op.call메서드를 사용해call객체를 반환한 다음,call.set_display_name을 사용해 표시 이름을 설정합니다:
- 특정 Op의 모든 Calls에 대한 표시 이름을 변경합니다. 다음 예제에서는
@weave.op함수 데코레이터 자체에 새 표시 이름을 설정하여 해당 Op의 모든 Calls에 적용합니다:
call_display_name은 call 객체를 받아 string을 반환하는 함수일 수도 있습니다. 함수가 실행될 때 Weave가 call 객체를 자동으로 전달하므로, 이를 사용해 함수 이름, Call 입력값, 필드 등을 기반으로 이름을 동적으로 생성할 수 있습니다. 이는 각 Call의 이름에 런타임 컨텍스트가 반영되도록 하려는 경우에 유용합니다.일반적인 사용 사례 중 하나는 함수 이름에 Timestamp를 덧붙이는 것입니다..attributes를 사용해 맞춤형 메타데이터를 로깅할 수도 있습니다.-
Op 자체의 표시 이름을 변경합니다. Op와 연결된 Calls는 동일한 표시 이름을 가지므로, Op의 이름을 바꾸는 것이 Op가 생성하는 모든 Call의 이름을 바꾸는 가장 직접적인 방법입니다. Op 자체의 이름을 재정의하면 Call의 표시 이름도 함께 변경됩니다. 다음 두 가지 방법으로 설정할 수 있습니다:
-
Calls를 로깅하기 전에 Op의
name속성을 설정합니다: -
Op 데코레이터에서
name옵션을 설정합니다:
-
Calls를 로깅하기 전에 Op의