| // 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. |
| |
| syntax = "proto3"; |
| |
| 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-intelligence-feature-protos (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; |
| |
| HistoryQueryResponse response = 2; |
| |
| HistoryQueryQuality quality = 3; |
| |
| 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; |
| |
| // The embedding of the history search query. |
| Embedding query_embedding = 5; |
| |
| // The version of the embedding model used to compute the query and document |
| // embeddings. |
| int64 embedding_model_version = 6; |
| |
| // 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; |
| |
| // The UI surface the user was on when making this query. |
| UiSurface ui_surface = 3; |
| |
| // 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. |
| optional uint32 num_days = 7; |
| |
| UserFeedback user_feedback = 8; |
| |
| // The session id of the user query. Use this to join with HistoryAnswer |
| // protos from the same session. |
| string session_id = 9; |
| |
| // The final model status of the query. Used to determine if the query result |
| // is successful/accepted or not. |
| FinalModelStatus final_model_status = 10; |
| } |
| |
| // Next ID: 7 |
| message DocumentShown { |
| // The full URL of the document shown to the user. |
| string url = 2; |
| |
| repeated PassageData passages = 3; |
| |
| // Whether the user clicked the shown document. |
| bool was_clicked = 4; |
| |
| // Best score from passages, replicated for convenient summary. |
| float best_embedding_score = 5; |
| |
| // 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; |
| |
| reserved 1; |
| } |
| |
| // Next ID: 4 |
| message PassageData { |
| // The embedding for this passage. |
| Embedding embedding = 1; |
| |
| // The text of the passage. |
| string text = 2; |
| |
| // How the passage was scored against the query. |
| float score = 3; |
| } |
| |
| // 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; |
| } |