ibm_watson 0.14.0 → 0.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ibm_watson/assistant_v1.rb +791 -736
  3. data/lib/ibm_watson/assistant_v2.rb +12 -8
  4. data/lib/ibm_watson/common.rb +2 -1
  5. data/lib/ibm_watson/compare_comply_v1.rb +171 -169
  6. data/lib/ibm_watson/discovery_v1.rb +778 -689
  7. data/lib/ibm_watson/language_translator_v3.rb +65 -63
  8. data/lib/ibm_watson/natural_language_classifier_v1.rb +36 -35
  9. data/lib/ibm_watson/natural_language_understanding_v1.rb +28 -25
  10. data/lib/ibm_watson/personality_insights_v3.rb +10 -10
  11. data/lib/ibm_watson/speech_to_text_v1.rb +764 -702
  12. data/lib/ibm_watson/text_to_speech_v1.rb +215 -200
  13. data/lib/ibm_watson/tone_analyzer_v3.rb +10 -9
  14. data/lib/ibm_watson/version.rb +1 -1
  15. data/lib/ibm_watson/visual_recognition_v3.rb +94 -95
  16. data/lib/ibm_watson/websocket/speech_to_text_websocket_listener.rb +1 -1
  17. data/test/integration/test_assistant_v1.rb +18 -289
  18. data/test/integration/test_assistant_v2.rb +21 -31
  19. data/test/integration/test_discovery_v1.rb +21 -18
  20. data/test/integration/test_language_translator_v3.rb +3 -3
  21. data/test/integration/test_natural_language_classifier_v1.rb +3 -3
  22. data/test/integration/test_natural_language_understanding_v1.rb +16 -20
  23. data/test/integration/test_personality_insights_v3.rb +12 -40
  24. data/test/integration/test_speech_to_text_v1.rb +3 -3
  25. data/test/integration/test_text_to_speech_v1.rb +3 -3
  26. data/test/integration/test_tone_analyzer_v3.rb +14 -31
  27. data/test/integration/test_visual_recognition_v3.rb +3 -3
  28. data/test/unit/test_compare_comply_v1.rb +3 -7
  29. data/test/unit/test_discovery_v1.rb +21 -7
  30. data/test/unit/test_language_translator_v3.rb +1 -3
  31. data/test/unit/test_natural_language_classifier_v1.rb +1 -3
  32. data/test/unit/test_speech_to_text_v1.rb +25 -7
  33. data/test/unit/test_text_to_speech_v1.rb +0 -4
  34. data/test/unit/test_visual_recognition_v3.rb +2 -6
  35. metadata +2 -2
@@ -29,7 +29,6 @@
29
29
  require "concurrent"
30
30
  require "erb"
31
31
  require "json"
32
-
33
32
  require "ibm_cloud_sdk_core"
34
33
  require_relative "./common.rb"
35
34
 
@@ -98,7 +97,7 @@ module IBMWatson
98
97
  #########################
99
98
 
100
99
  ##
101
- # @!method tone(tone_input:, content_type: nil, sentences: nil, tones: nil, content_language: nil, accept_language: nil)
100
+ # @!method tone(tone_input:, sentences: nil, tones: nil, content_language: nil, accept_language: nil, content_type: nil)
102
101
  # Analyze general tone.
103
102
  # Use the general purpose endpoint to analyze the tone of your input content. The
104
103
  # service analyzes the content for emotional and language tones. The method always
@@ -122,8 +121,6 @@ module IBMWatson
122
121
  # endpoint](https://cloud.ibm.com/docs/services/tone-analyzer/using-tone.html#using-the-general-purpose-endpoint).
123
122
  # @param tone_input [ToneInput] JSON, plain text, or HTML input that contains the content to be analyzed. For JSON
124
123
  # input, provide an object of type `ToneInput`.
125
- # @param content_type [String] The type of the input. A character encoding can be specified by including a
126
- # `charset` parameter. For example, 'text/plain;charset=utf-8'.
127
124
  # @param sentences [Boolean] Indicates whether the service is to return an analysis of each individual sentence
128
125
  # in addition to its analysis of the full document. If `true` (the default), the
129
126
  # service returns results for each sentence.
@@ -145,16 +142,19 @@ module IBMWatson
145
142
  # variants are treated as their parent language; for example, `en-US` is interpreted
146
143
  # as `en`. You can use different languages for **Content-Language** and
147
144
  # **Accept-Language**.
145
+ # @param content_type [String] The type of the input. A character encoding can be specified by including a
146
+ # `charset` parameter. For example, 'text/plain;charset=utf-8'.
148
147
  # @return [IBMCloudSdkCore::DetailedResponse] A `IBMCloudSdkCore::DetailedResponse` object representing the response.
149
- def tone(tone_input:, content_type: nil, sentences: nil, tones: nil, content_language: nil, accept_language: nil)
148
+ def tone(tone_input:, sentences: nil, tones: nil, content_language: nil, accept_language: nil, content_type: nil)
150
149
  raise ArgumentError.new("tone_input must be provided") if tone_input.nil?
151
150
 
152
151
  headers = {
153
- "Content-Type" => content_type,
154
152
  "Content-Language" => content_language,
155
- "Accept-Language" => accept_language
153
+ "Accept-Language" => accept_language,
154
+ "Content-Type" => content_type
156
155
  }
157
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "tone_analyzer", service_version: "V3", operation_id: "tone")
156
+ sdk_headers = Common.new.get_sdk_headers("tone_analyzer", "V3", "tone")
157
+ headers.merge!(sdk_headers)
158
158
 
159
159
  params = {
160
160
  "version" => @version,
@@ -219,7 +219,8 @@ module IBMWatson
219
219
  "Content-Language" => content_language,
220
220
  "Accept-Language" => accept_language
221
221
  }
222
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "tone_analyzer", service_version: "V3", operation_id: "tone_chat")
222
+ sdk_headers = Common.new.get_sdk_headers("tone_analyzer", "V3", "tone_chat")
223
+ headers.merge!(sdk_headers)
223
224
 
224
225
  params = {
225
226
  "version" => @version
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module IBMWatson
4
- VERSION = "0.14.0"
4
+ VERSION = "0.15.0"
5
5
  end
@@ -21,7 +21,6 @@
21
21
  require "concurrent"
22
22
  require "erb"
23
23
  require "json"
24
-
25
24
  require "ibm_cloud_sdk_core"
26
25
  require_relative "./common.rb"
27
26
 
@@ -78,33 +77,33 @@ module IBMWatson
78
77
  #########################
79
78
 
80
79
  ##
81
- # @!method classify(images_file: nil, accept_language: nil, url: nil, threshold: nil, owners: nil, classifier_ids: nil, images_file_content_type: nil, images_filename: nil)
80
+ # @!method classify(images_file: nil, images_filename: nil, images_file_content_type: nil, url: nil, threshold: nil, owners: nil, classifier_ids: nil, accept_language: nil)
82
81
  # Classify images.
83
82
  # Classify images with built-in or custom classifiers.
84
- # @param images_file [File] An image file (.jpg, .png) or .zip file with images. Maximum image size is 10 MB.
85
- # Include no more than 20 images and limit the .zip file to 100 MB. Encode the image
86
- # and .zip file names in UTF-8 if they contain non-ASCII characters. The service
87
- # assumes UTF-8 encoding if it encounters non-ASCII characters.
83
+ # @param images_file [File] An image file (.gif, .jpg, .png, .tif) or .zip file with images. Maximum image
84
+ # size is 10 MB. Include no more than 20 images and limit the .zip file to 100 MB.
85
+ # Encode the image and .zip file names in UTF-8 if they contain non-ASCII
86
+ # characters. The service assumes UTF-8 encoding if it encounters non-ASCII
87
+ # characters.
88
88
  #
89
89
  # You can also include an image with the **url** parameter.
90
- # @param accept_language [String] The desired language of parts of the response. See the response for details.
91
- # @param url [String] The URL of an image to analyze. Must be in .jpg, or .png format. The minimum
92
- # recommended pixel density is 32X32 pixels per inch, and the maximum image size is
93
- # 10 MB.
90
+ # @param images_filename [String] The filename for images_file.
91
+ # @param images_file_content_type [String] The content type of images_file.
92
+ # @param url [String] The URL of an image (.gif, .jpg, .png, .tif) to analyze. The minimum recommended
93
+ # pixel density is 32X32 pixels, but the service tends to perform better with images
94
+ # that are at least 224 x 224 pixels. The maximum image size is 10 MB.
94
95
  #
95
96
  # You can also include images with the **images_file** parameter.
96
97
  # @param threshold [Float] The minimum score a class must have to be displayed in the response. Set the
97
- # threshold to `0.0` to ignore the classification score and return all values.
98
- # @param owners [Array[String]] The categories of classifiers to apply. Use `IBM` to classify against the
99
- # `default` general classifier, and use `me` to classify against your custom
100
- # classifiers. To analyze the image against both classifier categories, set the
101
- # value to both `IBM` and `me`.
102
- #
103
- # The built-in `default` classifier is used if both **classifier_ids** and
104
- # **owners** parameters are empty.
105
- #
106
- # The **classifier_ids** parameter overrides **owners**, so make sure that
107
- # **classifier_ids** is empty.
98
+ # threshold to `0.0` to return all identified classes.
99
+ # @param owners [Array[String]] The categories of classifiers to apply. The **classifier_ids** parameter overrides
100
+ # **owners**, so make sure that **classifier_ids** is empty.
101
+ # - Use `IBM` to classify against the `default` general classifier. You get the same
102
+ # result if both **classifier_ids** and **owners** parameters are empty.
103
+ # - Use `me` to classify against all your custom classifiers. However, for better
104
+ # performance use **classifier_ids** to specify the specific custom classifiers to
105
+ # apply.
106
+ # - Use both `IBM` and `me` to analyze the image against both classifier categories.
108
107
  # @param classifier_ids [Array[String]] Which classifiers to apply. Overrides the **owners** parameter. You can specify
109
108
  # both custom and built-in classifier IDs. The built-in `default` classifier is used
110
109
  # if both **classifier_ids** and **owners** parameters are empty.
@@ -113,14 +112,14 @@ module IBMWatson
113
112
  # - `default`: Returns classes from thousands of general tags.
114
113
  # - `food`: Enhances specificity and accuracy for images of food items.
115
114
  # - `explicit`: Evaluates whether the image might be pornographic.
116
- # @param images_file_content_type [String] The content type of images_file.
117
- # @param images_filename [String] The filename for images_file.
115
+ # @param accept_language [String] The desired language of parts of the response. See the response for details.
118
116
  # @return [IBMCloudSdkCore::DetailedResponse] A `IBMCloudSdkCore::DetailedResponse` object representing the response.
119
- def classify(images_file: nil, accept_language: nil, url: nil, threshold: nil, owners: nil, classifier_ids: nil, images_file_content_type: nil, images_filename: nil)
117
+ def classify(images_file: nil, images_filename: nil, images_file_content_type: nil, url: nil, threshold: nil, owners: nil, classifier_ids: nil, accept_language: nil)
120
118
  headers = {
121
119
  "Accept-Language" => accept_language
122
120
  }
123
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "watson_vision_combined", service_version: "V3", operation_id: "classify")
121
+ sdk_headers = Common.new.get_sdk_headers("watson_vision_combined", "V3", "classify")
122
+ headers.merge!(sdk_headers)
124
123
 
125
124
  params = {
126
125
  "version" => @version
@@ -164,7 +163,7 @@ module IBMWatson
164
163
  #########################
165
164
 
166
165
  ##
167
- # @!method detect_faces(images_file: nil, url: nil, images_file_content_type: nil, images_filename: nil, accept_language: nil)
166
+ # @!method detect_faces(images_file: nil, images_filename: nil, images_file_content_type: nil, url: nil, accept_language: nil)
168
167
  # Detect faces in images.
169
168
  # **Important:** On April 2, 2018, the identity information in the response to calls
170
169
  # to the Face model was removed. The identity information refers to the `name` of
@@ -187,21 +186,22 @@ module IBMWatson
187
186
  # characters.
188
187
  #
189
188
  # You can also include an image with the **url** parameter.
189
+ # @param images_filename [String] The filename for images_file.
190
+ # @param images_file_content_type [String] The content type of images_file.
190
191
  # @param url [String] The URL of an image to analyze. Must be in .gif, .jpg, .png, or .tif format. The
191
192
  # minimum recommended pixel density is 32X32 pixels, but the service tends to
192
193
  # perform better with images that are at least 224 x 224 pixels. The maximum image
193
194
  # size is 10 MB. Redirects are followed, so you can use a shortened URL.
194
195
  #
195
196
  # You can also include images with the **images_file** parameter.
196
- # @param images_file_content_type [String] The content type of images_file.
197
- # @param images_filename [String] The filename for images_file.
198
197
  # @param accept_language [String] The desired language of parts of the response. See the response for details.
199
198
  # @return [IBMCloudSdkCore::DetailedResponse] A `IBMCloudSdkCore::DetailedResponse` object representing the response.
200
- def detect_faces(images_file: nil, url: nil, accept_language: nil, images_file_content_type: nil, images_filename: nil)
199
+ def detect_faces(images_file: nil, images_filename: nil, images_file_content_type: nil, url: nil, accept_language: nil)
201
200
  headers = {
202
201
  "Accept-Language" => accept_language
203
202
  }
204
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "watson_vision_combined", service_version: "V3", operation_id: "detect_faces")
203
+ sdk_headers = Common.new.get_sdk_headers("watson_vision_combined", "V3", "detect_faces")
204
+ headers.merge!(sdk_headers)
205
205
 
206
206
  params = {
207
207
  "version" => @version
@@ -236,7 +236,7 @@ module IBMWatson
236
236
  #########################
237
237
 
238
238
  ##
239
- # @!method create_classifier(name:, positive_examples:, negative_examples: nil, positive_examples_filename: nil, negative_examples_filename: nil)
239
+ # @!method create_classifier(name:, positive_examples:, negative_examples: nil, negative_examples_filename: nil)
240
240
  # Create a classifier.
241
241
  # Train a new multi-faceted classifier on the uploaded image data. Create your
242
242
  # custom classifier with positive or negative examples. Include at least two sets of
@@ -247,7 +247,7 @@ module IBMWatson
247
247
  # file names, and classifier and class names). The service assumes UTF-8 encoding if
248
248
  # it encounters non-ASCII characters.
249
249
  # @param name [String] The name of the new classifier. Encode special characters in UTF-8.
250
- # @param positive_examples [Hash] A .zip file of images that depict the visual subject of a class in the new
250
+ # @param positive_examples [File] A .zip file of images that depict the visual subject of a class in the new
251
251
  # classifier. You can include more than one positive example file in a call.
252
252
  #
253
253
  # Specify the parameter name by appending `_positive_examples` to the class name.
@@ -263,20 +263,18 @@ module IBMWatson
263
263
  # of the new classifier. Must contain a minimum of 10 images.
264
264
  #
265
265
  # Encode special characters in the file name in UTF-8.
266
- # @param positive_examples_filename [Hash] The filename for positive_examples.
267
266
  # @param negative_examples_filename [String] The filename for negative_examples.
268
267
  # @return [IBMCloudSdkCore::DetailedResponse] A `IBMCloudSdkCore::DetailedResponse` object representing the response.
269
- def create_classifier(name:, positive_examples:, negative_examples: nil, positive_examples_filename: nil, negative_examples_filename: nil)
268
+ def create_classifier(name:, positive_examples:, negative_examples: nil, negative_examples_filename: nil)
270
269
  raise ArgumentError.new("name must be provided") if name.nil?
271
270
 
272
271
  raise ArgumentError.new("positive_examples must be a hash") unless positive_examples.is_a?(Hash)
273
272
  raise ArgumentError.new("positive_examples must have at least one hash entry") if positive_examples.empty?
274
273
 
275
- raise ArgumentError.new("positive_examples_filename must be a hash") unless positive_examples_filename.nil? || positive_examples_filename.is_a?(Hash)
276
-
277
274
  headers = {
278
275
  }
279
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "watson_vision_combined", service_version: "V3", operation_id: "create_classifier")
276
+ sdk_headers = Common.new.get_sdk_headers("watson_vision_combined", "V3", "create_classifier")
277
+ headers.merge!(sdk_headers)
280
278
 
281
279
  params = {
282
280
  "version" => @version
@@ -291,8 +289,7 @@ module IBMWatson
291
289
  unless value.instance_of?(StringIO) || value.instance_of?(File)
292
290
  value = value.respond_to?(:to_json) ? StringIO.new(value.to_json) : StringIO.new(value)
293
291
  end
294
- filename = positive_examples_filename[key] if !positive_examples_filename.nil? && positive_examples_filename.key?(key)
295
- filename = value.path if filename.nil? && value.respond_to?(:path)
292
+ filename = value.path if value.respond_to?(:path)
296
293
  form_data[part_name.to_sym] = HTTP::FormData::File.new(value, content_type: "application/octet-stream", filename: filename)
297
294
  end
298
295
 
@@ -318,31 +315,32 @@ module IBMWatson
318
315
  end
319
316
 
320
317
  ##
321
- # @!method list_classifiers(verbose: nil)
322
- # Retrieve a list of classifiers.
323
- # @param verbose [Boolean] Specify `true` to return details about the classifiers. Omit this parameter to
324
- # return a brief list of classifiers.
325
- # @return [IBMCloudSdkCore::DetailedResponse] A `IBMCloudSdkCore::DetailedResponse` object representing the response.
326
- def list_classifiers(verbose: nil)
318
+ # @!method delete_classifier(classifier_id:)
319
+ # Delete a classifier.
320
+ # @param classifier_id [String] The ID of the classifier.
321
+ # @return [nil]
322
+ def delete_classifier(classifier_id:)
323
+ raise ArgumentError.new("classifier_id must be provided") if classifier_id.nil?
324
+
327
325
  headers = {
328
326
  }
329
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "watson_vision_combined", service_version: "V3", operation_id: "list_classifiers")
327
+ sdk_headers = Common.new.get_sdk_headers("watson_vision_combined", "V3", "delete_classifier")
328
+ headers.merge!(sdk_headers)
330
329
 
331
330
  params = {
332
- "version" => @version,
333
- "verbose" => verbose
331
+ "version" => @version
334
332
  }
335
333
 
336
- method_url = "/v3/classifiers"
334
+ method_url = "/v3/classifiers/%s" % [ERB::Util.url_encode(classifier_id)]
337
335
 
338
- response = request(
339
- method: "GET",
336
+ request(
337
+ method: "DELETE",
340
338
  url: method_url,
341
339
  headers: headers,
342
340
  params: params,
343
341
  accept_json: true
344
342
  )
345
- response
343
+ nil
346
344
  end
347
345
 
348
346
  ##
@@ -356,7 +354,8 @@ module IBMWatson
356
354
 
357
355
  headers = {
358
356
  }
359
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "watson_vision_combined", service_version: "V3", operation_id: "get_classifier")
357
+ sdk_headers = Common.new.get_sdk_headers("watson_vision_combined", "V3", "get_classifier")
358
+ headers.merge!(sdk_headers)
360
359
 
361
360
  params = {
362
361
  "version" => @version
@@ -375,11 +374,40 @@ module IBMWatson
375
374
  end
376
375
 
377
376
  ##
378
- # @!method update_classifier(classifier_id:, positive_examples: nil, negative_examples: nil, positive_examples_filename: nil, negative_examples_filename: nil)
377
+ # @!method list_classifiers(verbose: nil)
378
+ # Retrieve a list of classifiers.
379
+ # @param verbose [Boolean] Specify `true` to return details about the classifiers. Omit this parameter to
380
+ # return a brief list of classifiers.
381
+ # @return [IBMCloudSdkCore::DetailedResponse] A `IBMCloudSdkCore::DetailedResponse` object representing the response.
382
+ def list_classifiers(verbose: nil)
383
+ headers = {
384
+ }
385
+ sdk_headers = Common.new.get_sdk_headers("watson_vision_combined", "V3", "list_classifiers")
386
+ headers.merge!(sdk_headers)
387
+
388
+ params = {
389
+ "version" => @version,
390
+ "verbose" => verbose
391
+ }
392
+
393
+ method_url = "/v3/classifiers"
394
+
395
+ response = request(
396
+ method: "GET",
397
+ url: method_url,
398
+ headers: headers,
399
+ params: params,
400
+ accept_json: true
401
+ )
402
+ response
403
+ end
404
+
405
+ ##
406
+ # @!method update_classifier(classifier_id:, positive_examples: nil, negative_examples: nil, negative_examples_filename: nil)
379
407
  # Update a classifier.
380
- # Update a custom classifier by adding new positive or negative classes (examples)
381
- # or by adding new images to existing classes. You must supply at least one set of
382
- # positive or negative examples. For details, see [Updating custom
408
+ # Update a custom classifier by adding new positive or negative classes or by adding
409
+ # new images to existing classes. You must supply at least one set of positive or
410
+ # negative examples. For details, see [Updating custom
383
411
  # classifiers](https://cloud.ibm.com/docs/services/visual-recognition/customizing.html#updating-custom-classifiers).
384
412
  #
385
413
  # Encode all names in UTF-8 if they contain non-ASCII characters (.zip and image
@@ -391,7 +419,7 @@ module IBMWatson
391
419
  # previous requests. The retrained property shows the last time the classifier
392
420
  # retraining finished.
393
421
  # @param classifier_id [String] The ID of the classifier.
394
- # @param positive_examples [Hash] A .zip file of images that depict the visual subject of a class in the classifier.
422
+ # @param positive_examples [File] A .zip file of images that depict the visual subject of a class in the classifier.
395
423
  # The positive examples create or update classes in the classifier. You can include
396
424
  # more than one positive example file in a call.
397
425
  #
@@ -408,19 +436,17 @@ module IBMWatson
408
436
  # of the new classifier. Must contain a minimum of 10 images.
409
437
  #
410
438
  # Encode special characters in the file name in UTF-8.
411
- # @param positive_examples_filename [Hash] The filename for positive_examples.
412
439
  # @param negative_examples_filename [String] The filename for negative_examples.
413
440
  # @return [IBMCloudSdkCore::DetailedResponse] A `IBMCloudSdkCore::DetailedResponse` object representing the response.
414
- def update_classifier(classifier_id:, positive_examples: nil, negative_examples: nil, positive_examples_filename: nil, negative_examples_filename: nil)
441
+ def update_classifier(classifier_id:, positive_examples: nil, negative_examples: nil, negative_examples_filename: nil)
415
442
  raise ArgumentError.new("classifier_id must be provided") if classifier_id.nil?
416
443
 
417
444
  raise ArgumentError.new("positive_examples must be a hash") unless positive_examples.nil? || positive_examples.is_a?(Hash)
418
445
 
419
- raise ArgumentError.new("positive_examples_filename must be a hash") unless positive_examples_filename.nil? || positive_examples_filename.is_a?(Hash)
420
-
421
446
  headers = {
422
447
  }
423
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "watson_vision_combined", service_version: "V3", operation_id: "update_classifier")
448
+ sdk_headers = Common.new.get_sdk_headers("watson_vision_combined", "V3", "update_classifier")
449
+ headers.merge!(sdk_headers)
424
450
 
425
451
  params = {
426
452
  "version" => @version
@@ -433,8 +459,7 @@ module IBMWatson
433
459
  unless value.instance_of?(StringIO) || value.instance_of?(File)
434
460
  value = value.respond_to?(:to_json) ? StringIO.new(value.to_json) : StringIO.new(value)
435
461
  end
436
- filename = positive_examples_filename[key] if !positive_examples_filename.nil? && positive_examples_filename.key?(key)
437
- filename = value.path if filename.nil? && value.respond_to?(:path)
462
+ filename = value.path if value.respond_to?(:path)
438
463
  form_data[part_name.to_sym] = HTTP::FormData::File.new(value, content_type: "application/octet-stream", filename: filename)
439
464
  end
440
465
 
@@ -458,34 +483,6 @@ module IBMWatson
458
483
  )
459
484
  response
460
485
  end
461
-
462
- ##
463
- # @!method delete_classifier(classifier_id:)
464
- # Delete a classifier.
465
- # @param classifier_id [String] The ID of the classifier.
466
- # @return [nil]
467
- def delete_classifier(classifier_id:)
468
- raise ArgumentError.new("classifier_id must be provided") if classifier_id.nil?
469
-
470
- headers = {
471
- }
472
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "watson_vision_combined", service_version: "V3", operation_id: "delete_classifier")
473
-
474
- params = {
475
- "version" => @version
476
- }
477
-
478
- method_url = "/v3/classifiers/%s" % [ERB::Util.url_encode(classifier_id)]
479
-
480
- request(
481
- method: "DELETE",
482
- url: method_url,
483
- headers: headers,
484
- params: params,
485
- accept_json: true
486
- )
487
- nil
488
- end
489
486
  #########################
490
487
  # Core ML
491
488
  #########################
@@ -502,7 +499,8 @@ module IBMWatson
502
499
 
503
500
  headers = {
504
501
  }
505
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "watson_vision_combined", service_version: "V3", operation_id: "get_core_ml_model")
502
+ sdk_headers = Common.new.get_sdk_headers("watson_vision_combined", "V3", "get_core_ml_model")
503
+ headers.merge!(sdk_headers)
506
504
 
507
505
  params = {
508
506
  "version" => @version
@@ -540,7 +538,8 @@ module IBMWatson
540
538
 
541
539
  headers = {
542
540
  }
543
- headers = Common.new.get_sdk_headers(headers: headers, service_name: "watson_vision_combined", service_version: "V3", operation_id: "delete_user_data")
541
+ sdk_headers = Common.new.get_sdk_headers("watson_vision_combined", "V3", "delete_user_data")
542
+ headers.merge!(sdk_headers)
544
543
 
545
544
  params = {
546
545
  "version" => @version,
@@ -53,7 +53,7 @@ class WebSocketClient
53
53
  end
54
54
  elsif json_object.key?("results") || json_object.key?("speaker_labels")
55
55
  hypothesis = ""
56
- unless json_object["results"].nil?
56
+ unless json_object["results"].nil? && json_object["speaker_labels"].nil?
57
57
  hypothesis = json_object.dig("results", 0, "alternatives", 0, "transcript")
58
58
  b_final = json_object.dig("results", 0, "final")
59
59
  transcripts = extract_transcripts(alternatives: json_object.dig("results", 0, "alternatives"))