Skip to content

Commit a9ebc23

Browse files
Google APIscopybara-github
authored andcommitted
feat: added support for Delete Conversatstion
feat: removed support for Update Conversation fix!: An existing message `UpdateConversationRequest` is removed fix!: An existing method `UpdateConversation` is removed from service `DataChatService` docs: A comment for field `generated_looker_query` in message `.google.cloud.geminidataanalytics.v1alpha.DataMessage` is changed PiperOrigin-RevId: 819587105
1 parent 9ee628b commit a9ebc23

File tree

3 files changed

+96
-32
lines changed

3 files changed

+96
-32
lines changed

google/cloud/geminidataanalytics/v1alpha/context.proto

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,56 @@ option ruby_package = "Google::Cloud::GeminiDataAnalytics::V1alpha";
2929

3030
// A collection of context to apply to this conversation
3131
message Context {
32+
// The relationship between two tables, including referencing and referenced
33+
// columns. This is a derived context retrieved from Dataplex Dataset
34+
// Insights.
35+
message SchemaRelationship {
36+
// Represents an ordered set of paths within the table schema.
37+
message SchemaPaths {
38+
// The service-qualified full resource name of the table
39+
// Ex:
40+
// bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID
41+
string table_fqn = 1;
42+
43+
// The ordered list of paths within the table schema.
44+
repeated string paths = 2;
45+
}
46+
47+
// Source which generated the schema relation edge.
48+
enum Source {
49+
// The source of the schema relationship is unspecified.
50+
SOURCE_UNSPECIFIED = 0;
51+
52+
// The source of the schema relationship is BigQuery job history.
53+
BIGQUERY_JOB_HISTORY = 1;
54+
55+
// The source of the schema relationship is LLM suggested.
56+
LLM_SUGGESTED = 2;
57+
58+
// The source of the schema relationship is BigQuery table constraints.
59+
BIGQUERY_TABLE_CONSTRAINTS = 3;
60+
}
61+
62+
// An ordered list of fields for the join from the first table.
63+
// The size of this list must be the same as `right_schema_paths`.
64+
// Each field at index i in this list must correspond to a field at the same
65+
// index in the `right_schema_paths` list.
66+
SchemaPaths left_schema_paths = 1;
67+
68+
// An ordered list of fields for the join from the second table.
69+
// The size of this list must be the same as `left_schema_paths`.
70+
// Each field at index i in this list must correspond to a field at the same
71+
// index in the `left_schema_paths` list.
72+
SchemaPaths right_schema_paths = 2;
73+
74+
// Sources which generated the schema relation edge.
75+
repeated Source sources = 3;
76+
77+
// A confidence score for the suggested relationship.
78+
// Manually added edges have the highest confidence score.
79+
float confidence_score = 4;
80+
}
81+
3282
// Optional. The basic entry point for data owners creating domain knowledge
3383
// for Agent.
3484
//
@@ -49,6 +99,15 @@ message Context {
4999
// optionally present. Currently only used for BigQuery data sources.
50100
repeated ExampleQuery example_queries = 5
51101
[(google.api.field_behavior) = OPTIONAL];
102+
103+
// Optional. Term definitions (currently, only user authored)
104+
repeated GlossaryTerm glossary_terms = 8
105+
[(google.api.field_behavior) = OPTIONAL];
106+
107+
// Optional. Relationships between table schema, including referencing and
108+
// referenced columns.
109+
repeated SchemaRelationship schema_relationships = 9
110+
[(google.api.field_behavior) = OPTIONAL];
52111
}
53112

54113
// Example of relevant and commonly used SQL query and its corresponding natural
@@ -69,6 +128,22 @@ message ExampleQuery {
69128
string natural_language_question = 1 [(google.api.field_behavior) = OPTIONAL];
70129
}
71130

131+
// Definition of a term within a specific domain.
132+
message GlossaryTerm {
133+
// Required. User friendly display name of the glossary term being defined.
134+
// For example: "CTR", "conversion rate", "pending"
135+
string display_name = 1 [(google.api.field_behavior) = REQUIRED];
136+
137+
// Required. The description or meaning of the term.
138+
// For example: "Click-through rate", "The percentage of users who complete a
139+
// desired action", "An order that is waiting to be processed."
140+
string description = 2 [(google.api.field_behavior) = REQUIRED];
141+
142+
// Optional. A list of general purpose labels associated to this term.
143+
// For example: ["click rate", "clickthrough", "waiting"]
144+
repeated string labels = 3 [(google.api.field_behavior) = OPTIONAL];
145+
}
146+
72147
// Options for the conversation.
73148
message ConversationOptions {
74149
// Optional. Options for chart generation.

google/cloud/geminidataanalytics/v1alpha/conversation.proto

Lines changed: 13 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ package google.cloud.geminidataanalytics.v1alpha;
1919
import "google/api/field_behavior.proto";
2020
import "google/api/field_info.proto";
2121
import "google/api/resource.proto";
22-
import "google/protobuf/field_mask.proto";
2322
import "google/protobuf/timestamp.proto";
2423

2524
option csharp_namespace = "Google.Cloud.GeminiDataAnalytics.V1Alpha";
@@ -106,31 +105,6 @@ message CreateConversationRequest {
106105
];
107106
}
108107

109-
// Request for updating a conversation.
110-
message UpdateConversationRequest {
111-
// Required. The resource being updated.
112-
Conversation conversation = 1 [(google.api.field_behavior) = REQUIRED];
113-
114-
// Optional. Field mask is used to specify the fields to be overwritten in the
115-
// Conversation resource by the update.
116-
// The fields specified in the update_mask are relative to the resource, not
117-
// the full request. A field will be overwritten if it is in the mask. If the
118-
// user does not provide a mask then all fields with non-default values
119-
// present in the request will be overwritten. If a wildcard mask is provided,
120-
// all fields will be overwritten.
121-
google.protobuf.FieldMask update_mask = 2
122-
[(google.api.field_behavior) = OPTIONAL];
123-
124-
// Optional. An optional request ID to identify requests. Specify a unique
125-
// request ID so that if you must retry your request, the server will know to
126-
// ignore the request if it has already been completed. The server will
127-
// guarantee that for at least 60 minutes since the first request.
128-
string request_id = 3 [
129-
(google.api.field_info).format = UUID4,
130-
(google.api.field_behavior) = OPTIONAL
131-
];
132-
}
133-
134108
// Request for getting a conversation based on parent and conversation id.
135109
message GetConversationRequest {
136110
// Required. Name of the resource.
@@ -178,3 +152,16 @@ message ListConversationsResponse {
178152
// A token identifying a page of results the server should return.
179153
string next_page_token = 2;
180154
}
155+
156+
// Request for deleting a conversation based on parent and conversation id.
157+
message DeleteConversationRequest {
158+
// Required. Name of the resource.
159+
// Format:
160+
// `projects/{project}/locations/{location}/conversations/{conversation}`
161+
string name = 1 [
162+
(google.api.field_behavior) = REQUIRED,
163+
(google.api.resource_reference) = {
164+
type: "geminidataanalytics.googleapis.com/Conversation"
165+
}
166+
];
167+
}

google/cloud/geminidataanalytics/v1alpha/data_chat_service.proto

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import "google/cloud/geminidataanalytics/v1alpha/context.proto";
2424
import "google/cloud/geminidataanalytics/v1alpha/conversation.proto";
2525
import "google/cloud/geminidataanalytics/v1alpha/credentials.proto";
2626
import "google/cloud/geminidataanalytics/v1alpha/datasource.proto";
27+
import "google/protobuf/empty.proto";
2728
import "google/protobuf/struct.proto";
2829
import "google/protobuf/timestamp.proto";
2930

@@ -63,13 +64,13 @@ service DataChatService {
6364
"parent,conversation,conversation_id";
6465
}
6566

66-
// Updates a conversation.
67-
rpc UpdateConversation(UpdateConversationRequest) returns (Conversation) {
67+
// Deletes a conversation.
68+
rpc DeleteConversation(DeleteConversationRequest)
69+
returns (google.protobuf.Empty) {
6870
option (google.api.http) = {
69-
patch: "/v1alpha/{conversation.name=projects/*/locations/*/conversations/*}"
70-
body: "conversation"
71+
delete: "/v1alpha/{name=projects/*/locations/*/conversations/*}"
7172
};
72-
option (google.api.method_signature) = "conversation,update_mask";
73+
option (google.api.method_signature) = "name";
7374
}
7475

7576
// Gets details of a single conversation by using conversation id and parent.
@@ -368,7 +369,8 @@ message DataMessage {
368369
DataResult result = 3;
369370

370371
// Looker Query generated by the system to retrieve data.
371-
LookerQuery generated_looker_query = 4;
372+
// DEPRECATED: generated looker query is now under DataQuery.looker.
373+
LookerQuery generated_looker_query = 4 [deprecated = true];
372374

373375
// A BigQuery job executed by the system to retrieve data.
374376
BigQueryJob big_query_job = 5;

0 commit comments

Comments
 (0)