모델 상태 모니터 평가를 구성하여 모델 동작 및 성능을 이해하는 데 도움을 받을 수 있습니다. 모델 상태 메트릭을 사용하여 모델 배치가 트랜잭션을 얼마나 효율적으로 처리하는지 판별할 수 있습니다.
모델 상태 평가가 활성화되면 데이터 마트에 모델 상태 데이터 세트가 생성됩니다. 모델 상태 데이터 세트에는 모델 상태 지표를 계산하는 데 사용되는 채점 요청에 대한 세부 정보가 저장됩니다.
모델 상태 모니터 평가를 구성하기 위해 다음 예제에 표시된 대로 각 메트릭에 대한 임계값을 설정할 수 있습니다.
사전 프로덕션 배포에는 모델 상태 평가가 지원되지 않습니다.
지원되는 모델 상태 메트릭
모델 상태 평가에 대해 지원되는 메트릭 범주는 다음과 같습니다. 각 카테고리에는 모델 성능에 대한 세부사항을 제공하는 메트릭이 포함되어 있습니다.
페이로드 크기
모델 배포가 점수 요청에 걸쳐 처리하는 트랜잭션 레코드의 총, 평균, 최소, 최대 및 중간 페이로드 크기가 킬로바이트(KB) 단위로 계산됩니다. 이미지 모델에 대한 페이로드 크기 메트릭은 지원되지 않습니다.
레코드
모델 상태 평가 중에 채점 요청에서 처리된 총, 평균, 최소, 최대 및 중앙값의 거래 레코드 수가 계산됩니다.
스코어링 요청
모델 상태 평가 중에 모델 배포가 받는 점수 요청의 수가 계산됩니다.
처리량 및 대기 시간
지연 시간은 채점 요청 및 트랜잭션 레코드를 처리하는 데 걸리는 시간을 밀리초(ms)당 추적하여 계산합니다. 처리량은 초당 처리되는 스코어링 요청 및 트랜잭션 레코드의 수를 추적하여 계산됩니다.
처리량과 지연 시간을 계산하기 위해 채점 요청의 response_time
값을 사용하여 모델 배포가 채점 요청을 처리하는 데 걸리는 시간을 추적합니다.
watsonx.ai 런타임 배포의 경우, 평가를 구성할 때 ' response_time
값이 자동으로 감지됩니다.
외부 및 사용자 지정 배포의 경우 Python SDK의 다음 예시와 같이 처리량 및 지연 시간을 계산하기 위해 스코어링 요청을 보낼 때 ' response_time
값을 지정해야 합니다:
from ibm_watson_openscale.supporting_classes.payload_record import PayloadRecord
client.data_sets.store_records(
data_set_id=payload_data_set_id,
request_body=[
PayloadRecord(
scoring_id=<uuid>,
request=openscale_input,
response=openscale_output,
response_time=<response_time>,
user_id=<user_id>)
]
)
다음 메트릭은 평가 중 처리량과 지연 시간을 측정하기 위해 계산됩니다:
- API 대기 시간: 모델 배치에서 스코어링 요청을 처리하는 데 걸리는 시간 (ms) 입니다.
- API 처리량: 모델 배치에서 처리한 스코어링 요청 수 (초당) 입니다.
- 레코드 대기 시간: 모델 배치에서 레코드를 처리하는 데 걸리는 시간 (ms)
- 레코드 처리량: 초당 모델 배치에서 처리한 레코드 수
채점 요청 및 트랜잭션 레코드의 평균, 최대, 중앙값, 최소 처리량과 지연 시간이 계산됩니다.
사용자
모델 배포에 채점 요청을 보내는 사용자 수가 계산됩니다.
사용자 수를 계산하기 위해 채점 요청에서 user_id
사용하여 모델이 수신하는 채점 요청을 보내는 사용자를 식별합니다.
watsonx.ai 런타임 배포의 경우, 평가를 구성할 때 ' user_id
값이 자동으로 감지됩니다.
외부 및 사용자 지정 배포의 경우, Python SDK의 다음 예시와 같이 사용자 수를 계산하기 위해 채점 요청을 보낼 때 ' user_id
값을 지정해야 합니다:
from ibm_watson_openscale.supporting_classes.payload_record import PayloadRecord
client.data_sets.store_records(
data_set_id=payload_data_set_id,
request_body=[
PayloadRecord(
scoring_id=<uuid>,
request=openscale_input,
response=openscale_output,
response_time=<response_time>,
user_id=<user_id>). --> value to be supplied by user
]
)
사용자 지표 결과를 볼 때 실시간 보기를 사용하면 총 사용자 수를, 집계 보기를 사용하면 평균 사용자 수를 확인할 수 있습니다. 자세한 정보는 모델 상태 결과 검토를 참조하십시오.