| // Copyright 2021 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // This file is copied from chromium repo: |
| // //components/assist_ranker/proto/ranker_example.proto |
| // Contains features required for AssistRanker model inference and training. |
| |
| syntax = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| |
| package assist_ranker; |
| |
| message StringList { |
| repeated bytes string_value = 1; |
| } |
| |
| // A repeated list of float values. |
| message FloatList { |
| repeated float float_value = 1; |
| } |
| |
| // Generic message that can contain a variety of data types. |
| message Feature { |
| oneof feature_type { |
| // Bool values are used for scalar features. |
| bool bool_value = 1; |
| // Float and int values can be used for scalar and bucketized features. |
| float float_value = 2; |
| int32 int32_value = 3; |
| // String values are used for one-hot features. |
| bytes string_value = 4; |
| // String list are used for sparse features. |
| StringList string_list = 5; |
| // Float lists represent vectorial features. |
| FloatList float_list = 6; |
| } |
| } |
| |
| // RankerExample protos contain a set of features to be used as input for |
| // AssistRanker inference, and optionally a target for training. |
| message RankerExample { |
| // Input features for the ranker model. This is the only field that is |
| // required for inference. |
| map<string, Feature> features = 1; |
| // This field represents the ground truth that the ranker is |
| // expected to predict, and is typically derived from user feedback. It is |
| // used for training only and is not required for inference. |
| // NOTE: this field will not be logged. If you want to log an outcome, add it |
| // to the features field before calling LogExample. |
| // TODO(chrome-ranker-team) Add a metadata field to log metrics that are not |
| // used as model input. |
| optional Feature target = 2; |
| } |