artifact가 곧 계약
Deployable 한 게 모델이 아냐. preprocessing + 모델 전체 pipeline이 단일 artifact로 저장된 거. 디시플린은 fresh 환경에서 artifact load하고 raw row에 predict를 추가 glue 없이 돌리는 거. 안 되면 pipeline은 진짜 artifact 아직 아냐.
안에 뭐가 들어가나
- Fitted Pipeline (preprocessing + 모델).
- 예상 input column 이름과 dtype 리스트.
- 모델 version, training timestamp, code commit, dataset hash.
- (classification이면) 선택된 threshold와 training 시점 metric 값.
format 선택
joblib이 sklearn default. onnx가 non-Python runtime에서 serving 위한 cross-language option. boosting library엔 native format으로도 save(model.save_model('booster.json'))해서 unpickle 없이 나중에 split inspect 가능.