@@ -72,6 +72,7 @@ public class PutTrainedModelRequest extends RequestBase implements JsonpSerializ
72
72
@ Nullable
73
73
private final String description ;
74
74
75
+ @ Nullable
75
76
private final InferenceConfigCreate inferenceConfig ;
76
77
77
78
@ Nullable
@@ -98,7 +99,7 @@ private PutTrainedModelRequest(Builder builder) {
98
99
this .deferDefinitionDecompression = builder .deferDefinitionDecompression ;
99
100
this .definition = builder .definition ;
100
101
this .description = builder .description ;
101
- this .inferenceConfig = ApiTypeHelper . requireNonNull ( builder .inferenceConfig , this , "inferenceConfig" ) ;
102
+ this .inferenceConfig = builder .inferenceConfig ;
102
103
this .input = builder .input ;
103
104
this .metadata = builder .metadata ;
104
105
this .modelId = ApiTypeHelper .requireNonNull (builder .modelId , this , "modelId" );
@@ -158,12 +159,14 @@ public final String description() {
158
159
}
159
160
160
161
/**
161
- * Required - The default configuration for inference. This can be either a
162
- * regression or classification configuration. It must match the underlying
163
- * definition.trained_model's target_type.
162
+ * The default configuration for inference. This can be either a regression or
163
+ * classification configuration. It must match the underlying
164
+ * definition.trained_model's target_type. For pre-packaged models such as ELSER
165
+ * the config is not required.
164
166
* <p>
165
167
* API name: {@code inference_config}
166
168
*/
169
+ @ Nullable
167
170
public final InferenceConfigCreate inferenceConfig () {
168
171
return this .inferenceConfig ;
169
172
}
@@ -254,9 +257,11 @@ protected void serializeInternal(JsonGenerator generator, JsonpMapper mapper) {
254
257
generator .write (this .description );
255
258
256
259
}
257
- generator .writeKey ("inference_config" );
258
- this .inferenceConfig .serialize (generator , mapper );
260
+ if (this .inferenceConfig != null ) {
261
+ generator .writeKey ("inference_config" );
262
+ this .inferenceConfig .serialize (generator , mapper );
259
263
264
+ }
260
265
if (this .input != null ) {
261
266
generator .writeKey ("input" );
262
267
this .input .serialize (generator , mapper );
@@ -310,6 +315,7 @@ public static class Builder extends RequestBase.AbstractBuilder<Builder>
310
315
@ Nullable
311
316
private String description ;
312
317
318
+ @ Nullable
313
319
private InferenceConfigCreate inferenceConfig ;
314
320
315
321
@ Nullable
@@ -385,21 +391,23 @@ public final Builder description(@Nullable String value) {
385
391
}
386
392
387
393
/**
388
- * Required - The default configuration for inference. This can be either a
389
- * regression or classification configuration. It must match the underlying
390
- * definition.trained_model's target_type.
394
+ * The default configuration for inference. This can be either a regression or
395
+ * classification configuration. It must match the underlying
396
+ * definition.trained_model's target_type. For pre-packaged models such as ELSER
397
+ * the config is not required.
391
398
* <p>
392
399
* API name: {@code inference_config}
393
400
*/
394
- public final Builder inferenceConfig (InferenceConfigCreate value ) {
401
+ public final Builder inferenceConfig (@ Nullable InferenceConfigCreate value ) {
395
402
this .inferenceConfig = value ;
396
403
return this ;
397
404
}
398
405
399
406
/**
400
- * Required - The default configuration for inference. This can be either a
401
- * regression or classification configuration. It must match the underlying
402
- * definition.trained_model's target_type.
407
+ * The default configuration for inference. This can be either a regression or
408
+ * classification configuration. It must match the underlying
409
+ * definition.trained_model's target_type. For pre-packaged models such as ELSER
410
+ * the config is not required.
403
411
* <p>
404
412
* API name: {@code inference_config}
405
413
*/
0 commit comments