serving_fn
требует, чтобы функции были tensor
.
См. Ниже образец:
def serving_fn():
day_of_month = tf.Variable([], dtype=tf.int64, name='DAY_OF_MONTH')
day_of_week = tf.Variable([], dtype=tf.int64, name='DAY_OF_WEEK')
tail_num = tf.Variable([], dtype=tf.string,name='TAIL_NUM')
op_carrier_fl_num = tf.Variable([], dtype=tf.int64, name='OP_CARRIER_FL_NUM')
origin_airport_id = tf.Variable([], dtype=tf.int64, name='ORIGIN_AIRPORT_ID')
dest_airport_id = tf.Variable([], dtype=tf.int64, name='DEST_AIRPORT_ID')
dep_time_blk = tf.Variable([], dtype=tf.string,name='DEP_TIME_BLK')
reqd_inputs = {'DAY_OF_MONTH':day_of_month,
'DAY_OF_WEEK':day_of_week,
'TAIL_NUM':tail_num,
'OP_CARRIER_FL_NUM':op_carrier_fl_num,
'ORIGIN_AIRPORT_ID':origin_airport_id,
'DEST_AIRPORT_ID':dest_airport_id,
'DEP_TIME_BLK':dep_time_blk}
fn = tf.estimator.export.build_raw_serving_input_receiver_fn(reqd_inputs)
return fn
Исходя из ваших функций и типа данных, вам необходимо преобразовать их с соответствующими тензорами.
Если это поможет, вышеупомянутый образец доступен в виде записной книжки Kaggle по адресу: https://www.kaggle.com/jintolonappan/gbm-tf2-boostedtreesclassifier-export-to-serve