diff --git a/examples/estimator_serving/feat_index_dict.json b/examples/estimator_serving/feat_index_dict.json new file mode 100644 index 00000000..1f4ea8f5 --- /dev/null +++ b/examples/estimator_serving/feat_index_dict.json @@ -0,0 +1 @@ +{"C1": {"05db9164": 0, "09ca0b81": 1, "0e78bd46": 2, "17f69355": 3, "241546e0": 4, "2d4ea12b": 5, "39af2607": 6, "3b65d647": 7, "52f1e825": 8, "5a9ed9b0": 9, "5bfa8ab5": 10, "68fd1e64": 11, "75ac2fe6": 12, "7e5c2ff4": 13, "87552397": 14, "87773c45": 15, "8cf07265": 16, "98237733": 17, "9a89b36c": 18, "ae82ea21": 19, "be30ca83": 20, "be589b51": 21, "da4eff0f": 22, "de4dac42": 23, "f434fac1": 24, "f473b8dc": 25, "fc9c62bb": 26}, "C2": {"0468d672": 0, "04e09220": 1, "06174070": 2, "064c8f31": 3, "08d6d899": 4, "09e68b86": 5, "0a519c5c": 6, "0aadb108": 7, "0b8e9caf": 8, "0c0567c2": 9, "1cfdf714": 10, "207b2d81": 11, "26ece8a8": 12, "287130e0": 13, "2a69d406": 14, "2ae0a573": 15, "2c8c5f5d": 16, "2eb7b10e": 17, "38a947a1": 18, "38d50e09": 19, "39dfaa0d": 20, "3df44d94": 21, "3e4b7926": 22, "403ea497": 23, "404660bb": 24, "40ed0c67": 25, "421b43cd": 26, "4322636e": 27, "46bbf321": 28, "4c2bc594": 29, "4f25e98b": 30, "512fdf0c": 31, "537e899b": 32, "558b4efb": 33, "55e0a784": 34, "58e67aaf": 35, "5dac953d": 36, "62e9e9bf": 37, "6887a43c": 38, "68b3edbf": 39, "6e638bbc": 40, "6f609dc9": 41, "71ca0a25": 42, "73b37f46": 43, "78ccd99e": 44, "8084ee93": 45, "80e26c9b": 46, "84b4e42f": 47, "876465ad": 48, "8947f767": 49, "89ddfee8": 50, "8ab240be": 51, "8b0005b7": 52, "8db5bc37": 53, "8f5b4275": 54, "90081f33": 55, "942f9a8d": 56, "95e2d337": 57, "9819deea": 58, "9a82ab91": 59, "9b25e48b": 60, "a0e12995": 61, "a5b69ae3": 62, "a8da270e": 63, "aa8fcc21": 64, "ae46a29d": 65, "b0d4a6f6": 66, "b26462db": 67, "b46aceb6": 68, "b7ca2abd": 69, "c41a84c8": 70, "c44e8a72": 71, "c5c1d6ae": 72, "c5e4f7c9": 73, "c5fe64d9": 74, "d4bd9877": 75, "d57c0709": 76, "d7988e72": 77, "d833535f": 78, "d8fc04df": 79, "d97d4ce8": 80, "dde11b16": 81, "e112a9de": 82, "e3a0dc66": 83, "e5fb1af3": 84, "e77e5e6e": 85, "e9b8a266": 86, "ea3a5818": 87, "ed7b1c58": 88, "ef69887a": 89, "efb7db0e": 90, "f0cf0024": 91}, "C3": {"-1": 0, "00d3cdb7": 1, "01a0648b": 2, "01ac13ea": 3, "022a0b3c": 4, "0271c22e": 5, "027b4cc5": 6, "02cf9876": 7, "03689820": 8, "0739daa8": 9, "0b2640f7": 10, "0b793d71": 11, "0c7bb149": 12, "0d15d9b5": 13, "0d71b822": 14, "0f09a700": 15, "104c93d5": 16, "10ee5afb": 17, "13193952": 18, "13cd0697": 19, "145f2f75": 20, "15363e12": 21, "1678e0d8": 22, "1b5e2c32": 23, "20fb5e45": 24, "223b0e16": 25, "2273663d": 26, "25111132": 27, "29dbbee7": 28, "2b280564": 29, "2ba709bb": 30, "2cbec47f": 31, "2d8004c4": 32, "33ebdbb6": 33, "374195a1": 34, "378112d3": 35, "38610f2f": 36, "3a3d6eeb": 37, "3cb0ff62": 38, "3f55fb72": 39, "3f7f3d24": 40, "3f850fa0": 41, "3fea0364": 42, "40361716": 43, "4255f8fd": 44, "4470baf4": 45, "44e7b8ec": 46, "45f68c2a": 47, "4993b2b2": 48, "4e1c9eda": 49, "5037b88e": 50, "50a6bc33": 51, "5492524f": 52, "55f298ba": 53, "57231f4a": 54, "58ca7e87": 55, "598b72ce": 56, "5b54e5b4": 57, "5be9b239": 58, "5d076085": 59, "5d0ec1e8": 60, "5e25fa67": 61, "5f8d9359": 62, "60c37737": 63, "619e87b2": 64, "61b8caf0": 65, "628b07b0": 66, "62acd884": 67, "6392b1c1": 68, "6813d33b": 69, "6858baef": 70, "695a85e0": 71, "69b028e3": 72, "6bbe880c": 73, "6d1384bc": 74, "6ef2aa66": 75, "700014ea": 76, "70168f62": 77, "7442ec70": 78, "761d2b40": 79, "770451b6": 80, "771a1642": 81, "77f2f2e5": 82, "79bdb97a": 83, "7e1ad1fe": 84, "7e4ea1b2": 85, "7edab412": 86, "7ee60f5f": 87, "7fd859b3": 88, "8018e37d": 89, "840eeb3a": 90, "8530c58f": 91, "88290645": 92, "8b14bdd6": 93, "8b376137": 94, "909286bb": 95, "9143c832": 96, "948ee031": 97, "95e13fd4": 98, "97d1681e": 99, "98351ee6": 100, "98bb788f": 101, "99815367": 102, "9b792af9": 103, "9b953c56": 104, "9d427ddf": 105, "9dd3c4fc": 106, "9dfde63d": 107, "9ea04474": 108, "a17519ab": 109, "a2b48926": 110, "a3829614": 111, "a55127b0": 112, "a68b0bcf": 113, "aa8c1539": 114, "ac203f6f": 115, "acbabfa5": 116, "ad4b77ff": 117, "af21d90e": 118, "af5655e7": 119, "b009d929": 120, "b00d1501": 121, "b063fe4e": 122, "b0874fd0": 123, "b1b6f323": 124, "b1ecc6c4": 125, "b264d69e": 126, "b2de8002": 127, "b3693f43": 128, "b3ee24fe": 129, "b87cffc0": 130, "ba1947d0": 131, "bd4d1b8d": 132, "be0a348d": 133, "be3b6a18": 134, "bf05882d": 135, "bf30cf68": 136, "c23785fe": 137, "c5d94b65": 138, "c6616b04": 139, "c725873a": 140, "c798ded6": 141, "c8b80f97": 142, "cce54c2c": 143, "cd82408a": 144, "cedcacac": 145, "d032c263": 146, "d125aecd": 147, "d1ffd05c": 148, "d627c43e": 149, "da3ad2bd": 150, "da89f77a": 151, "dad8b3db": 152, "db151f8b": 153, "dd8e6407": 154, "e007dfac": 155, "e346a5fd": 156, "ea997bbe": 157, "eb08d440": 158, "f1397040": 159, "f153af65": 160, "f1a544c6": 161, "f25edca2": 162, "f5cdf14a": 163, "f652979e": 164, "f86649de": 165, "fc1cad4b": 166, "fc25ffd0": 167, "fcae8bfa": 168, "fd22e418": 169, "fda0b584": 170, "fdd14ae2": 171}, "C4": {"-1": 0, "003ceb8c": 1, "0676a23d": 2, "06b1cf6e": 3, "09003f7b": 4, "097de257": 5, "13508380": 6, "15c721d8": 7, "187dc42d": 8, "19ae4fbd": 9, "1d29846e": 10, "1de19bc2": 11, "20af9140": 12, "21817e80": 13, "22504558": 14, "252734c9": 15, "2628b8d6": 16, "270b5720": 17, "28d2973d": 18, "29998ed1": 19, "2b0aadf8": 20, "2e946ee2": 21, "311f127a": 22, "32a55192": 23, "335e428a": 24, "352cefe6": 25, "36375a46": 26, "37ee624b": 27, "38aca36b": 28, "39547932": 29, "39cc9792": 30, "3b989466": 31, "3beb8147": 32, "3bf2df8b": 33, "3c7eb23c": 34, "3db5e097": 35, "3e2bfbda": 36, "3f647607": 37, "3fb81b62": 38, "40ed41e5": 39, "418ae7fb": 40, "46ec0a38": 41, "49c94103": 42, "4b972461": 43, "4badfc0c": 44, "4e1c036b": 45, "4eadb673": 46, "4fbef8bb": 47, "560f248f": 48, "585ab217": 49, "5b392af8": 50, "5cc8f91d": 51, "5de245c7": 52, "5dff9b29": 53, "5ef5cf67": 54, "5f379ae0": 55, "62169fb6": 56, "631a0f79": 57, "657dc3b9": 58, "67dd8a70": 59, "684abf7b": 60, "6e8c7c0e": 61, "6f5d5092": 62, "72bea89f": 63, "74ce146b": 64, "7501d94a": 65, "759c4a2e": 66, "771966f0": 67, "7736c782": 68, "77b99936": 69, "7967fcf5": 70, "7be07df9": 71, "7be47200": 72, "811ce8e8": 73, "813cb08c": 74, "82a61820": 75, "85dd697c": 76, "862b5ba0": 77, "8a2b280f": 78, "8a77aa30": 79, "8b7d76a3": 80, "8c8a4c47": 81, "8eb89744": 82, "90044821": 83, "90b69619": 84, "91e6318a": 85, "991a22ae": 86, "9ab05b8f": 87, "9affccc2": 88, "9b17f367": 89, "9c32fadc": 90, "9c65ce26": 91, "9c6d05a0": 92, "9c9a6068": 93, "9dde01fd": 94, "9df780c1": 95, "9e3f04df": 96, "a09fab49": 97, "a1e6a194": 98, "a35517fb": 99, "a95c56ca": 100, "aafb54fa": 101, "abfc27b2": 102, "ace52998": 103, "ad5ffc6b": 104, "ae59cd56": 105, "b0ed6de7": 106, "b63c0277": 107, "b696e406": 108, "b7ab56a2": 109, "bb8645c3": 110, "bc17b20f": 111, "bd6ffe0f": 112, "bdbe850d": 113, "be4cb064": 114, "bebc14b3": 115, "bfe24cb7": 116, "c18be181": 117, "c194aaab": 118, "c38a1d7d": 119, "c5699aad": 120, "c7043c4b": 121, "ca55061c": 122, "caa16f04": 123, "ce831e6d": 124, "cfc23926": 125, "d0189e5a": 126, "d13862c2": 127, "d16679b9": 128, "d4125c6f": 129, "d502349a": 130, "d6b6e0bf": 131, "d8660950": 132, "db4eb846": 133, "db781543": 134, "dc0a11c7": 135, "dd47ba3b": 136, "e0a2ecca": 137, "e0e934af": 138, "e63708e9": 139, "e6996139": 140, "eabe170f": 141, "eb45e6e4": 142, "f1b645fc": 143, "f1d06e8a": 144, "f2159098": 145, "f56b7dd5": 146, "f56f6045": 147, "f6dbd8fb": 148, "f7263320": 149, "f888df5a": 150, "f922efad": 151, "f9a7e394": 152, "f9e8a6fb": 153, "feb6eb1a": 154, "ffacf4e8": 155, "ffe40d5f": 156}, "C5": {"0942e0a7": 0, "25c83c98": 1, "307e775a": 2, "30903e74": 3, "384874ce": 4, "43b19349": 5, "4cf72387": 6, "4ea20c7d": 7, "5a3e1872": 8, "a9411994": 9, "b0530c50": 10, "db679829": 11}, "C6": {"-1": 0, "13718bbd": 1, "3bf701e7": 2, "6f6d9be8": 3, "7e0ccccf": 4, "fbad5c96": 5, "fe6b92e5": 6}, "C7": {"00dd27a6": 0, "01620311": 1, "02914429": 2, "04277bf9": 3, "0492c809": 4, "07d75b52": 5, "0bdc3959": 6, "0c41b6a1": 7, "0d00feb3": 8, "0d15142a": 9, "0d339a25": 10, "1171550e": 11, "122c542a": 12, "124131fa": 13, "133643ef": 14, "14ba4967": 15, "15ce37bc": 16, "16401b7d": 17, "17c22666": 18, "17cdc396": 19, "19672560": 20, "1971812a": 21, "197b4575": 22, "19d92932": 23, "1c63b114": 24, "1c86e0eb": 25, "21c0ea1a": 26, "24c48926": 27, "2555b4d9": 28, "26817995": 29, "271190b7": 30, "2773eaab": 31, "295cc387": 32, "2a37bb01": 33, "2aef1419": 34, "2b3ce8b7": 35, "2be44e4e": 36, "2e62d414": 37, "2e8a689b": 38, "315c76f3": 39, "32da4b59": 40, "33b15f2c": 41, "33cca6fa": 42, "34cbc0af": 43, "368f84ee": 44, "36b796aa": 45, "372a0c4c": 46, "38eb9cf4": 47, "3a7402e7": 48, "3babeb61": 49, "3baecfcb": 50, "3d63f4e6": 51, "3f4ec687": 52, "412cb2ce": 53, "4157815a": 54, "41e1828d": 55, "468a0854": 56, "47aa6d2e": 57, "49b74ebc": 58, "4a6c02fb": 59, "4aa938fc": 60, "4d9d55ae": 61, "4f900c22": 62, "4fb73f5f": 63, "50a5390e": 64, "53e14bd5": 65, "53ef84c0": 66, "555d7949": 67, "559eb1e1": 68, "55fc227e": 69, "5a103f30": 70, "5aef82b1": 71, "5b18f3d9": 72, "5d7d417f": 73, "5e4f7d2b": 74, "6005554a": 75, "60d4eb86": 76, "61beb1aa": 77, "622305e6": 78, "63b7fcf7": 79, "65c53f25": 80, "675e81f6": 81, "67b7679f": 82, "6978304f": 83, "6a858837": 84, "6ad82e7a": 85, "6b406125": 86, "6c338953": 87, "6cdb3998": 88, "6d51a5b0": 89, "6da2fbd6": 90, "71c23d74": 91, "71ccc25b": 92, "7227c706": 93, "73e2fc5e": 94, "788ff59f": 95, "7925e09b": 96, "7f2c5a6e": 97, "81bb0302": 98, "82cfb145": 99, "82f666b6": 100, "84c427f0": 101, "85e1a170": 102, "863329da": 103, "86651165": 104, "86b374da": 105, "877d7f71": 106, "879ccac6": 107, "88002ee1": 108, "88afd773": 109, "8a850658": 110, "8f572b5e": 111, "8f801a1a": 112, "91282309": 113, "92ce5a7d": 114, "95402f9a": 115, "963d99df": 116, "968a6688": 117, "9b98e9fc": 118, "9d8d7034": 119, "9e8dab66": 120, "9ec884dc": 121, "9ff9bbde": 122, "a1eeac3d": 123, "a2f7459e": 124, "a5a83bdd": 125, "a6624a99": 126, "a7565058": 127, "a90a99c5": 128, "aafae983": 129, "ad82323c": 130, "adbcc874": 131, "ade953a9": 132, "ae1dfa39": 133, "afa309bd": 134, "b00f5963": 135, "b01d50d5": 136, "b28fa88b": 137, "b3a5258d": 138, "b647358a": 139, "b72ec13d": 140, "b87f4a4a": 141, "bc324536": 142, "bf115338": 143, "c1e20400": 144, "c642e324": 145, "c78204a1": 146, "c96de117": 147, "ca4fd8f8": 148, "cd846c62": 149, "cd98cc3d": 150, "cdc0ad95": 151, "d01ba955": 152, "d0519bab": 153, "d18f8f99": 154, "d2bfca2c": 155, "d385ea68": 156, "d55d70ca": 157, "d7f3ff9f": 158, "d9aa9d97": 159, "d9f4e70f": 160, "dc7659bd": 161, "dcab49d9": 162, "df5c2d18": 163, "e14874c9": 164, "e24d7cb8": 165, "e2de05d6": 166, "e2ec9176": 167, "e3b8f237": 168, "e465eb54": 169, "e746fe19": 170, "e7698644": 171, "e807f153": 172, "ead731f4": 173, "ec1a1856": 174, "ed0714a0": 175, "f14f1abf": 176, "f33e4fa1": 177, "f74ed3c0": 178, "f819e175": 179, "fcf0132a": 180, "fe4dce68": 181, "ff08f605": 182}, "C8": {"062b5529": 0, "0b153874": 1, "1f89b562": 2, "25239412": 3, "37e4aa92": 4, "51d76abe": 5, "56563555": 6, "5b392875": 7, "64523cfa": 8, "66f29b89": 9, "7b6fecd5": 10, "966033bc": 11, "985e3fcb": 12, "a61cc0ef": 13, "a6d156f4": 14, "c8ddd494": 15, "d7c4a8f5": 16, "e8663cb1": 17, "f0e5818a": 18}, "C9": {"7cc72ec2": 0, "a73ee510": 1}, "C10": {"00f2b452": 0, "012f45e7": 1, "03e48276": 2, "0466803a": 3, "07c7b3f7": 4, "0e9ead52": 5, "0eca1729": 6, "0f6ee8ce": 7, "12bb8262": 8, "13ba96b0": 9, "15fa156b": 10, "1722d4c8": 11, "18e09007": 12, "19feb952": 13, "1a428761": 14, "1ce1e29d": 15, "1d56e466": 16, "22a99f9d": 17, "23724df8": 18, "23de5a4a": 19, "2462946f": 20, "25e9e422": 21, "267caf03": 22, "27f4bf82": 23, "2a47dab8": 24, "2bf8bed1": 25, "2e48a61d": 26, "3094253e": 27, "34dd9626": 28, "39046df2": 29, "3b08e48b": 30, "451bd4e4": 31, "47e01053": 32, "493b74f2": 33, "49d1ad89": 34, "49d5fa15": 35, "4b415bb3": 36, "4b8a7639": 37, "4c89c3af": 38, "4e979b5e": 39, "4ea0d483": 40, "4f1c6ae7": 41, "50c56209": 42, "5162b19c": 43, "51e04895": 44, "534fc986": 45, "567ba666": 46, "56c80038": 47, "56ef22e9": 48, "575cd9b2": 49, "5a01afad": 50, "5ba575e7": 51, "5ea6fa93": 52, "5fcee6b1": 53, "631ddef6": 54, "64145819": 55, "66c281d9": 56, "67eea4ef": 57, "6c47047a": 58, "6f07d986": 59, "6f0b6a04": 60, "75d852fc": 61, "78d5c363": 62, "78ed0c4d": 63, "7cda6c86": 64, "7fdb06fe": 65, "801e8634": 66, "8627508e": 67, "897188be": 68, "8a99abc1": 69, "8b7e0638": 70, "8c8662e4": 71, "8f48ce11": 72, "903f1f14": 73, "94e68c1d": 74, "97d3ddaa": 75, "98bd7a24": 76, "98d5faa2": 77, "995c2a7f": 78, "9b8e7680": 79, "9ca0fba4": 80, "9d4b7dce": 81, "9ffc445a": 82, "a08eee5a": 83, "a1ee64a6": 84, "a5270a71": 85, "a8d1ae09": 86, "aa6da1ef": 87, "aa91245c": 88, "ab9456b4": 89, "ab9e9acf": 90, "ac473633": 91, "ac82cac0": 92, "acce978c": 93, "aed3d80e": 94, "aed8755c": 95, "afa26c81": 96, "afc4d756": 97, "b0c25211": 98, "b1442b2a": 99, "b173a655": 100, "b1aa986c": 101, "b393caa5": 102, "b3d657b8": 103, "b6900243": 104, "bac95df6": 105, "bdfd8a02": 106, "c5fe5cb9": 107, "c6c8dd7c": 108, "c9ac91cb": 109, "cf500eab": 110, "cfa407de": 111, "d9b71390": 112, "da272362": 113, "dc790dda": 114, "dcbc7c2b": 115, "e5330e23": 116, "e6003298": 117, "e70742b0": 118, "e851ff7b": 119, "e89812b3": 120, "e8e8c8ac": 121, "e8f7c7e8": 122, "ec4d75ea": 123, "efea433b": 124, "eff5602f": 125, "f0c8b1be": 126, "f1311559": 127, "f1b39deb": 128, "f3b83678": 129, "f6540b40": 130, "f6c6d9f8": 131, "f6f942d1": 132, "f710483a": 133, "f8f0e86f": 134, "f9065d00": 135, "f918493f": 136, "fb999b75": 137, "fbbf2c95": 138, "fbc2dc95": 139, "ff4776d6": 140, "ff5a1549": 141}, "C11": {"010265ac": 0, "01a88896": 1, "031ba22d": 2, "03458ded": 3, "06474f17": 4, "07678d3e": 5, "0ad37b4b": 6, "0bc63bd0": 7, "0cb221d0": 8, "0e4ebdac": 9, "0ec1e215": 10, "1054ae5c": 11, "159499d1": 12, "15eced00": 13, "16faa766": 14, "1aa6cf31": 15, "1cba690a": 16, "20ec800a": 17, "258875ea": 18, "2591ca7a": 19, "25f4f871": 20, "26a64614": 21, "278636c9": 22, "29473fc8": 23, "29e4ad33": 24, "2bcfb78f": 25, "2d9eed4d": 26, "2e15139e": 27, "2e9d5aa6": 28, "30b2a438": 29, "319687c9": 30, "3547565f": 31, "364e8b48": 32, "38914a66": 33, "39dd23e7": 34, "3f31bb3e": 35, "41516dc9": 36, "419d31d4": 37, "41b3f655": 38, "434d6c13": 39, "4352b29b": 40, "46031dab": 41, "4a77ddca": 42, "4ba74619": 43, "4e46b019": 44, "51ef0313": 45, "52d28861": 46, "5307d8e2": 47, "55065437": 48, "553ebda3": 49, "565788d0": 50, "5874c9c9": 51, "5b906b78": 52, "5bd8a4ae": 53, "5cab60cb": 54, "5f5e6091": 55, "606866a9": 56, "60a1c175": 57, "6153cf57": 58, "61af8052": 59, "61ba19ac": 60, "636405ac": 61, "640d8b63": 62, "643327e3": 63, "67841877": 64, "68357db6": 65, "6939835e": 66, "69926409": 67, "69afd526": 68, "6a447eb3": 69, "6c27619d": 70, "6dc69f41": 71, "6e647667": 72, "6fc6ad29": 73, "7056d78a": 74, "720446f5": 75, "7373475d": 76, "755e4a50": 77, "77212bd7": 78, "779482a8": 79, "78f92234": 80, "7940fc2a": 81, "7b5deffb": 82, "7bbe6c06": 83, "7c4f062c": 84, "7ca25fd2": 85, "7d5ece85": 86, "7d756b25": 87, "7e2c5c15": 88, "7e40f08a": 89, "7f8ffe57": 90, "7fee217f": 91, "81a23494": 92, "82af9502": 93, "8487a168": 94, "84bc66d0": 95, "88196a93": 96, "88731e13": 97, "8b92652b": 98, "91875c79": 99, "91e8fc27": 100, "922bbb91": 101, "9625b211": 102, "96a54d80": 103, "98579192": 104, "9ba53fcc": 105, "9c9d4957": 106, "9cf09d42": 107, "9e511730": 108, "9ee336c5": 109, "9f0003f4": 110, "9f7c4fc1": 111, "a0060bca": 112, "a04e019f": 113, "a2c1d2d9": 114, "a4ea009a": 115, "a60de4e5": 116, "a7b606c4": 117, "a89c45cb": 118, "ad2bc6f4": 119, "ad757a5a": 120, "ae4c531b": 121, "af6a4ffc": 122, "b26d847d": 123, "b4bb4248": 124, "b6358cf2": 125, "b7094596": 126, "b85b416c": 127, "b91c2548": 128, "b9ec9192": 129, "ba0f9e8a": 130, "bc862fb6": 131, "bffe9c30": 132, "c0edaa76": 133, "c19406bc": 134, "c1ee56d0": 135, "c21c44c8": 136, "c30e7b00": 137, "c3a20c8d": 138, "c4adf918": 139, "c6cb726f": 140, "c804061c": 141, "c82f1813": 142, "cd1b7031": 143, "cd3a0eb4": 144, "d027c970": 145, "d21494f8": 146, "d54a5851": 147, "d650f1bd": 148, "d79cc967": 149, "d8d7567b": 150, "d9b1e3ff": 151, "da89cb9b": 152, "dcc84468": 153, "df7e8e0b": 154, "e0c3cae0": 155, "e51ddf94": 156, "e90cbbe1": 157, "e931c5cd": 158, "e9c32980": 159, "eb9eb939": 160, "ec88dd34": 161, "ee26f284": 162, "f161ec47": 163, "f1b78ab4": 164, "f25fe7e9": 165, "f295b28a": 166, "f697a983": 167, "f72b4bd1": 168, "f89fe102": 169, "f9d0f35e": 170, "feb49a68": 171, "ff78732c": 172}, "C12": {"-1": 0, "05e68866": 1, "07cecd0e": 2, "093a009d": 3, "0a02e48e": 4, "0b7afe9e": 5, "0c87b3e9": 6, "0cdb9a18": 7, "11fcf7fa": 8, "1310a7dd": 9, "153ff04a": 10, "156f99ef": 11, "167ba71f": 12, "16a886e7": 13, "18917580": 14, "1b2022a0": 15, "21a23bfe": 16, "22cad86a": 17, "233fde4c": 18, "23bc90a1": 19, "2436ff75": 20, "252162ec": 21, "25644e7d": 22, "28283f53": 23, "2849c511": 24, "2a064dba": 25, "2d15871c": 26, "2d72bfb9": 27, "2ea11a49": 28, "30ed85b5": 29, "317bfd7d": 30, "3263408b": 31, "3317996d": 32, "33c282f5": 33, "33ec1af8": 34, "34a238e0": 35, "3563ab62": 36, "359d194a": 37, "38176faa": 38, "3a802941": 39, "3b917db0": 40, "3c5900b5": 41, "3cd57e51": 42, "422e8212": 43, "424ba327": 44, "42bee2f2": 45, "4640585e": 46, "49507531": 47, "49a5dd4f": 48, "49fee879": 49, "4baf63a1": 50, "4bba7327": 51, "4df84614": 52, "4ea4e9d5": 53, "506bb280": 54, "526eb908": 55, "538a49e7": 56, "539c5644": 57, "553e02c3": 58, "59a625a9": 59, "5d84eb4a": 60, "5e76bfca": 61, "5ea407f3": 62, "617c70e9": 63, "61ea5878": 64, "624029b0": 65, "63314ad3": 66, "651d80c6": 67, "6532318c": 68, "6536f6f8": 69, "654bb16a": 70, "6647ec34": 71, "67b31aac": 72, "680d7261": 73, "6aa4c9a8": 74, "6aaba33c": 75, "6bca71b1": 76, "704629a2": 77, "7161e106": 78, "72a52d4c": 79, "733bbdf2": 80, "74138b6d": 81, "752343e3": 82, "75c79158": 83, "76517c94": 84, "765cb3ea": 85, "77f29381": 86, "78a16776": 87, "79b98d3d": 88, "7ac672aa": 89, "7c5cd1c7": 90, "7e7a6264": 91, "7e98747a": 92, "8065cc64": 93, "834b5edc": 94, "842839b9": 95, "887a0c20": 96, "8882c6cd": 97, "8a433ec1": 98, "8cdc4941": 99, "8d2c704a": 100, "8d526153": 101, "8ebd48c3": 102, "8f1a16da": 103, "8fe001f4": 104, "9148b680": 105, "91f87a19": 106, "94a1cc80": 107, "96fa9c01": 108, "975f89b0": 109, "99ec4e40": 110, "9b665b9c": 111, "9c841b74": 112, "9da0a604": 113, "9e82f486": 114, "9f32b866": 115, "9ffdd484": 116, "a0015d5d": 117, "a2f4e8b5": 118, "a4425bd8": 119, "a4b73157": 120, "a5ab10e6": 121, "a5b0521a": 122, "a66cfe4b": 123, "ab1307ec": 124, "ad46dc69": 125, "ad972965": 126, "ae1bb660": 127, "af6ad6b6": 128, "b345f76c": 129, "b99ddbc8": 130, "b9b3b7ef": 131, "bb669e25": 132, "bdf9cff8": 133, "beb94e00": 134, "c0d8d575": 135, "c35b992b": 136, "c3cdaf85": 137, "c47972c1": 138, "c492212b": 139, "cc22efeb": 140, "cc606cbe": 141, "cf724373": 142, "d06dc48e": 143, "d1fb0874": 144, "d286aff3": 145, "d28c687a": 146, "d63df4e6": 147, "d7cd5e08": 148, "d8acd6f9": 149, "d8c29807": 150, "de2ecc9c": 151, "dfbb09fb": 152, "e00462bb": 153, "e0d76380": 154, "e5b118b4": 155, "e802f466": 156, "eb43b195": 157, "eb83af8a": 158, "ed5cfa27": 159, "f0c1019c": 160, "f21f7d11": 161, "f24b551c": 162, "f6148255": 163, "f6d35a1e": 164, "f993725b": 165, "f9bf526c": 166, "fa5eca9d": 167, "fb991bf5": 168, "ffcedb7a": 169}, "C13": {"00e20e7b": 0, "0159bf9f": 1, "01c2bbc7": 2, "01f32ac8": 3, "034e5f3b": 4, "04e4a7e0": 5, "07a906b4": 6, "07c072b7": 7, "07fdb6cc": 8, "08775c1b": 9, "08961fd0": 10, "094e10ad": 11, "0a9ac04c": 12, "0e5bc979": 13, "115d29f4": 14, "1211c647": 15, "12880350": 16, "165642be": 17, "176d07bc": 18, "18041128": 19, "18a5e4b8": 20, "1aa94af3": 21, "1cc9ac51": 22, "1d0f2da8": 23, "1e18519e": 24, "1e9339bc": 25, "1f9d2c38": 26, "22d23aac": 27, "269889be": 28, "2723b688": 29, "2a1579a2": 30, "2b54e95d": 31, "2b9fb512": 32, "2ec4b007": 33, "2f3ee7fb": 34, "2fc3058f": 35, "31b42deb": 36, "34cbb1bc": 37, "34fc0029": 38, "3516f6e6": 39, "377af8aa": 40, "3796b047": 41, "38016f21": 42, "39ccb769": 43, "3b03d76e": 44, "3eb2f9dc": 45, "3fe840eb": 46, "42156eb4": 47, "4422e246": 48, "44af41ef": 49, "46f42a63": 50, "478ebe53": 51, "47d6a934": 52, "48b975db": 53, "49fe3d4e": 54, "4ab361e1": 55, "4d8657a2": 56, "4e4dd817": 57, "4f487d87": 58, "4f8670dc": 59, "51351dd6": 60, "580817cd": 61, "5978055e": 62, "5afd9e51": 63, "5b3fc509": 64, "5f4de855": 65, "605bbc24": 66, "61c65daf": 67, "61e43922": 68, "62036f49": 69, "636195f8": 70, "6e2907f1": 71, "6e5da64f": 72, "6f833c7a": 73, "715b22a3": 74, "7203f04e": 75, "7301027a": 76, "740c210d": 77, "768f6658": 78, "769a1844": 79, "76dfc898": 80, "779f824b": 81, "781f4d92": 82, "7a3043c0": 83, "7ce5cdf0": 84, "7d65a908": 85, "8019075f": 86, "80467802": 87, "80dcea18": 88, "8368e64b": 89, "83e6ca2e": 90, "84c02464": 91, "84def884": 92, "85dbe138": 93, "863f8f8a": 94, "879fa878": 95, "8978af5c": 96, "8b11c4b8": 97, "8e7ad399": 98, "90dca23e": 99, "91a1b611": 100, "9325eab4": 101, "93b18cb5": 102, "94881fc3": 103, "949ea585": 104, "9b656adc": 105, "9b7d472e": 106, "9b9e44d2": 107, "9be66b48": 108, "9dfda2b9": 109, "9ff13f22": 110, "a03da696": 111, "a36387e6": 112, "a4b04123": 113, "a4c7bffd": 114, "a4fafa5b": 115, "aa655a2f": 116, "aa902020": 117, "ad61640d": 118, "aebdb575": 119, "b0c30eeb": 120, "b55434a9": 121, "b72482f5": 122, "b87a829f": 123, "bb7a2c12": 124, "bcb2e77c": 125, "bd251a95": 126, "c281c227": 127, "c3f71b59": 128, "c5bc951e": 129, "c6378246": 130, "c95c9034": 131, "cd98af01": 132, "ce418dc9": 133, "ce5114a2": 134, "cfbfce5c": 135, "d3802338": 136, "d7ce3abd": 137, "dbe5226f": 138, "dc1d72e4": 139, "dcc8f90a": 140, "dccbd94b": 141, "dd183b4c": 142, "df5886ca": 143, "dfb2a8fa": 144, "e40e52ae": 145, "e4b5ce61": 146, "e5643e9a": 147, "e62d6c68": 148, "e67cdf97": 149, "e6fc496d": 150, "e8df3343": 151, "e8f6ccfe": 152, "ea18ebd8": 153, "ea1f21b7": 154, "ea31804b": 155, "ea519e47": 156, "eae197fd": 157, "ebd756bd": 158, "ef007ecc": 159, "f47f13e4": 160, "f5df7ab9": 161, "f66b043c": 162, "f9d99d81": 163, "fa17cc68": 164, "fca56425": 165}, "C14": {"051219e6": 0, "07d13a8f": 1, "1adce6ef": 2, "32813e21": 3, "64c94865": 4, "8ceecbc8": 5, "91233270": 6, "b28479f6": 7, "cfef1c29": 8, "d2dfe871": 9, "e8dce07a": 10, "ec19f520": 11, "f7c1b33f": 12, "f862f261": 13}, "C15": {"003cf364": 0, "00e52733": 1, "054ebda1": 2, "06373944": 3, "06809048": 4, "0816fba2": 5, "0a069322": 6, "0c67c4ca": 7, "0e78291e": 8, "0f942372": 9, "10040656": 10, "10139ce3": 11, "102fc449": 12, "1150f5ed": 13, "11b2ae92": 14, "11da3cff": 15, "12f48803": 16, "13f8263b": 17, "14674f9b": 18, "162f3329": 19, "17a3bcd8": 20, "18847041": 21, "1addf65e": 22, "1dca7862": 23, "217d99f2": 24, "23287566": 25, "28883800": 26, "298421a5": 27, "29a18ba0": 28, "2cd24ac0": 29, "2d0bb053": 30, "2de5271c": 31, "2eb18840": 32, "2f453358": 33, "310d155b": 34, "31b59ad3": 35, "32ec6582": 36, "33d2c881": 37, "36721ddc": 38, "3b2d8705": 39, "3d2c6113": 40, "40e29d2a": 41, "413cc8c6": 42, "422c8577": 43, "42793602": 44, "42b3012c": 45, "443b0c0b": 46, "456583e6": 47, "45e17a48": 48, "46218630": 49, "487ddf17": 50, "4c1df281": 51, "4e06592a": 52, "4f3b3616": 53, "50b07d60": 54, "51c5d5ca": 55, "52b49730": 56, "52baadf5": 57, "5340cb84": 58, "55808bb2": 59, "55d28d38": 60, "55dc357b": 61, "5726b2dc": 62, "59a58e86": 63, "5ab7247d": 64, "5be89da3": 65, "5edc1a28": 66, "60fa10e5": 67, "622c34d8": 68, "62eca3c0": 69, "633f1661": 70, "681a3f32": 71, "69f825dd": 72, "6d68e99c": 73, "6da7d68c": 74, "6ddbba94": 75, "715f1291": 76, "717db705": 77, "72f85ad5": 78, "72fbc65c": 79, "73438c3b": 80, "73e2709e": 81, "78e3b025": 82, "7ac43a46": 83, "7ba31d46": 84, "7f1c4567": 85, "7f758956": 86, "801ee1ae": 87, "80d1ee72": 88, "81d3f724": 89, "846fb5bd": 90, "8ab5b746": 91, "8d3c9c0c": 92, "902a109f": 93, "903024b9": 94, "91126f30": 95, "91f74a64": 96, "943169c2": 97, "962bbefe": 98, "9703aa2f": 99, "99153e7d": 100, "9917ad07": 101, "9c382f7a": 102, "9da6bb5f": 103, "9efd8b77": 104, "a3443e75": 105, "a4f91020": 106, "a66dcf27": 107, "a6bf53df": 108, "a785131a": 109, "a888f201": 110, "a8e962af": 111, "aa322bcf": 112, "aa39dd42": 113, "ac182643": 114, "ada14dd8": 115, "ae3a9888": 116, "b0369b63": 117, "b16ae607": 118, "b25845fd": 119, "b2ff8c6b": 120, "b5de5956": 121, "b812f9f2": 122, "b842e9bb": 123, "b96e7224": 124, "ba8b8b16": 125, "bb1e9ca8": 126, "bfef54b3": 127, "c1124d0c": 128, "c12fc269": 129, "c169c458": 130, "c1ddc990": 131, "c251e774": 132, "c38116c9": 133, "c68ba31d": 134, "ca8b2a1a": 135, "cb0f0e06": 136, "cccdd69e": 137, "cdb87fb5": 138, "cddd56a1": 139, "d002b6d9": 140, "d2f03b75": 141, "d33de6b0": 142, "d345b1a0": 143, "d4525f76": 144, "d4a5a2be": 145, "d5223973": 146, "d83fb924": 147, "dbc5e126": 148, "de829bed": 149, "dfab705f": 150, "e0052e65": 151, "e28388cc": 152, "e3209fc2": 153, "e6863a8e": 154, "ee569ce2": 155, "ef6b7bdf": 156, "f2252b1c": 157, "f3002fbd": 158, "f3635baf": 159, "f3a94039": 160, "f511c49f": 161, "f6b23a53": 162, "f775a6d5": 163, "f8ebf901": 164, "fa321567": 165, "fb67e61d": 166, "fc29c5a9": 167, "fc42663d": 168, "fd888b80": 169}, "C16": {"-1": 0, "022714ba": 1, "03b5b1e2": 2, "0596b5be": 3, "05a97a3c": 4, "068a2c9f": 5, "08514295": 6, "0ab5ee0c": 7, "0decd005": 8, "0fd6d3ca": 9, "1203a270": 10, "1206a8a1": 11, "121f63c9": 12, "12e989e9": 13, "13ede1b5": 14, "1689e4de": 15, "169f1150": 16, "1871ac47": 17, "19f6b83c": 18, "1bf03082": 19, "1c3a7247": 20, "1cdb3603": 21, "1f55226d": 22, "208d4baf": 23, "22283336": 24, "229bf6f4": 25, "23056e4f": 26, "236709b9": 27, "23c4fd37": 28, "25b075e4": 29, "270e2a53": 30, "271d5b6c": 31, "29a3715b": 32, "2a27c935": 33, "2b2ce127": 34, "2b7f6e55": 35, "2c9d222f": 36, "3084c78b": 37, "30e6420c": 38, "3141102a": 39, "31ca40b6": 40, "33301a0b": 41, "33a55538": 42, "36103458": 43, "3b87fa92": 44, "3eef319d": 45, "4032eea3": 46, "41bec2fe": 47, "4558136f": 48, "48af915a": 49, "4c7535f3": 50, "4d664c70": 51, "51b69881": 52, "52bee03d": 53, "569a0480": 54, "587267a3": 55, "5891d119": 56, "58cacba8": 57, "5c646b1e": 58, "5e1b6b9d": 59, "5e622e84": 60, "5fb9ff62": 61, "5fbf4a84": 62, "606df1fe": 63, "62675893": 64, "635c3e13": 65, "64223df7": 66, "64e0265f": 67, "6512dce6": 68, "65a31309": 69, "67b3c631": 70, "696fb81d": 71, "69f67894": 72, "6d87c0d4": 73, "6de617d3": 74, "72401022": 75, "776f5665": 76, "789e0e3e": 77, "7ce58da8": 78, "7d0949a5": 79, "7d9b60c8": 80, "7d9d720d": 81, "8023d5ba": 82, "809c9e0e": 83, "81db2bec": 84, "82708081": 85, "834b85f5": 86, "84898b2a": 87, "87acb535": 88, "89052618": 89, "8ac5e229": 90, "8e47fca6": 91, "9066bcfb": 92, "90d6ddcd": 93, "91a6eec5": 94, "9243e635": 95, "929eef3c": 96, "95a8919c": 97, "967bc626": 98, "9906d656": 99, "9b3f7aa2": 100, "9e6ff465": 101, "9e724f87": 102, "9ee32e6f": 103, "9f1d1f70": 104, "9fa82d1c": 105, "9fe6f065": 106, "a14df6f7": 107, "a249bde3": 108, "a3d7b1d6": 109, "a694f6ce": 110, "a98ec356": 111, "a9b56248": 112, "aafa191e": 113, "afc96aa6": 114, "b041b04a": 115, "b3dc5e07": 116, "b458da0e": 117, "b49f63ab": 118, "b50d9336": 119, "b688c8cc": 120, "b6d021e8": 121, "b74e1eb0": 122, "b7a016ed": 123, "b7f61016": 124, "b9a4d133": 125, "bad5ee18": 126, "bb6d240e": 127, "bc3ccba9": 128, "c0673b44": 129, "c43b15fe": 130, "c57bda3a": 131, "c64d548f": 132, "c66a58da": 133, "c73993da": 134, "cc93bd1d": 135, "cf3ec61f": 136, "d08de474": 137, "d1a4e968": 138, "d2b0336b": 139, "d8831736": 140, "da441c7e": 141, "de815c2d": 142, "df604f5b": 143, "e05d680b": 144, "e15ad623": 145, "e2bc04da": 146, "e2e2fcd9": 147, "e2e3cf1c": 148, "e3a83d5c": 149, "e3d99bf0": 150, "e638c51d": 151, "e66306df": 152, "e71dfc2d": 153, "e75cb6ea": 154, "e7af7559": 155, "ea1c4696": 156, "ebbb82d7": 157, "eedd265a": 158, "f2a191bd": 159, "f2c6a810": 160, "f39f1141": 161, "f4944655": 162, "f4ead43c": 163, "f6613e51": 164, "f68bd494": 165, "fb2ac6b5": 166, "fb8ca891": 167}, "C17": {"07c540c4": 0, "1e88c74f": 1, "2005abd1": 2, "27c07bd6": 3, "3486227d": 4, "776ce399": 5, "8efede7f": 6, "d4bb7bd8": 7, "e5ba7672": 8}, "C18": {"004fdf10": 0, "005c6740": 1, "065917ca": 2, "08154af3": 3, "0ad1cc71": 4, "0f2f9850": 5, "130ebfcd": 6, "13145934": 7, "1616f155": 8, "1999bae9": 9, "19ef42ad": 10, "1f868fdd": 11, "21eb63af": 12, "2585827d": 13, "25c88e42": 14, "2804effd": 15, "281769c2": 16, "2b46823a": 17, "2efa89c6": 18, "35176a17": 19, "35a9ed38": 20, "35ee3e9e": 21, "381bd833": 22, "38f08461": 23, "395856b0": 24, "3972b4ed": 25, "3ae505af": 26, "3c4f2d82": 27, "43dfe9bd": 28, "449d6705": 29, "456d734d": 30, "4771e483": 31, "48ce336b": 32, "4b0f5ddd": 33, "4b17f8a2": 34, "4bcc9449": 35, "52b872ed": 36, "52e44668": 37, "561cabfe": 38, "582152eb": 39, "5aed7436": 40, "5ba7fffe": 41, "5bb2ec8e": 42, "5d961bca": 43, "62acb0f3": 44, "63cdbb21": 45, "642f2610": 46, "65c9624a": 47, "670f513e": 48, "675c9258": 49, "67bd0ece": 50, "6c5555bd": 51, "6fc84bfb": 52, "752d8b8a": 53, "79a92e0a": 54, "7b06fafe": 55, "7b49e3d2": 56, "7ce63c71": 57, "7d8c03aa": 58, "7da6ea7e": 59, "7e32f7a4": 60, "7ef5affa": 61, "821c30b8": 62, "824dcc94": 63, "836a11e3": 64, "836a67dd": 65, "87c6f83c": 66, "87fd936e": 67, "8814ed47": 68, "891589e7": 69, "8f0f692f": 70, "906ff5cb": 71, "908eaeb8": 72, "95f5c722": 73, "9880032b": 74, "9b82aca5": 75, "9bf8ffef": 76, "9d3171e9": 77, "a1654f4f": 78, "a1d0cc4f": 79, "a78bd508": 80, "a7cf409e": 81, "a863ac26": 82, "ac02dc99": 83, "ade68c22": 84, "ae46962e": 85, "b04e4670": 86, "b34aa802": 87, "b608c073": 88, "bb983d97": 89, "bc48b783": 90, "bc5a0ff7": 91, "bd17c3da": 92, "be5810bd": 93, "c191a3ff": 94, "c21c3e4c": 95, "c235abed": 96, "c68ebaa0": 97, "c9da8737": 98, "ca533012": 99, "ca6a63cf": 100, "cbadff99": 101, "cf1cde40": 102, "d1605c46": 103, "d2651d6e": 104, "d3303ea5": 105, "d3c7daaa": 106, "d452c287": 107, "d495a339": 108, "d4a314a2": 109, "df4fffb7": 110, "dff11f14": 111, "e01eacde": 112, "e261f8d8": 113, "e32bf683": 114, "e7648a8f": 115, "e7e991cb": 116, "e88ffc9d": 117, "e96a7df2": 118, "f0959f21": 119, "f2fc99b1": 120, "f54016b9": 121, "f5f4ae5b": 122, "f6a2fc70": 123, "fb342121": 124, "fd3919f9": 125, "fffe2a63": 126}, "C19": {"-1": 0, "0053530c": 1, "083e89d9": 2, "1d04f4a4": 3, "1d1eb838": 4, "21ddcdc9": 5, "2442feac": 6, "2b558521": 7, "2e30f394": 8, "2f4b9dd2": 9, "39e30682": 10, "42e59f55": 11, "444a605d": 12, "49463d54": 13, "4a237258": 14, "4b1019ff": 15, "4cc48856": 16, "54591762": 17, "55dd3565": 18, "566c492c": 19, "5b885066": 20, "6301e460": 21, "6d82104d": 22, "6f3756eb": 23, "712d530c": 24, "738584ec": 25, "7be4df37": 26, "92524a76": 27, "a34d2cf6": 28, "af1445c4": 29, "b1fb78cc": 30, "b6baba3f": 31, "ba92e49d": 32, "bdffef68": 33, "bf212c4c": 34, "c79aad78": 35, "cc4c70c1": 36, "cf99e5de": 37, "d913d8f1": 38, "e27c6abe": 39, "edb3d180": 40, "f30f7842": 41, "fc134659": 42, "ff6cdd42": 43}, "C20": {"-1": 0, "5840adea": 1, "a458ea53": 2, "b1252a9d": 3}, "C21": {"-1": 0, "0014c32a": 1, "0370bc83": 2, "0429f84b": 3, "06e40c52": 4, "07b6c66f": 5, "07b818d7": 6, "0be61dd1": 7, "0d7a15fd": 8, "0e8585d2": 9, "0fbced35": 10, "1380864e": 11, "15414e28": 12, "15bb899d": 13, "15fb7955": 14, "16f71b82": 15, "1c63c71e": 16, "1d14288c": 17, "1de5dd94": 18, "1df3ad93": 19, "23da7042": 20, "26e36622": 21, "2754aaf1": 22, "29d21ab1": 23, "2b796e4a": 24, "2e01979f": 25, "301fc194": 26, "30244f84": 27, "31c8e642": 28, "33706b2d": 29, "34cc61bb": 30, "35198a67": 31, "361a1080": 32, "37a23b2d": 33, "37c3d851": 34, "38879cfe": 35, "3aa05bfb": 36, "3b66cfcf": 37, "3df2213d": 38, "40b11f62": 39, "43d01030": 40, "4a2c3526": 41, "4a8f0a7f": 42, "4c14738f": 43, "4d2b0d06": 44, "4f1aa25f": 45, "514b7308": 46, "5155d8a3": 47, "5362f5c3": 48, "53def47b": 49, "54d8bb06": 50, "56b58097": 51, "5911ddcb": 52, "5a49c6db": 53, "5a5953a2": 54, "5b6b6b73": 55, "5c7c443c": 56, "5c859cae": 57, "5c8dc711": 58, "5def73cb": 59, "5f957280": 60, "5fe17899": 61, "5ff5ac4a": 62, "605776ee": 63, "61b4555a": 64, "632bf881": 65, "6387fda4": 66, "65f3080f": 67, "67afd8d0": 68, "6a41d841": 69, "6a909d9a": 70, "6b4fc63c": 71, "6c38450e": 72, "6fb7987f": 73, "723b4dfd": 74, "72c8ca0c": 75, "73d06dde": 76, "7633c7c8": 77, "77799c4f": 78, "78c1dd4b": 79, "79fe2943": 80, "7a380bd1": 81, "7b6393e8": 82, "7e5b7cc4": 83, "7eefff0d": 84, "81f8278e": 85, "822be048": 86, "8443660f": 87, "84ec2c79": 88, "86a8e85e": 89, "8717ea07": 90, "8a93f0a1": 91, "8b7fb864": 92, "8f78192f": 93, "9179411e": 94, "9308de7e": 95, "95ee3d7a": 96, "98a79791": 97, "99712f38": 98, "9988d803": 99, "9c3eb598": 100, "9ecb9e0d": 101, "9efd5ec7": 102, "9fb07dd2": 103, "a1229e5f": 104, "a13bd40d": 105, "a2b7caec": 106, "a370fd83": 107, "a4b7004c": 108, "a66e7b01": 109, "a716bbe2": 110, "a97b62ca": 111, "aebdd3c2": 112, "af5dc647": 113, "b1ae3ed2": 114, "b4770b64": 115, "b7ba6151": 116, "b964dee0": 117, "ba3c688b": 118, "bbcf650c": 119, "bd074856": 120, "bd1f6272": 121, "be01d6b1": 122, "bf647035": 123, "bfeb50f6": 124, "c0cd6339": 125, "c12eabbb": 126, "c1429b47": 127, "c2a93b37": 128, "c2af6d9f": 129, "c3739d01": 130, "c4b9fb56": 131, "c4c42074": 132, "cc6a9262": 133, "cc86f2c1": 134, "cd11300e": 135, "cf79f8fa": 136, "cff19dc6": 137, "d1aa4512": 138, "d1d4f4a9": 139, "d4703ebd": 140, "d479575f": 141, "d4f22efc": 142, "d5a53bc3": 143, "d7a43622": 144, "d90f665b": 145, "dc55d6df": 146, "deb9605d": 147, "df66957b": 148, "df9de95c": 149, "dfcfc3fa": 150, "e049c839": 151, "e1627e2c": 152, "e208a45f": 153, "e339163e": 154, "e54f0804": 155, "e587c466": 156, "e7f0c6dc": 157, "ea6a0e31": 158, "ebfa4c53": 159, "ec4a835a": 160, "ec5ac7c6": 161, "ed01532f": 162, "f15fe1ee": 163, "fb19a39b": 164, "fca82615": 165, "fd0e41ce": 166, "fd3ca145": 167, "fdc724a8": 168}, "C22": {"-1": 0, "78e2e389": 1, "8ec974f4": 2, "ad3062eb": 3, "c0061c6d": 4, "c9d4222a": 5}, "C23": {"32c7478e": 0, "3a171ecb": 1, "423fab69": 2, "55dd3565": 3, "72592995": 4, "93bad2c0": 5, "bcdee96c": 6, "be7c41b4": 7, "c7dc6720": 8, "dbb486d7": 9}, "C24": {"-1": 0, "03955d00": 1, "043a382b": 2, "08b0ce98": 3, "0ac1b18a": 4, "0d4a6d1a": 5, "0ea7be91": 6, "0ee762c3": 7, "0ff91809": 8, "1335030a": 9, "1481ceb4": 10, "167193c9": 11, "1793a828": 12, "17f458f7": 13, "18109ace": 14, "1989e165": 15, "198d16cc": 16, "1be0cc0a": 17, "1f68c81f": 18, "246f2e7f": 19, "2896ad66": 20, "2f34b1ef": 21, "2fd70e1c": 22, "30ab4eb4": 23, "325bcd40": 24, "359dd977": 25, "364442f6": 26, "365def8b": 27, "38b97a31": 28, "394c5a53": 29, "3a6f67d1": 30, "3aebd96a": 31, "3b183c5c": 32, "3e30919e": 33, "3e983c86": 34, "3fdb382b": 35, "42998020": 36, "42a310e6": 37, "42df8359": 38, "43fe299c": 39, "44aeb111": 40, "45ab94c8": 41, "45b2acf4": 42, "4acb8523": 43, "4f7b7578": 44, "52d7797f": 45, "58e38a64": 46, "590b856f": 47, "5fd07f39": 48, "6095f986": 49, "69e4f188": 50, "6c1cdd05": 51, "6c25dad0": 52, "6d5d1302": 53, "71dc4ef2": 54, "727a7cc7": 55, "74f7ceeb": 56, "75b9c133": 57, "772b286f": 58, "7836b4d5": 59, "7b80ab11": 60, "7e60320b": 61, "8535db9f": 62, "8849cfac": 63, "88cba9eb": 64, "8d365d3b": 65, "8d49fa4b": 66, "8f079aa5": 67, "9257f75f": 68, "936da3dd": 69, "996f5a43": 70, "9b18ad04": 71, "9b7eed78": 72, "9d8b4082": 73, "9f0d87bf": 74, "a0634086": 75, "a415643d": 76, "a5862ce8": 77, "a6e7d8d3": 78, "a8380e43": 79, "a86c0565": 80, "a9d9c151": 81, "aa0115d2": 82, "aa5529de": 83, "aa9b9ab9": 84, "abe3a684": 85, "ad80aaa7": 86, "aee52b6f": 87, "af0cb2c3": 88, "b1aad66f": 89, "b2df17ed": 90, "b34f3128": 91, "b44bd498": 92, "bc491035": 93, "be2f0db5": 94, "c0b8dfd6": 95, "c0d61a5c": 96, "c94ffa50": 97, "c9a8db2a": 98, "c9bc2384": 99, "cafb4e4d": 100, "cc4079ea": 101, "cde6fafb": 102, "cf300ce9": 103, "d36c7dbf": 104, "d4af2638": 105, "d5b01f55": 106, "d5b4ea7d": 107, "d65fa724": 108, "d91ea8bd": 109, "da408463": 110, "dcba8699": 111, "ded4aac9": 112, "df487a73": 113, "e33735a0": 114, "e3aea32f": 115, "e448275f": 116, "e4e10900": 117, "e5ed7da2": 118, "eaa38671": 119, "f20c047e": 120, "f2e9f0dd": 121, "f93938dd": 122, "faf5d8b3": 123, "fb890da1": 124}, "C25": {"-1": 0, "001f3601": 1, "010f6491": 2, "2bf691b1": 3, "33d94071": 4, "445bbe3b": 5, "46fbac64": 6, "47907db5": 7, "724b04da": 8, "7a402766": 9, "875ea8a7": 10, "9b3e8820": 11, "9d93af03": 12, "b9266ff0": 13, "c243e98b": 14, "cb079c2d": 15, "e8b83407": 16, "ea9a246c": 17, "f0f449dd": 18, "f55c04b6": 19}, "C26": {"-1": 0, "00ed90d0": 1, "00efb483": 2, "070f6cb2": 3, "074bb89f": 4, "09929967": 5, "0e2018ec": 6, "0eabc199": 7, "0facb2ea": 8, "1219b447": 9, "1793fb3f": 10, "1a02cbe1": 11, "1ba54abc": 12, "1d7b6578": 13, "27029e68": 14, "2f44e540": 15, "2fc5e3d4": 16, "2fede552": 17, "322cbe58": 18, "33757f80": 19, "350a6bdb": 20, "37c5e077": 21, "3a97b421": 22, "3df61e3d": 23, "49d68486": 24, "4a449e4c": 25, "4e7af834": 26, "56be3401": 27, "59e91663": 28, "67ebe777": 29, "68d9ada1": 30, "6935065e": 31, "6d73203e": 32, "70451962": 33, "71236095": 34, "79883c16": 35, "7a1ac642": 36, "7a2fb9af": 37, "814b9a6b": 38, "81be451e": 39, "85cebe8c": 40, "85fd868a": 41, "86174332": 42, "86601e0a": 43, "8b3e7faa": 44, "8ded0b41": 45, "8fd6bdd6": 46, "92c878de": 47, "984e0db0": 48, "988b0775": 49, "9904c656": 50, "9973f80f": 51, "99f4f64c": 52, "9c015713": 53, "a39e1586": 54, "aa5f0a15": 55, "adb5d234": 56, "ae5fce01": 57, "b6a3490e": 58, "b7d9c3bc": 59, "b9809574": 60, "b98a5b90": 61, "ba14bbcb": 62, "bd2ec696": 63, "bdc8589e": 64, "bde577f6": 65, "c0fca43d": 66, "c27f155b": 67, "c4304c4b": 68, "c4e4eabb": 69, "c73ed234": 70, "c84c4aec": 71, "c986348f": 72, "d14e41ff": 73, "d597922b": 74, "d5ca783a": 75, "dd8b4f5c": 76, "ddf88ddd": 77, "deffd9e3": 78, "df46df55": 79, "e001324a": 80, "e438a496": 81, "e75c9ae9": 82, "f3737bd0": 83, "f3b1f00d": 84, "f4642e0e": 85, "f610730e": 86, "f89dfbcc": 87, "f95af538": 88, "fa3124de": 89}} \ No newline at end of file diff --git a/examples/estimator_serving/max_min.txt b/examples/estimator_serving/max_min.txt new file mode 100644 index 00000000..fcee4075 --- /dev/null +++ b/examples/estimator_serving/max_min.txt @@ -0,0 +1,14 @@ + max min +I1 37.0 0.0 +I2 3001.0 -1.0 +I3 2815.0 0.0 +I4 87.0 0.0 +I5 507333.0 0.0 +I6 2106.0 0.0 +I7 301.0 0.0 +I8 49.0 0.0 +I9 1034.0 0.0 +I10 3.0 0.0 +I11 32.0 0.0 +I12 7.0 0.0 +I13 102.0 0.0 diff --git a/examples/estimator_serving/run_estimator_classification_raw_serving.py b/examples/estimator_serving/run_estimator_classification_raw_serving.py new file mode 100644 index 00000000..d1bbefb5 --- /dev/null +++ b/examples/estimator_serving/run_estimator_classification_raw_serving.py @@ -0,0 +1,196 @@ +import pandas as pd +import tensorflow as tf +import json +import requests +import grpc +import numpy as np +from sklearn.metrics import log_loss, roc_auc_score +from sklearn.model_selection import train_test_split +from sklearn.preprocessing import LabelEncoder, MinMaxScaler + +from deepctr.estimator.inputs import input_fn_pandas +from deepctr.estimator import DeepFMEstimator + +from __future__ import print_function +from tensorflow_serving.apis import predict_pb2 +from tensorflow_serving.apis import prediction_service_pb2_grpc + +def get_integer_mapping(le): + ''' + Return a dict mapping labels to their integer values from an SKlearn LabelEncoder + le = a fitted SKlearn LabelEncoder + ''' + res = {} + for idx, val in enumerate(le.classes_): + res.update({val:idx}) + return res + + +def test_REST_serving(): + ''' + test rest api + ''' + fea_dict1 = {'I1':[0.0],'I2':[0.001332],'I3':[0.092362],'I4':[0.0],'I5':[0.034825],'I6':[0.0],'I7':[0.0],'I8':[0.673468],'I9':[0.0],'I10':[0.0],'I11':[0.0],'I12':[0.0],'I13':[0.0],'C1':[0],'C2':[4],'C3':[96],'C4':[146],'C5':[1],'C6':[4],'C7':[163],'C8':[1],'C9':[1],'C10':[72],'C11':[117],'C12':[127],'C13':[157],'C14':[7],'C15':[127],'C16':[126],'C17':[8],'C18':[66],'C19':[0],'C20':[0],'C21':[3],'C22':[0],'C23':[1],'C24':[96],'C25':[0],'C26':[0]} + fea_dict2 = {'I1':[0.0],'I2':[0.0],'I3':[0.00675],'I4':[0.402298],'I5':[0.059628],'I6':[0.117284],'I7':[0.003322],'I8':[0.714284],'I9':[0.154739],'I10':[0.0],'I11':[0.03125],'I12':[0.0],'I13':[0.343137],'C1':[11],'C2':[1],'C3':[98],'C4':[98],'C5':[1],'C6':[6],'C7':[179],'C8':[0],'C9':[1],'C10':[89],'C11':[58],'C12':[97],'C13':[79],'C14':[7],'C15':[72],'C16':[26],'C17':[7],'C18':[52],'C19':[0],'C20':[0],'C21':[47],'C22':[0],'C23':[7],'C24':[112],'C25':[0],'C26':[0]} + fea_dict3 = {'I1':[0.0],'I2':[0.000333],'I3':[0.00071],'I4':[0.137931],'I5':[0.003968],'I6':[0.077873],'I7':[0.019934],'I8':[0.714284],'I9':[0.505803],'I10':[0.0],'I11':[0.09375],'I12':[0.0],'I13':[0.17647],'C1':[0],'C2':[18],'C3':[39],'C4':[52],'C5':[3],'C6':[4],'C7':[140],'C8':[2],'C9':[1],'C10':[93],'C11':[31],'C12':[122],'C13':[16],'C14':[7],'C15':[129],'C16':[97],'C17':[8],'C18':[49],'C19':[0],'C20':[0],'C21':[25],'C22':[0],'C23':[6],'C24':[53],'C25':[0],'C26':[0]} + fea_dict4 = {'I1':[0.0],'I2':[0.004664],'I3':[0.000355],'I4':[0.045977],'I5':[0.033185],'I6':[0.094967],'I7':[0.016611],'I8':[0.081632],'I9':[0.028046],'I10':[0.0],'I11':[0.0625],'I12':[0.0],'I13':[0.039216],'C1':[0],'C2':[45],'C3':[7],'C4':[117],'C5':[1],'C6':[0],'C7':[164],'C8':[1],'C9':[0],'C10':[20],'C11':[61],'C12':[104],'C13':[36],'C14':[1],'C15':[43],'C16':[43],'C17':[8],'C18':[37],'C19':[0],'C20':[0],'C21':[156],'C22':[0],'C23':[0],'C24':[32],'C25':[0],'C26':[0]} + fea_dict5 = {'I1':[0.0],'I2':[0.000333],'I3':[0.036945],'I4':[0.310344],'I5':[0.003922],'I6':[0.067426],'I7':[0.013289],'I8':[0.65306],'I9':[0.035783],'I10':[0.0],'I11':[0.03125],'I12':[0.0],'I13':[0.264706],'C1':[0],'C2':[11],'C3':[59],'C4':[77],'C5':[1],'C6':[5],'C7':[18],'C8':[1],'C9':[1],'C10':[45],'C11':[171],'C12':[162],'C13':[96],'C14':[4],'C15':[36],'C16':[121],'C17':[8],'C18':[14],'C19':[5],'C20':[3],'C21':[9],'C22':[0],'C23':[0],'C24':[5],'C25':[1],'C26':[47]} + + # json str + data = json.dumps({"signature_name": "serving_default","instances": [fea_dict1,fea_dict2,fea_dict3,fea_dict4,fea_dict5] }) + # print(data) + + json_response = requests.post('http://localhost:8501/v1/models/raw_export_deepfm_model:predict', data=data) + predictions = json.loads(json_response.text) + print(predictions) + + +def test_RPC_serving(): + ''' + test RPC api + ''' + channel = grpc.insecure_channel(target='0.0.0.0:8500') + stub = prediction_service_pb2_grpc.PredictionServiceStub(channel) + + request = predict_pb2.PredictRequest() + request.model_spec.name = 'raw_export_deepfm_model' + request.model_spec.signature_name = 'serving_default' + + request.inputs['I1'].CopyFrom(tf.contrib.util.make_tensor_proto([0.0,0.0,0.0,0.0,0.0], shape=[5])) + request.inputs['I2'].CopyFrom(tf.contrib.util.make_tensor_proto([0.001332,0.0,0.000333,0.004664,0.000333], shape=[5])) + request.inputs['I3'].CopyFrom(tf.contrib.util.make_tensor_proto([0.092362,0.00675,0.00071,0.000355,0.036945], shape=[5])) + request.inputs['I4'].CopyFrom(tf.contrib.util.make_tensor_proto([0.0,0.402298,0.137931,0.045977,0.310344], shape=[5])) + request.inputs['I5'].CopyFrom(tf.contrib.util.make_tensor_proto([0.034825,0.059628,0.003968,0.033185,0.003922], shape=[5])) + request.inputs['I6'].CopyFrom(tf.contrib.util.make_tensor_proto([0.0,0.117284,0.077873,0.094967,0.067426], shape=[5])) + request.inputs['I7'].CopyFrom(tf.contrib.util.make_tensor_proto([0.0,0.003322,0.019934,0.016611,0.013289], shape=[5])) + request.inputs['I8'].CopyFrom(tf.contrib.util.make_tensor_proto([0.673468,0.714284,0.714284,0.081632,0.65306], shape=[5])) + request.inputs['I9'].CopyFrom(tf.contrib.util.make_tensor_proto([0.0,0.154739,0.505803,0.028046,0.035783], shape=[5])) + request.inputs['I10'].CopyFrom(tf.contrib.util.make_tensor_proto([0.0,0.0,0.0,0.0,0.0], shape=[5])) + request.inputs['I11'].CopyFrom(tf.contrib.util.make_tensor_proto([0.0,0.03125,0.09375,0.0625,0.03125], shape=[5])) + request.inputs['I12'].CopyFrom(tf.contrib.util.make_tensor_proto([0.0,0.0,0.0,0.0,0.0], shape=[5])) + request.inputs['I13'].CopyFrom(tf.contrib.util.make_tensor_proto([0.0,0.343137,0.17647,0.039216,0.264706], shape=[5])) + + request.inputs['C1'].CopyFrom(tf.contrib.util.make_tensor_proto([0,11,0,0,0], shape=[5])) + request.inputs['C2'].CopyFrom(tf.contrib.util.make_tensor_proto([4,1,18,45,11], shape=[5])) + request.inputs['C3'].CopyFrom(tf.contrib.util.make_tensor_proto([96,98,39,7,59], shape=[5])) + request.inputs['C4'].CopyFrom(tf.contrib.util.make_tensor_proto([146,98,52,117,77], shape=[5])) + request.inputs['C5'].CopyFrom(tf.contrib.util.make_tensor_proto([1,1,3,1,1], shape=[5])) + request.inputs['C6'].CopyFrom(tf.contrib.util.make_tensor_proto([4,6,4,0,5], shape=[5])) + request.inputs['C7'].CopyFrom(tf.contrib.util.make_tensor_proto([163,179,140,164,18], shape=[5])) + request.inputs['C8'].CopyFrom(tf.contrib.util.make_tensor_proto([1,0,2,1,1], shape=[5])) + request.inputs['C9'].CopyFrom(tf.contrib.util.make_tensor_proto([1,1,1,0,1], shape=[5])) + request.inputs['C10'].CopyFrom(tf.contrib.util.make_tensor_proto([72,89,93,20,45], shape=[5])) + request.inputs['C11'].CopyFrom(tf.contrib.util.make_tensor_proto([117,58,31,61,171], shape=[5])) + request.inputs['C12'].CopyFrom(tf.contrib.util.make_tensor_proto([127,97,122,104,162], shape=[5])) + request.inputs['C13'].CopyFrom(tf.contrib.util.make_tensor_proto([157,79,16,36,96], shape=[5])) + request.inputs['C14'].CopyFrom(tf.contrib.util.make_tensor_proto([7,7,7,1,4], shape=[5])) + request.inputs['C15'].CopyFrom(tf.contrib.util.make_tensor_proto([127,72,129,43,36], shape=[5])) + request.inputs['C16'].CopyFrom(tf.contrib.util.make_tensor_proto([126,26,97,43,121], shape=[5])) + request.inputs['C17'].CopyFrom(tf.contrib.util.make_tensor_proto([8,7,8,8,8], shape=[5])) + request.inputs['C18'].CopyFrom(tf.contrib.util.make_tensor_proto([66,52,49,37,14], shape=[5])) + request.inputs['C19'].CopyFrom(tf.contrib.util.make_tensor_proto([0,0,0,0,5], shape=[5])) + request.inputs['C20'].CopyFrom(tf.contrib.util.make_tensor_proto([0,0,0,0,3], shape=[5])) + request.inputs['C21'].CopyFrom(tf.contrib.util.make_tensor_proto([3,47,25,156,9], shape=[5])) + request.inputs['C22'].CopyFrom(tf.contrib.util.make_tensor_proto([0,0,0,0,0], shape=[5])) + request.inputs['C23'].CopyFrom(tf.contrib.util.make_tensor_proto([1,7,6,0,0], shape=[5])) + request.inputs['C24'].CopyFrom(tf.contrib.util.make_tensor_proto([96,112,53,32,5], shape=[5])) + request.inputs['C25'].CopyFrom(tf.contrib.util.make_tensor_proto([0,0,0,0,1], shape=[5])) + request.inputs['C26'].CopyFrom(tf.contrib.util.make_tensor_proto([0,0,0,0,47], shape=[5])) + + result = stub.Predict(request, 5.0) # 5 secs timeout + + outputs_tensor_proto = result.outputs["logits"] + shape = tf.TensorShape(outputs_tensor_proto.tensor_shape) + outputs = tf.constant(list(outputs_tensor_proto.float_val), shape=shape) + outputs = np.array(outputs_tensor_proto.float_val).reshape(shape.as_list()) + + print(f'logits:{outputs}') + outputs_tensor_proto = result.outputs["pred"] + shape = tf.TensorShape(outputs_tensor_proto.tensor_shape) + outputs = tf.constant(list(outputs_tensor_proto.float_val), shape=shape) + outputs = np.array(outputs_tensor_proto.float_val).reshape(shape.as_list()) + print(f'pred:{outputs}') + +if __name__ == "__main__": + data = pd.read_csv('../criteo_sample.txt') + df = data.head() ## for generate serving samples + + sparse_features = ['C' + str(i) for i in range(1, 27)] + dense_features = ['I' + str(i) for i in range(1, 14)] + + data[sparse_features] = data[sparse_features].fillna('-1', ) + data[dense_features] = data[dense_features].fillna(0, ) + target = ['label'] + + # 1.Label Encoding for sparse features,and do simple Transformation for dense features + feat_index_dict = {} + for feat in sparse_features: + lbe = LabelEncoder() + data[feat] = lbe.fit_transform(data[feat]) + feat_index_dict.update({feat:get_integer_mapping(lbe)}) + + # save min max value for each dense feature + s_max,s_min = data[dense_features].max(axis=0),data[dense_features].min(axis=0) + pd.concat([s_max, s_min],keys=['max','min'],axis=1).to_csv(f"max_min.txt",sep="\t") + + mms = MinMaxScaler(feature_range=(0, 1)) + data[dense_features] = mms.fit_transform(data[dense_features]) + + # save category features index for serving stage + import json + with open("feat_index_dict.json", 'w') as fo: + json.dump(feat_index_dict, fo) + + + # 2.count #unique features for each sparse field,and record dense feature field name + dnn_feature_columns = [] + linear_feature_columns = [] + for i, feat in enumerate(sparse_features): + dnn_feature_columns.append(tf.feature_column.embedding_column( + tf.feature_column.categorical_column_with_identity(feat, data[feat].nunique()), 4)) + linear_feature_columns.append(tf.feature_column.categorical_column_with_identity(feat, data[feat].nunique())) + for feat in dense_features: + dnn_feature_columns.append(tf.feature_column.numeric_column(feat)) + linear_feature_columns.append(tf.feature_column.numeric_column(feat)) + + # 3.generate input data for model + train, test = train_test_split(data, test_size=0.2) + # Not setting default value for continuous feature. filled with mean. + train_model_input = input_fn_pandas(train,sparse_features+dense_features,'label') + test_model_input = input_fn_pandas(test,sparse_features+dense_features,None) + + # 4.Define Model,train,predict and evaluate + model = DeepFMEstimator(linear_feature_columns, dnn_feature_columns) + model.train(train_model_input) + pred_ans_iter = model.predict(test_model_input) + pred_ans = list(map(lambda x:x['pred'],pred_ans_iter)) + # + print("test LogLoss", round(log_loss(test[target].values, pred_ans), 4)) + print("test AUC", round(roc_auc_score(test[target].values, pred_ans), 4)) + + # 5.saved Model by build_raw_serving_input ,generate model in export_path + def serving_input_receiver_fn(): + feature_map = {} + for i in range(len(sparse_features)): + feature_map[sparse_features[i]] = tf.placeholder(tf.int32,shape=(None, ),name='{}'.format(sparse_features[i])) + for i in range(len(dense_features)): + feature_map[dense_features[i]] = tf.placeholder(tf.float32,shape=(None, ),name='{}'.format(dense_features[i])) + return tf.estimator.export.build_raw_serving_input_receiver_fn(feature_map) + + model.export_savedmodel(export_dir_base='./serving_raw/', + serving_input_receiver_fn=serving_input_receiver_fn()) + + + # 6. run bash test serving service in local PC + # export_path = './serving_raw/1593253204' (generated above) + # run bash + # !saved_model_cli show --dir {export_path} --all + # !saved_model_cli run --dir {export_path} --tag_set serve --signature_def "serving_default" --input_expr 'I1=[0.0,0.0,0.0,0.0,0.0];I2=[0.001332,0.0,0.000333,0.004664,0.000333];I3=[0.092362,0.00675,0.00071,0.000355,0.036945];I4=[0.0,0.402298,0.137931,0.045977,0.310344];I5=[0.034825,0.059628,0.003968,0.033185,0.003922];I6=[0.0,0.117284,0.077873,0.094967,0.067426];I7=[0.0,0.003322,0.019934,0.016611,0.013289];I8=[0.673468,0.714284,0.714284,0.081632,0.65306];I9=[0.0,0.154739,0.505803,0.028046,0.035783];I10=[0.0,0.0,0.0,0.0,0.0];I11=[0.0,0.03125,0.09375,0.0625,0.03125];I12=[0.0,0.0,0.0,0.0,0.0];I13=[0.0,0.343137,0.17647,0.039216,0.264706];C1=[0,11,0,0,0];C2=[4,1,18,45,11];C3=[96,98,39,7,59];C4=[146,98,52,117,77];C5=[1,1,3,1,1];C6=[4,6,4,0,5];C7=[163,179,140,164,18];C8=[1,0,2,1,1];C9=[1,1,1,0,1];C10=[72,89,93,20,45];C11=[117,58,31,61,171];C12=[127,97,122,104,162];C13=[157,79,16,36,96];C14=[7,7,7,1,4];C15=[127,72,129,43,36];C16=[126,26,97,43,121];C17=[8,7,8,8,8];C18=[66,52,49,37,14];C19=[0,0,0,0,5];C20=[0,0,0,0,3];C21=[3,47,25,156,9];C22=[0,0,0,0,0];C23=[1,7,6,0,0];C24=[96,112,53,32,5];C25=[0,0,0,0,1];C26=[0,0,0,0,47]' + # # local pc import os + # os.environ["MODEL_DIR"] = '/home/mi/openwork/sub/DeepCTR/examples/estimator_serving/serving_raw' + # + # bash + # nohup tensorflow_model_server --port=8500 --rest_api_port=8501 --model_name=raw_export_deepfm_model --model_base_path=${MODEL_DIR} >server.log 2>&1 + + # test_REST_serving() + # test_RPC_serving() \ No newline at end of file diff --git a/examples/estimator_serving/serving_raw/1593253204/saved_model.pb b/examples/estimator_serving/serving_raw/1593253204/saved_model.pb new file mode 100644 index 00000000..a4aa0996 Binary files /dev/null and b/examples/estimator_serving/serving_raw/1593253204/saved_model.pb differ diff --git a/examples/estimator_serving/serving_raw/1593253204/variables/variables.data-00000-of-00001 b/examples/estimator_serving/serving_raw/1593253204/variables/variables.data-00000-of-00001 new file mode 100644 index 00000000..78b1333e Binary files /dev/null and b/examples/estimator_serving/serving_raw/1593253204/variables/variables.data-00000-of-00001 differ diff --git a/examples/estimator_serving/serving_raw/1593253204/variables/variables.index b/examples/estimator_serving/serving_raw/1593253204/variables/variables.index new file mode 100644 index 00000000..0a89ff3d Binary files /dev/null and b/examples/estimator_serving/serving_raw/1593253204/variables/variables.index differ