assemblyai 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -18,16 +18,26 @@ module AssemblyAI
18
18
  class TranscriptOptionalParams
19
19
  # @return [AssemblyAI::Transcripts::TranscriptLanguageCode]
20
20
  attr_reader :language_code
21
+ # @return [Boolean] Enable [Automatic language
22
+ # www.assemblyai.com/docs/models/speech-recognition#automatic-language-detection),
23
+ # either true or false.
24
+ attr_reader :language_detection
25
+ # @return [Float] The confidence threshold for the automatically detected language.
26
+ # An error will be returned if the language confidence is below this threshold.
27
+ # Defaults to 0.
28
+ attr_reader :language_confidence_threshold
29
+ # @return [AssemblyAI::Transcripts::SpeechModel]
30
+ attr_reader :speech_model
21
31
  # @return [Boolean] Enable Automatic Punctuation, can be true or false
22
32
  attr_reader :punctuate
23
33
  # @return [Boolean] Enable Text Formatting, can be true or false
24
34
  attr_reader :format_text
35
+ # @return [Boolean] Transcribe Filler Words, like "umm", in your media file; can be true or false
36
+ attr_reader :disfluencies
25
37
  # @return [Boolean] Enable [Dual
26
38
  # ://www.assemblyai.com/docs/models/speech-recognition#dual-channel-transcription)
27
39
  # transcription, can be true or false.
28
40
  attr_reader :dual_channel
29
- # @return [AssemblyAI::Transcripts::SpeechModel]
30
- attr_reader :speech_model
31
41
  # @return [String] The URL to which we send webhook requests. We sends two different types of
32
42
  # webhook requests. One request when a transcript is completed or failed, and one
33
43
  # request when the redacted audio is ready if redact_pii_audio is enabled.
@@ -46,7 +56,7 @@ module AssemblyAI
46
56
  attr_reader :audio_end_at
47
57
  # @return [Array<String>] The list of custom vocabulary to boost transcription probability for
48
58
  attr_reader :word_boost
49
- # @return [AssemblyAI::Transcripts::TranscriptBoostParam] The word boost parameter value
59
+ # @return [AssemblyAI::Transcripts::TranscriptBoostParam] How much to boost specified words
50
60
  attr_reader :boost_param
51
61
  # @return [Boolean] Filter profanity from the transcribed text, can be true or false
52
62
  attr_reader :filter_profanity
@@ -89,14 +99,8 @@ module AssemblyAI
89
99
  # Detection](https://www.assemblyai.com/docs/models/topic-detection), can be true
90
100
  # or false
91
101
  attr_reader :iab_categories
92
- # @return [Boolean] Enable [Automatic language
93
- # www.assemblyai.com/docs/models/speech-recognition#automatic-language-detection),
94
- # either true or false.
95
- attr_reader :language_detection
96
102
  # @return [Array<AssemblyAI::Transcripts::TranscriptCustomSpelling>] Customize how words are spelled and formatted using to and from values
97
103
  attr_reader :custom_spelling
98
- # @return [Boolean] Transcribe Filler Words, like "umm", in your media file; can be true or false
99
- attr_reader :disfluencies
100
104
  # @return [Boolean] Enable [Sentiment
101
105
  # Analysis](https://www.assemblyai.com/docs/models/sentiment-analysis), can be
102
106
  # true or false
@@ -131,12 +135,19 @@ module AssemblyAI
131
135
  OMIT = Object.new
132
136
 
133
137
  # @param language_code [AssemblyAI::Transcripts::TranscriptLanguageCode]
138
+ # @param language_detection [Boolean] Enable [Automatic language
139
+ # www.assemblyai.com/docs/models/speech-recognition#automatic-language-detection),
140
+ # either true or false.
141
+ # @param language_confidence_threshold [Float] The confidence threshold for the automatically detected language.
142
+ # An error will be returned if the language confidence is below this threshold.
143
+ # Defaults to 0.
144
+ # @param speech_model [AssemblyAI::Transcripts::SpeechModel]
134
145
  # @param punctuate [Boolean] Enable Automatic Punctuation, can be true or false
135
146
  # @param format_text [Boolean] Enable Text Formatting, can be true or false
147
+ # @param disfluencies [Boolean] Transcribe Filler Words, like "umm", in your media file; can be true or false
136
148
  # @param dual_channel [Boolean] Enable [Dual
137
149
  # ://www.assemblyai.com/docs/models/speech-recognition#dual-channel-transcription)
138
150
  # transcription, can be true or false.
139
- # @param speech_model [AssemblyAI::Transcripts::SpeechModel]
140
151
  # @param webhook_url [String] The URL to which we send webhook requests. We sends two different types of
141
152
  # webhook requests. One request when a transcript is completed or failed, and one
142
153
  # request when the redacted audio is ready if redact_pii_audio is enabled.
@@ -148,7 +159,7 @@ module AssemblyAI
148
159
  # @param audio_start_from [Integer] The point in time, in milliseconds, to begin transcribing in your media file
149
160
  # @param audio_end_at [Integer] The point in time, in milliseconds, to stop transcribing in your media file
150
161
  # @param word_boost [Array<String>] The list of custom vocabulary to boost transcription probability for
151
- # @param boost_param [AssemblyAI::Transcripts::TranscriptBoostParam] The word boost parameter value
162
+ # @param boost_param [AssemblyAI::Transcripts::TranscriptBoostParam] How much to boost specified words
152
163
  # @param filter_profanity [Boolean] Filter profanity from the transcribed text, can be true or false
153
164
  # @param redact_pii [Boolean] Redact PII from the transcribed text using the Redact PII model, can be true or
154
165
  # false
@@ -179,11 +190,7 @@ module AssemblyAI
179
190
  # @param iab_categories [Boolean] Enable [Topic
180
191
  # Detection](https://www.assemblyai.com/docs/models/topic-detection), can be true
181
192
  # or false
182
- # @param language_detection [Boolean] Enable [Automatic language
183
- # www.assemblyai.com/docs/models/speech-recognition#automatic-language-detection),
184
- # either true or false.
185
193
  # @param custom_spelling [Array<AssemblyAI::Transcripts::TranscriptCustomSpelling>] Customize how words are spelled and formatted using to and from values
186
- # @param disfluencies [Boolean] Transcribe Filler Words, like "umm", in your media file; can be true or false
187
194
  # @param sentiment_analysis [Boolean] Enable [Sentiment
188
195
  # Analysis](https://www.assemblyai.com/docs/models/sentiment-analysis), can be
189
196
  # true or false
@@ -202,13 +209,16 @@ module AssemblyAI
202
209
  # @param topics [Array<String>] The list of custom topics
203
210
  # @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
204
211
  # @return [AssemblyAI::Transcripts::TranscriptOptionalParams]
205
- def initialize(language_code: OMIT, punctuate: OMIT, format_text: OMIT, dual_channel: OMIT, speech_model: OMIT,
206
- webhook_url: OMIT, webhook_auth_header_name: OMIT, webhook_auth_header_value: OMIT, auto_highlights: OMIT, audio_start_from: OMIT, audio_end_at: OMIT, word_boost: OMIT, boost_param: OMIT, filter_profanity: OMIT, redact_pii: OMIT, redact_pii_audio: OMIT, redact_pii_audio_quality: OMIT, redact_pii_policies: OMIT, redact_pii_sub: OMIT, speaker_labels: OMIT, speakers_expected: OMIT, content_safety: OMIT, content_safety_confidence: OMIT, iab_categories: OMIT, language_detection: OMIT, custom_spelling: OMIT, disfluencies: OMIT, sentiment_analysis: OMIT, auto_chapters: OMIT, entity_detection: OMIT, speech_threshold: OMIT, summarization: OMIT, summary_model: OMIT, summary_type: OMIT, custom_topics: OMIT, topics: OMIT, additional_properties: nil)
212
+ def initialize(language_code: OMIT, language_detection: OMIT, language_confidence_threshold: OMIT,
213
+ speech_model: OMIT, punctuate: OMIT, format_text: OMIT, disfluencies: OMIT, dual_channel: OMIT, webhook_url: OMIT, webhook_auth_header_name: OMIT, webhook_auth_header_value: OMIT, auto_highlights: OMIT, audio_start_from: OMIT, audio_end_at: OMIT, word_boost: OMIT, boost_param: OMIT, filter_profanity: OMIT, redact_pii: OMIT, redact_pii_audio: OMIT, redact_pii_audio_quality: OMIT, redact_pii_policies: OMIT, redact_pii_sub: OMIT, speaker_labels: OMIT, speakers_expected: OMIT, content_safety: OMIT, content_safety_confidence: OMIT, iab_categories: OMIT, custom_spelling: OMIT, sentiment_analysis: OMIT, auto_chapters: OMIT, entity_detection: OMIT, speech_threshold: OMIT, summarization: OMIT, summary_model: OMIT, summary_type: OMIT, custom_topics: OMIT, topics: OMIT, additional_properties: nil)
207
214
  @language_code = language_code if language_code != OMIT
215
+ @language_detection = language_detection if language_detection != OMIT
216
+ @language_confidence_threshold = language_confidence_threshold if language_confidence_threshold != OMIT
217
+ @speech_model = speech_model if speech_model != OMIT
208
218
  @punctuate = punctuate if punctuate != OMIT
209
219
  @format_text = format_text if format_text != OMIT
220
+ @disfluencies = disfluencies if disfluencies != OMIT
210
221
  @dual_channel = dual_channel if dual_channel != OMIT
211
- @speech_model = speech_model if speech_model != OMIT
212
222
  @webhook_url = webhook_url if webhook_url != OMIT
213
223
  @webhook_auth_header_name = webhook_auth_header_name if webhook_auth_header_name != OMIT
214
224
  @webhook_auth_header_value = webhook_auth_header_value if webhook_auth_header_value != OMIT
@@ -228,9 +238,7 @@ module AssemblyAI
228
238
  @content_safety = content_safety if content_safety != OMIT
229
239
  @content_safety_confidence = content_safety_confidence if content_safety_confidence != OMIT
230
240
  @iab_categories = iab_categories if iab_categories != OMIT
231
- @language_detection = language_detection if language_detection != OMIT
232
241
  @custom_spelling = custom_spelling if custom_spelling != OMIT
233
- @disfluencies = disfluencies if disfluencies != OMIT
234
242
  @sentiment_analysis = sentiment_analysis if sentiment_analysis != OMIT
235
243
  @auto_chapters = auto_chapters if auto_chapters != OMIT
236
244
  @entity_detection = entity_detection if entity_detection != OMIT
@@ -243,10 +251,13 @@ module AssemblyAI
243
251
  @additional_properties = additional_properties
244
252
  @_field_set = {
245
253
  "language_code": language_code,
254
+ "language_detection": language_detection,
255
+ "language_confidence_threshold": language_confidence_threshold,
256
+ "speech_model": speech_model,
246
257
  "punctuate": punctuate,
247
258
  "format_text": format_text,
259
+ "disfluencies": disfluencies,
248
260
  "dual_channel": dual_channel,
249
- "speech_model": speech_model,
250
261
  "webhook_url": webhook_url,
251
262
  "webhook_auth_header_name": webhook_auth_header_name,
252
263
  "webhook_auth_header_value": webhook_auth_header_value,
@@ -266,9 +277,7 @@ module AssemblyAI
266
277
  "content_safety": content_safety,
267
278
  "content_safety_confidence": content_safety_confidence,
268
279
  "iab_categories": iab_categories,
269
- "language_detection": language_detection,
270
280
  "custom_spelling": custom_spelling,
271
- "disfluencies": disfluencies,
272
281
  "sentiment_analysis": sentiment_analysis,
273
282
  "auto_chapters": auto_chapters,
274
283
  "entity_detection": entity_detection,
@@ -291,10 +300,13 @@ module AssemblyAI
291
300
  struct = JSON.parse(json_object, object_class: OpenStruct)
292
301
  parsed_json = JSON.parse(json_object)
293
302
  language_code = struct["language_code"]
303
+ language_detection = struct["language_detection"]
304
+ language_confidence_threshold = struct["language_confidence_threshold"]
305
+ speech_model = struct["speech_model"]
294
306
  punctuate = struct["punctuate"]
295
307
  format_text = struct["format_text"]
308
+ disfluencies = struct["disfluencies"]
296
309
  dual_channel = struct["dual_channel"]
297
- speech_model = struct["speech_model"]
298
310
  webhook_url = struct["webhook_url"]
299
311
  webhook_auth_header_name = struct["webhook_auth_header_name"]
300
312
  webhook_auth_header_value = struct["webhook_auth_header_value"]
@@ -314,12 +326,10 @@ module AssemblyAI
314
326
  content_safety = struct["content_safety"]
315
327
  content_safety_confidence = struct["content_safety_confidence"]
316
328
  iab_categories = struct["iab_categories"]
317
- language_detection = struct["language_detection"]
318
329
  custom_spelling = parsed_json["custom_spelling"]&.map do |v|
319
330
  v = v.to_json
320
331
  AssemblyAI::Transcripts::TranscriptCustomSpelling.from_json(json_object: v)
321
332
  end
322
- disfluencies = struct["disfluencies"]
323
333
  sentiment_analysis = struct["sentiment_analysis"]
324
334
  auto_chapters = struct["auto_chapters"]
325
335
  entity_detection = struct["entity_detection"]
@@ -331,10 +341,13 @@ module AssemblyAI
331
341
  topics = struct["topics"]
332
342
  new(
333
343
  language_code: language_code,
344
+ language_detection: language_detection,
345
+ language_confidence_threshold: language_confidence_threshold,
346
+ speech_model: speech_model,
334
347
  punctuate: punctuate,
335
348
  format_text: format_text,
349
+ disfluencies: disfluencies,
336
350
  dual_channel: dual_channel,
337
- speech_model: speech_model,
338
351
  webhook_url: webhook_url,
339
352
  webhook_auth_header_name: webhook_auth_header_name,
340
353
  webhook_auth_header_value: webhook_auth_header_value,
@@ -354,9 +367,7 @@ module AssemblyAI
354
367
  content_safety: content_safety,
355
368
  content_safety_confidence: content_safety_confidence,
356
369
  iab_categories: iab_categories,
357
- language_detection: language_detection,
358
370
  custom_spelling: custom_spelling,
359
- disfluencies: disfluencies,
360
371
  sentiment_analysis: sentiment_analysis,
361
372
  auto_chapters: auto_chapters,
362
373
  entity_detection: entity_detection,
@@ -385,10 +396,13 @@ module AssemblyAI
385
396
  # @return [Void]
386
397
  def self.validate_raw(obj:)
387
398
  obj.language_code&.is_a?(AssemblyAI::Transcripts::TranscriptLanguageCode) != false || raise("Passed value for field obj.language_code is not the expected type, validation failed.")
399
+ obj.language_detection&.is_a?(Boolean) != false || raise("Passed value for field obj.language_detection is not the expected type, validation failed.")
400
+ obj.language_confidence_threshold&.is_a?(Float) != false || raise("Passed value for field obj.language_confidence_threshold is not the expected type, validation failed.")
401
+ obj.speech_model&.is_a?(AssemblyAI::Transcripts::SpeechModel) != false || raise("Passed value for field obj.speech_model is not the expected type, validation failed.")
388
402
  obj.punctuate&.is_a?(Boolean) != false || raise("Passed value for field obj.punctuate is not the expected type, validation failed.")
389
403
  obj.format_text&.is_a?(Boolean) != false || raise("Passed value for field obj.format_text is not the expected type, validation failed.")
404
+ obj.disfluencies&.is_a?(Boolean) != false || raise("Passed value for field obj.disfluencies is not the expected type, validation failed.")
390
405
  obj.dual_channel&.is_a?(Boolean) != false || raise("Passed value for field obj.dual_channel is not the expected type, validation failed.")
391
- obj.speech_model&.is_a?(AssemblyAI::Transcripts::SpeechModel) != false || raise("Passed value for field obj.speech_model is not the expected type, validation failed.")
392
406
  obj.webhook_url&.is_a?(String) != false || raise("Passed value for field obj.webhook_url is not the expected type, validation failed.")
393
407
  obj.webhook_auth_header_name&.is_a?(String) != false || raise("Passed value for field obj.webhook_auth_header_name is not the expected type, validation failed.")
394
408
  obj.webhook_auth_header_value&.is_a?(String) != false || raise("Passed value for field obj.webhook_auth_header_value is not the expected type, validation failed.")
@@ -408,9 +422,7 @@ module AssemblyAI
408
422
  obj.content_safety&.is_a?(Boolean) != false || raise("Passed value for field obj.content_safety is not the expected type, validation failed.")
409
423
  obj.content_safety_confidence&.is_a?(Integer) != false || raise("Passed value for field obj.content_safety_confidence is not the expected type, validation failed.")
410
424
  obj.iab_categories&.is_a?(Boolean) != false || raise("Passed value for field obj.iab_categories is not the expected type, validation failed.")
411
- obj.language_detection&.is_a?(Boolean) != false || raise("Passed value for field obj.language_detection is not the expected type, validation failed.")
412
425
  obj.custom_spelling&.is_a?(Array) != false || raise("Passed value for field obj.custom_spelling is not the expected type, validation failed.")
413
- obj.disfluencies&.is_a?(Boolean) != false || raise("Passed value for field obj.disfluencies is not the expected type, validation failed.")
414
426
  obj.sentiment_analysis&.is_a?(Boolean) != false || raise("Passed value for field obj.sentiment_analysis is not the expected type, validation failed.")
415
427
  obj.auto_chapters&.is_a?(Boolean) != false || raise("Passed value for field obj.auto_chapters is not the expected type, validation failed.")
416
428
  obj.entity_detection&.is_a?(Boolean) != false || raise("Passed value for field obj.entity_detection is not the expected type, validation failed.")
data/lib/gemconfig.rb CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  module AssemblyAI
4
4
  module Gemconfig
5
- VERSION = "1.0.2"
5
+ VERSION = "1.1.0"
6
6
  AUTHORS = ["AssemblyAI"].freeze
7
7
  EMAIL = "support@assemblyai.com"
8
8
  SUMMARY = "AssemblyAI Ruby SDK"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: assemblyai
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - AssemblyAI
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-08-20 00:00:00.000000000 Z
11
+ date: 2024-08-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: async-http-faraday