@@ -414,10 +414,35 @@ fn deploy(
414
414
}
415
415
416
416
#[ pg_extern( strict, name = "predict" ) ]
417
- fn predict ( project_name : & str , features : Vec < f32 > ) -> f32 {
417
+ fn predict_f32 ( project_name : & str , features : Vec < f32 > ) -> f32 {
418
418
predict_model ( Project :: get_deployed_model_id ( project_name) , features)
419
419
}
420
420
421
+ #[ pg_extern( strict, name = "predict" ) ]
422
+ fn predict_f64 ( project_name : & str , features : Vec < f64 > ) -> f32 {
423
+ predict_f32 ( project_name, features. iter ( ) . map ( |& i| i as f32 ) . collect ( ) )
424
+ }
425
+
426
+ #[ pg_extern( strict, name = "predict" ) ]
427
+ fn predict_i16 ( project_name : & str , features : Vec < i16 > ) -> f32 {
428
+ predict_f32 ( project_name, features. iter ( ) . map ( |& i| i as f32 ) . collect ( ) )
429
+ }
430
+
431
+ #[ pg_extern( strict, name = "predict" ) ]
432
+ fn predict_i32 ( project_name : & str , features : Vec < i32 > ) -> f32 {
433
+ predict_f32 ( project_name, features. iter ( ) . map ( |& i| i as f32 ) . collect ( ) )
434
+ }
435
+
436
+ #[ pg_extern( strict, name = "predict" ) ]
437
+ fn predict_i64 ( project_name : & str , features : Vec < i64 > ) -> f32 {
438
+ predict_f32 ( project_name, features. iter ( ) . map ( |& i| i as f32 ) . collect ( ) )
439
+ }
440
+
441
+ #[ pg_extern( strict, name = "predict" ) ]
442
+ fn predict_bool ( project_name : & str , features : Vec < bool > ) -> f32 {
443
+ predict_f32 ( project_name, features. iter ( ) . map ( |& i| i as u8 as f32 ) . collect ( ) )
444
+ }
445
+
421
446
#[ pg_extern( strict, name = "predict_proba" ) ]
422
447
fn predict_proba ( project_name : & str , features : Vec < f32 > ) -> Vec < f32 > {
423
448
predict_model_proba ( Project :: get_deployed_model_id ( project_name) , features)
0 commit comments