// Copyright 2018 The Paddle Authors. All Rights Reserved. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // ============================================================================= syntax = "proto3"; option optimize_for = LITE_RUNTIME; package paddle_hub; enum DataType { NONE = 0; INT = 1; FLOAT = 2; STRING = 3; BOOLEAN = 4; LIST = 5; MAP = 6; SET = 7; OBJECT = 8; } message KVData { map keyType = 1; map data = 2; } message FlexibleData { DataType type = 1; string name = 2; int64 i = 3; double f = 4; bool b = 5; string s = 6; KVData map = 7; KVData list = 8; KVData set = 9; KVData object = 10; string info = 11; } // Feed Variable Description message FeedDesc { string var_name = 1; string alias = 2; }; // Fetch Variable Description message FetchDesc { string var_name = 1; string alias = 2; }; // Module Variable message ModuleVar { repeated FetchDesc fetch_desc = 1; repeated FeedDesc feed_desc = 2; } message AuthInfo { string paddle_version = 1; string hub_version = 2; } // A Hub Module is stored in a directory with a file 'paddlehub.pb' // containing a serialized protocol message of this type. The further contents // of the directory depend on the storage format described by the message. message ModuleDesc { // PaddleHub module name string name = 1; // PaddleHub module name // signature to module variable map sign2var = 2; bool return_numpy = 3; bool contain_assets = 4; AuthInfo auth_info = 5; FlexibleData extra_info = 6; };