Skip to content

Commit 782f21b

Browse files
feat: [vertexai] Update gapic to include ToolConfig (#10920)
PiperOrigin-RevId: 640297768 Co-authored-by: Jaycee Li <jayceeli@google.com>
1 parent 1cef84a commit 782f21b

File tree

62 files changed

+6531
-4189
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+6531
-4189
lines changed

java-vertexai/google-cloud-vertexai/src/main/java/com/google/cloud/vertexai/api/PredictionServiceClient.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1410,6 +1410,7 @@ public final GenerateContentResponse generateContent(String model, List<Content>
14101410
* .addAllContents(new ArrayList<Content>())
14111411
* .setSystemInstruction(Content.newBuilder().build())
14121412
* .addAllTools(new ArrayList<Tool>())
1413+
* .setToolConfig(ToolConfig.newBuilder().build())
14131414
* .addAllSafetySettings(new ArrayList<SafetySetting>())
14141415
* .setGenerationConfig(GenerationConfig.newBuilder().build())
14151416
* .build();
@@ -1443,6 +1444,7 @@ public final GenerateContentResponse generateContent(GenerateContentRequest requ
14431444
* .addAllContents(new ArrayList<Content>())
14441445
* .setSystemInstruction(Content.newBuilder().build())
14451446
* .addAllTools(new ArrayList<Tool>())
1447+
* .setToolConfig(ToolConfig.newBuilder().build())
14461448
* .addAllSafetySettings(new ArrayList<SafetySetting>())
14471449
* .setGenerationConfig(GenerationConfig.newBuilder().build())
14481450
* .build();
@@ -1477,6 +1479,7 @@ public final GenerateContentResponse generateContent(GenerateContentRequest requ
14771479
* .addAllContents(new ArrayList<Content>())
14781480
* .setSystemInstruction(Content.newBuilder().build())
14791481
* .addAllTools(new ArrayList<Tool>())
1482+
* .setToolConfig(ToolConfig.newBuilder().build())
14801483
* .addAllSafetySettings(new ArrayList<SafetySetting>())
14811484
* .setGenerationConfig(GenerationConfig.newBuilder().build())
14821485
* .build();

java-vertexai/google-cloud-vertexai/src/main/java/com/google/cloud/vertexai/api/stub/EndpointServiceStubSettings.java

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -390,15 +390,6 @@ public EndpointServiceStub createStub() throws IOException {
390390
"Transport not supported: %s", getTransportChannelProvider().getTransportName()));
391391
}
392392

393-
/** Returns the endpoint set by the user or the the service's default endpoint. */
394-
@Override
395-
public String getEndpoint() {
396-
if (super.getEndpoint() != null) {
397-
return super.getEndpoint();
398-
}
399-
return getDefaultEndpoint();
400-
}
401-
402393
/** Returns the default service name. */
403394
@Override
404395
public String getServiceName() {
@@ -998,15 +989,6 @@ public UnaryCallSettings.Builder<GetIamPolicyRequest, Policy> getIamPolicySettin
998989
return testIamPermissionsSettings;
999990
}
1000991

1001-
/** Returns the endpoint set by the user or the the service's default endpoint. */
1002-
@Override
1003-
public String getEndpoint() {
1004-
if (super.getEndpoint() != null) {
1005-
return super.getEndpoint();
1006-
}
1007-
return getDefaultEndpoint();
1008-
}
1009-
1010992
@Override
1011993
public EndpointServiceStubSettings build() throws IOException {
1012994
return new EndpointServiceStubSettings(this);

java-vertexai/google-cloud-vertexai/src/main/java/com/google/cloud/vertexai/api/stub/GrpcLlmUtilityServiceStub.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -54,14 +54,14 @@
5454
@Generated("by gapic-generator-java")
5555
public class GrpcLlmUtilityServiceStub extends LlmUtilityServiceStub {
5656
private static final MethodDescriptor<CountTokensRequest, CountTokensResponse>
57-
// TODO(b/317255628): switch back to the google.cloud.aiplatform.v1.LlmUtilityServiceClient
5857
countTokensMethodDescriptor =
59-
MethodDescriptor.<CountTokensRequest, CountTokensResponse>newBuilder()
60-
.setType(MethodDescriptor.MethodType.UNARY)
61-
.setFullMethodName("google.cloud.aiplatform.v1beta1.PredictionService/CountTokens")
62-
.setRequestMarshaller(ProtoUtils.marshaller(CountTokensRequest.getDefaultInstance()))
63-
.setResponseMarshaller(ProtoUtils.marshaller(CountTokensResponse.getDefaultInstance()))
64-
.build();
58+
MethodDescriptor.<CountTokensRequest, CountTokensResponse>newBuilder()
59+
.setType(MethodDescriptor.MethodType.UNARY)
60+
.setFullMethodName("google.cloud.aiplatform.v1.LlmUtilityService/CountTokens")
61+
.setRequestMarshaller(ProtoUtils.marshaller(CountTokensRequest.getDefaultInstance()))
62+
.setResponseMarshaller(
63+
ProtoUtils.marshaller(CountTokensResponse.getDefaultInstance()))
64+
.build();
6565

6666
private static final MethodDescriptor<ComputeTokensRequest, ComputeTokensResponse>
6767
computeTokensMethodDescriptor =

java-vertexai/google-cloud-vertexai/src/main/java/com/google/cloud/vertexai/api/stub/GrpcPredictionServiceStub.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -385,12 +385,24 @@ protected GrpcPredictionServiceStub(
385385
streamDirectPredictTransportSettings =
386386
GrpcCallSettings.<StreamDirectPredictRequest, StreamDirectPredictResponse>newBuilder()
387387
.setMethodDescriptor(streamDirectPredictMethodDescriptor)
388+
.setParamsExtractor(
389+
request -> {
390+
RequestParamsBuilder builder = RequestParamsBuilder.create();
391+
builder.add("endpoint", String.valueOf(request.getEndpoint()));
392+
return builder.build();
393+
})
388394
.build();
389395
GrpcCallSettings<StreamDirectRawPredictRequest, StreamDirectRawPredictResponse>
390396
streamDirectRawPredictTransportSettings =
391397
GrpcCallSettings
392398
.<StreamDirectRawPredictRequest, StreamDirectRawPredictResponse>newBuilder()
393399
.setMethodDescriptor(streamDirectRawPredictMethodDescriptor)
400+
.setParamsExtractor(
401+
request -> {
402+
RequestParamsBuilder builder = RequestParamsBuilder.create();
403+
builder.add("endpoint", String.valueOf(request.getEndpoint()));
404+
return builder.build();
405+
})
394406
.build();
395407
GrpcCallSettings<StreamingPredictRequest, StreamingPredictResponse>
396408
streamingPredictTransportSettings =

java-vertexai/google-cloud-vertexai/src/main/java/com/google/cloud/vertexai/api/stub/HttpJsonEndpointServiceStub.java

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -688,6 +688,16 @@ protected HttpJsonEndpointServiceStub(
688688
"google.longrunning.Operations.CancelOperation",
689689
HttpRule.newBuilder()
690690
.setPost("/ui/{name=projects/*/locations/*/operations/*}:cancel")
691+
.addAdditionalBindings(
692+
HttpRule.newBuilder()
693+
.setPost(
694+
"/ui/{name=projects/*/locations/*/agents/*/operations/*}:cancel")
695+
.build())
696+
.addAdditionalBindings(
697+
HttpRule.newBuilder()
698+
.setPost(
699+
"/ui/{name=projects/*/locations/*/apps/*/operations/*}:cancel")
700+
.build())
691701
.addAdditionalBindings(
692702
HttpRule.newBuilder()
693703
.setPost(
@@ -1067,6 +1077,15 @@ protected HttpJsonEndpointServiceStub(
10671077
"google.longrunning.Operations.DeleteOperation",
10681078
HttpRule.newBuilder()
10691079
.setDelete("/ui/{name=projects/*/locations/*/operations/*}")
1080+
.addAdditionalBindings(
1081+
HttpRule.newBuilder()
1082+
.setDelete(
1083+
"/ui/{name=projects/*/locations/*/agents/*/operations/*}")
1084+
.build())
1085+
.addAdditionalBindings(
1086+
HttpRule.newBuilder()
1087+
.setDelete("/ui/{name=projects/*/locations/*/apps/*/operations/*}")
1088+
.build())
10701089
.addAdditionalBindings(
10711090
HttpRule.newBuilder()
10721091
.setDelete(
@@ -1476,6 +1495,14 @@ protected HttpJsonEndpointServiceStub(
14761495
"google.longrunning.Operations.GetOperation",
14771496
HttpRule.newBuilder()
14781497
.setGet("/ui/{name=projects/*/locations/*/operations/*}")
1498+
.addAdditionalBindings(
1499+
HttpRule.newBuilder()
1500+
.setGet("/ui/{name=projects/*/locations/*/agents/*/operations/*}")
1501+
.build())
1502+
.addAdditionalBindings(
1503+
HttpRule.newBuilder()
1504+
.setGet("/ui/{name=projects/*/locations/*/apps/*/operations/*}")
1505+
.build())
14791506
.addAdditionalBindings(
14801507
HttpRule.newBuilder()
14811508
.setGet("/ui/{name=projects/*/locations/*/datasets/*/operations/*}")
@@ -1892,6 +1919,14 @@ protected HttpJsonEndpointServiceStub(
18921919
"google.longrunning.Operations.ListOperations",
18931920
HttpRule.newBuilder()
18941921
.setGet("/ui/{name=projects/*/locations/*}/operations")
1922+
.addAdditionalBindings(
1923+
HttpRule.newBuilder()
1924+
.setGet("/ui/{name=projects/*/locations/*/agents/*}/operations")
1925+
.build())
1926+
.addAdditionalBindings(
1927+
HttpRule.newBuilder()
1928+
.setGet("/ui/{name=projects/*/locations/*/apps/*}/operations")
1929+
.build())
18951930
.addAdditionalBindings(
18961931
HttpRule.newBuilder()
18971932
.setGet("/ui/{name=projects/*/locations/*/datasets/*}/operations")
@@ -2294,6 +2329,16 @@ protected HttpJsonEndpointServiceStub(
22942329
"google.longrunning.Operations.WaitOperation",
22952330
HttpRule.newBuilder()
22962331
.setPost("/ui/{name=projects/*/locations/*/operations/*}:wait")
2332+
.addAdditionalBindings(
2333+
HttpRule.newBuilder()
2334+
.setPost(
2335+
"/ui/{name=projects/*/locations/*/agents/*/operations/*}:wait")
2336+
.build())
2337+
.addAdditionalBindings(
2338+
HttpRule.newBuilder()
2339+
.setPost(
2340+
"/ui/{name=projects/*/locations/*/apps/*/operations/*}:wait")
2341+
.build())
22972342
.addAdditionalBindings(
22982343
HttpRule.newBuilder()
22992344
.setPost(

java-vertexai/google-cloud-vertexai/src/main/java/com/google/cloud/vertexai/api/stub/HttpJsonLlmUtilityServiceStub.java

Lines changed: 35 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -63,43 +63,42 @@ public class HttpJsonLlmUtilityServiceStub extends LlmUtilityServiceStub {
6363
private static final TypeRegistry typeRegistry = TypeRegistry.newBuilder().build();
6464

6565
private static final ApiMethodDescriptor<CountTokensRequest, CountTokensResponse>
66-
// TODO(b/317255628): switch back to the google.cloud.aiplatform.v1.LlmUtilityServiceClient
6766
countTokensMethodDescriptor =
68-
ApiMethodDescriptor.<CountTokensRequest, CountTokensResponse>newBuilder()
69-
.setFullMethodName("google.cloud.aiplatform.v1beta1.PredictionService/CountTokens")
70-
.setHttpMethod("POST")
71-
.setType(ApiMethodDescriptor.MethodType.UNARY)
72-
.setRequestFormatter(
73-
ProtoMessageRequestFormatter.<CountTokensRequest>newBuilder()
74-
.setPath(
75-
"/v1/{endpoint=projects/*/locations/*/endpoints/*}:countTokens",
76-
request -> {
77-
Map<String, String> fields = new HashMap<>();
78-
ProtoRestSerializer<CountTokensRequest> serializer =
79-
ProtoRestSerializer.create();
80-
serializer.putPathParam(fields, "endpoint", request.getEndpoint());
81-
return fields;
82-
})
83-
.setAdditionalPaths(
84-
"/v1/{endpoint=projects/*/locations/*/publishers/*/models/*}:countTokens")
85-
.setQueryParamsExtractor(
86-
request -> {
87-
Map<String, List<String>> fields = new HashMap<>();
88-
ProtoRestSerializer<CountTokensRequest> serializer =
89-
ProtoRestSerializer.create();
90-
return fields;
91-
})
92-
.setRequestBodyExtractor(
93-
request ->
94-
ProtoRestSerializer.create()
95-
.toBody("*", request.toBuilder().clearEndpoint().build(), false))
96-
.build())
97-
.setResponseParser(
98-
ProtoMessageResponseParser.<CountTokensResponse>newBuilder()
99-
.setDefaultInstance(CountTokensResponse.getDefaultInstance())
100-
.setDefaultTypeRegistry(typeRegistry)
101-
.build())
102-
.build();
67+
ApiMethodDescriptor.<CountTokensRequest, CountTokensResponse>newBuilder()
68+
.setFullMethodName("google.cloud.aiplatform.v1.LlmUtilityService/CountTokens")
69+
.setHttpMethod("POST")
70+
.setType(ApiMethodDescriptor.MethodType.UNARY)
71+
.setRequestFormatter(
72+
ProtoMessageRequestFormatter.<CountTokensRequest>newBuilder()
73+
.setPath(
74+
"/v1/{endpoint=projects/*/locations/*/endpoints/*}:countTokens",
75+
request -> {
76+
Map<String, String> fields = new HashMap<>();
77+
ProtoRestSerializer<CountTokensRequest> serializer =
78+
ProtoRestSerializer.create();
79+
serializer.putPathParam(fields, "endpoint", request.getEndpoint());
80+
return fields;
81+
})
82+
.setAdditionalPaths(
83+
"/v1/{endpoint=projects/*/locations/*/publishers/*/models/*}:countTokens")
84+
.setQueryParamsExtractor(
85+
request -> {
86+
Map<String, List<String>> fields = new HashMap<>();
87+
ProtoRestSerializer<CountTokensRequest> serializer =
88+
ProtoRestSerializer.create();
89+
return fields;
90+
})
91+
.setRequestBodyExtractor(
92+
request ->
93+
ProtoRestSerializer.create()
94+
.toBody("*", request.toBuilder().clearEndpoint().build(), false))
95+
.build())
96+
.setResponseParser(
97+
ProtoMessageResponseParser.<CountTokensResponse>newBuilder()
98+
.setDefaultInstance(CountTokensResponse.getDefaultInstance())
99+
.setDefaultTypeRegistry(typeRegistry)
100+
.build())
101+
.build();
103102

104103
private static final ApiMethodDescriptor<ComputeTokensRequest, ComputeTokensResponse>
105104
computeTokensMethodDescriptor =

java-vertexai/google-cloud-vertexai/src/main/java/com/google/cloud/vertexai/api/stub/HttpJsonPredictionServiceStub.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,6 +211,8 @@ public class HttpJsonPredictionServiceStub extends PredictionServiceStub {
211211
serializer.putPathParam(fields, "endpoint", request.getEndpoint());
212212
return fields;
213213
})
214+
.setAdditionalPaths(
215+
"/v1/{endpoint=projects/*/locations/*/publishers/*/models/*}:directPredict")
214216
.setQueryParamsExtractor(
215217
request -> {
216218
Map<String, List<String>> fields = new HashMap<>();
@@ -247,6 +249,8 @@ public class HttpJsonPredictionServiceStub extends PredictionServiceStub {
247249
serializer.putPathParam(fields, "endpoint", request.getEndpoint());
248250
return fields;
249251
})
252+
.setAdditionalPaths(
253+
"/v1/{endpoint=projects/*/locations/*/publishers/*/models/*}:directRawPredict")
250254
.setQueryParamsExtractor(
251255
request -> {
252256
Map<String, List<String>> fields = new HashMap<>();

java-vertexai/google-cloud-vertexai/src/main/java/com/google/cloud/vertexai/api/stub/LlmUtilityServiceStubSettings.java

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -226,15 +226,6 @@ public LlmUtilityServiceStub createStub() throws IOException {
226226
"Transport not supported: %s", getTransportChannelProvider().getTransportName()));
227227
}
228228

229-
/** Returns the endpoint set by the user or the the service's default endpoint. */
230-
@Override
231-
public String getEndpoint() {
232-
if (super.getEndpoint() != null) {
233-
return super.getEndpoint();
234-
}
235-
return getDefaultEndpoint();
236-
}
237-
238229
/** Returns the default service name. */
239230
@Override
240231
public String getServiceName() {
@@ -540,15 +531,6 @@ public UnaryCallSettings.Builder<GetIamPolicyRequest, Policy> getIamPolicySettin
540531
return testIamPermissionsSettings;
541532
}
542533

543-
/** Returns the endpoint set by the user or the the service's default endpoint. */
544-
@Override
545-
public String getEndpoint() {
546-
if (super.getEndpoint() != null) {
547-
return super.getEndpoint();
548-
}
549-
return getDefaultEndpoint();
550-
}
551-
552534
@Override
553535
public LlmUtilityServiceStubSettings build() throws IOException {
554536
return new LlmUtilityServiceStubSettings(this);

java-vertexai/google-cloud-vertexai/src/main/java/com/google/cloud/vertexai/api/stub/PredictionServiceStubSettings.java

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,10 @@
125125
public class PredictionServiceStubSettings extends StubSettings<PredictionServiceStubSettings> {
126126
/** The default scopes of the service. */
127127
private static final ImmutableList<String> DEFAULT_SERVICE_SCOPES =
128-
ImmutableList.<String>builder().add("https://www.googleapis.com/auth/cloud-platform").build();
128+
ImmutableList.<String>builder()
129+
.add("https://www.googleapis.com/auth/cloud-platform")
130+
.add("https://www.googleapis.com/auth/cloud-platform.read-only")
131+
.build();
129132

130133
private final UnaryCallSettings<PredictRequest, PredictResponse> predictSettings;
131134
private final UnaryCallSettings<RawPredictRequest, HttpBody> rawPredictSettings;
@@ -328,15 +331,6 @@ public PredictionServiceStub createStub() throws IOException {
328331
"Transport not supported: %s", getTransportChannelProvider().getTransportName()));
329332
}
330333

331-
/** Returns the endpoint set by the user or the the service's default endpoint. */
332-
@Override
333-
public String getEndpoint() {
334-
if (super.getEndpoint() != null) {
335-
return super.getEndpoint();
336-
}
337-
return getDefaultEndpoint();
338-
}
339-
340334
/** Returns the default service name. */
341335
@Override
342336
public String getServiceName() {
@@ -806,15 +800,6 @@ public UnaryCallSettings.Builder<GetIamPolicyRequest, Policy> getIamPolicySettin
806800
return testIamPermissionsSettings;
807801
}
808802

809-
/** Returns the endpoint set by the user or the the service's default endpoint. */
810-
@Override
811-
public String getEndpoint() {
812-
if (super.getEndpoint() != null) {
813-
return super.getEndpoint();
814-
}
815-
return getDefaultEndpoint();
816-
}
817-
818803
@Override
819804
public PredictionServiceStubSettings build() throws IOException {
820805
return new PredictionServiceStubSettings(this);

0 commit comments

Comments
 (0)