| // Copyright 2024 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| edition = "2023"; |
| |
| package optimization_guide.proto; |
| |
| import "components/optimization_guide/proto/features/common_quality_data.proto"; |
| |
| option optimize_for = LITE_RUNTIME; |
| option java_package = "org.chromium.components.optimization_guide.features.proto"; |
| |
| option java_outer_classname = "HistoryQueryProto"; |
| |
| // DO NOT EDIT THIS FILE DIRECTLY! |
| // |
| // This file is generated in g3 and then synced to Chrome. Instead, please refer to |
| // http://go/chrome-mqls-onboarding (Google-internal link), and then changes will |
| // be synced with Chrome automatically. |
| |
| // Protos for the AiData representing the flow where Chrome sends the user query |
| // to the server, the server returns an embedding and the client computes a |
| // ranking of the documents. |
| |
| message HistoryQueryLoggingData { |
| HistoryQueryRequest request = 1 [features = { field_presence: EXPLICIT }]; |
| |
| HistoryQueryResponse response = 2 [features = { field_presence: EXPLICIT }]; |
| |
| HistoryQueryQuality quality = 3 [features = { field_presence: EXPLICIT }]; |
| |
| reserved 4, 5; |
| } |
| |
| // Next ID: 2 |
| message HistoryQueryRequest { |
| reserved 1; |
| } |
| |
| // Next ID: 3 |
| message HistoryQueryResponse { |
| reserved 1, 2; |
| } |
| |
| // Next Id: 11 |
| message HistoryQueryQuality { |
| // The history search query entered by the user. |
| string query = 4 [features = { field_presence: IMPLICIT }]; |
| |
| // The embedding of the history search query. |
| Embedding query_embedding = 5 [features = { field_presence: EXPLICIT }]; |
| |
| // The version of the embedding model used to compute the query and document |
| // embeddings. |
| int64 embedding_model_version = 6 [features = { field_presence: IMPLICIT }]; |
| |
| // The top N (N=3 as of 2024-03-28) documents shown to the user after their |
| // query. Uses the same order they were shown to the user. |
| repeated DocumentShown top_documents_shown = 1; |
| |
| // The number of characters the user entered during this UI interaction. |
| // This should be the length of the query plus the number of characters that |
| // were edited. |
| uint32 num_entered_characters = 2 [features = { field_presence: IMPLICIT }]; |
| |
| // The UI surface the user was on when making this query. |
| UiSurface ui_surface = 3 [features = { field_presence: IMPLICIT }]; |
| |
| // If specified, this is the number of days of history the user requested |
| // to search. For example, search may be narrowed to yesterday or last week. |
| // If absent, all available history is used for search. |
| uint32 num_days = 7 [features = { field_presence: EXPLICIT }]; |
| |
| UserFeedback user_feedback = 8 [features = { field_presence: IMPLICIT }]; |
| |
| // The session id of the user query. Use this to join with HistoryAnswer |
| // protos from the same session. |
| string session_id = 9 [features = { field_presence: IMPLICIT }]; |
| |
| // The final model status of the query. Used to determine if the query result |
| // is successful/accepted or not. |
| FinalModelStatus final_model_status = 10 [features = { field_presence: IMPLICIT }]; |
| } |
| |
| // Next ID: 7 |
| message DocumentShown { |
| // The full URL of the document shown to the user. |
| string url = 2 [features = { field_presence: IMPLICIT }]; |
| |
| repeated PassageData passages = 3; |
| |
| // Whether the user clicked the shown document. |
| bool was_clicked = 4 [features = { field_presence: IMPLICIT }]; |
| |
| // Best score from passages, replicated for convenient summary. |
| float best_embedding_score = 5 [features = { field_presence: IMPLICIT }]; |
| |
| // Total score for the document including best passage embedding score |
| // plus any holistic (across all passages) text search score boost. |
| // Also here for convenience as it can in theory be computed from passages. |
| float total_document_score = 6 [features = { field_presence: IMPLICIT }]; |
| |
| reserved 1; |
| } |
| |
| // Next ID: 4 |
| message PassageData { |
| // The embedding for this passage. |
| Embedding embedding = 1 [features = { field_presence: EXPLICIT }]; |
| |
| // The text of the passage. |
| string text = 2 [features = { field_presence: IMPLICIT }]; |
| |
| // How the passage was scored against the query. |
| float score = 3 [features = { field_presence: IMPLICIT }]; |
| } |
| |
| // Next ID: 4 |
| enum UiSurface { |
| UI_SURFACE_UNSPECIFIED = 0; |
| |
| UI_SURFACE_HISTORY_PAGE = 1; |
| |
| UI_SURFACE_OMNIBOX_HISTORY_SCOPE = 2; |
| |
| UI_SURFACE_SIDE_PANEL = 3; |
| } |