1*d5c09012SAndroid Build Coastguard Worker// Copyright 2020 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.recommendationengine.v1beta1; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Worker 20*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.RecommendationEngine.V1Beta1"; 21*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/recommendationengine/apiv1beta1/recommendationenginepb;recommendationenginepb"; 22*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 23*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.recommendationengine.v1beta1"; 24*d5c09012SAndroid Build Coastguard Workeroption objc_class_prefix = "RECAI"; 25*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\RecommendationEngine\\V1beta1"; 26*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::RecommendationEngine::V1beta1"; 27*d5c09012SAndroid Build Coastguard Worker 28*d5c09012SAndroid Build Coastguard Worker// FeatureMap represents extra features that customers want to include in the 29*d5c09012SAndroid Build Coastguard Worker// recommendation model for catalogs/user events as categorical/numerical 30*d5c09012SAndroid Build Coastguard Worker// features. 31*d5c09012SAndroid Build Coastguard Workermessage FeatureMap { 32*d5c09012SAndroid Build Coastguard Worker // A list of string features. 33*d5c09012SAndroid Build Coastguard Worker message StringList { 34*d5c09012SAndroid Build Coastguard Worker // String feature value with a length limit of 128 bytes. 35*d5c09012SAndroid Build Coastguard Worker repeated string value = 1; 36*d5c09012SAndroid Build Coastguard Worker } 37*d5c09012SAndroid Build Coastguard Worker 38*d5c09012SAndroid Build Coastguard Worker // A list of float features. 39*d5c09012SAndroid Build Coastguard Worker message FloatList { 40*d5c09012SAndroid Build Coastguard Worker // Float feature value. 41*d5c09012SAndroid Build Coastguard Worker repeated float value = 1; 42*d5c09012SAndroid Build Coastguard Worker } 43*d5c09012SAndroid Build Coastguard Worker 44*d5c09012SAndroid Build Coastguard Worker // Categorical features that can take on one of a limited number of possible 45*d5c09012SAndroid Build Coastguard Worker // values. Some examples would be the brand/maker of a product, or country of 46*d5c09012SAndroid Build Coastguard Worker // a customer. 47*d5c09012SAndroid Build Coastguard Worker // 48*d5c09012SAndroid Build Coastguard Worker // Feature names and values must be UTF-8 encoded strings. 49*d5c09012SAndroid Build Coastguard Worker // 50*d5c09012SAndroid Build Coastguard Worker // For example: `{ "colors": {"value": ["yellow", "green"]}, 51*d5c09012SAndroid Build Coastguard Worker // "sizes": {"value":["S", "M"]}` 52*d5c09012SAndroid Build Coastguard Worker map<string, StringList> categorical_features = 1; 53*d5c09012SAndroid Build Coastguard Worker 54*d5c09012SAndroid Build Coastguard Worker // Numerical features. Some examples would be the height/weight of a product, 55*d5c09012SAndroid Build Coastguard Worker // or age of a customer. 56*d5c09012SAndroid Build Coastguard Worker // 57*d5c09012SAndroid Build Coastguard Worker // Feature names must be UTF-8 encoded strings. 58*d5c09012SAndroid Build Coastguard Worker // 59*d5c09012SAndroid Build Coastguard Worker // For example: `{ "lengths_cm": {"value":[2.3, 15.4]}, 60*d5c09012SAndroid Build Coastguard Worker // "heights_cm": {"value":[8.1, 6.4]} }` 61*d5c09012SAndroid Build Coastguard Worker map<string, FloatList> numerical_features = 2; 62*d5c09012SAndroid Build Coastguard Worker} 63