Class: OpenAI::Resources::Audio::Transcriptions

Inherits:
Object
  • Object
show all
Defined in:
lib/openai/resources/audio/transcriptions.rb,
sig/openai/resources/audio/transcriptions.rbs

Overview

Turn audio into text or text into audio.

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ Transcriptions

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of Transcriptions.

Parameters:



131
132
133
# File 'lib/openai/resources/audio/transcriptions.rb', line 131

def initialize(client:)
  @client = client
end

Instance Method Details

#create(file:, model:, chunking_strategy: nil, include: nil, known_speaker_names: nil, known_speaker_references: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) ⇒ OpenAI::Models::Audio::Transcription, ...

See OpenAI::Resources::Audio::Transcriptions#create_streaming for streaming counterpart.

Some parameter documentations has been truncated, see Models::Audio::TranscriptionCreateParams for more details.

Transcribes audio into the input language.

Returns a transcription object in json, diarized_json, or verbose_json format, or a stream of transcript events.

Parameters:

Returns:

See Also:



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# File 'lib/openai/resources/audio/transcriptions.rb', line 48

def create(params)
  parsed, options = OpenAI::Audio::TranscriptionCreateParams.dump_request(params)
  if parsed[:stream]
    message = "Please use `#create_streaming` for the streaming use case."
    raise ArgumentError.new(message)
  end
  @client.request(
    method: :post,
    path: "audio/transcriptions",
    headers: {"content-type" => "multipart/form-data"},
    body: parsed,
    model: OpenAI::Models::Audio::TranscriptionCreateResponse,
    security: {bearer_auth: true},
    options: options
  )
end

#create_streaming(file:, model:, chunking_strategy: nil, include: nil, known_speaker_names: nil, known_speaker_references: nil, language: nil, prompt: nil, response_format: nil, temperature: nil, timestamp_granularities: nil, request_options: {}) ⇒ OpenAI::Internal::Stream<OpenAI::Models::Audio::TranscriptionTextSegmentEvent, OpenAI::Models::Audio::TranscriptionTextDeltaEvent, OpenAI::Models::Audio::TranscriptionTextDoneEvent>

See OpenAI::Resources::Audio::Transcriptions#create for non-streaming counterpart.

Some parameter documentations has been truncated, see Models::Audio::TranscriptionCreateParams for more details.

Transcribes audio into the input language.

Returns a transcription object in json, diarized_json, or verbose_json format, or a stream of transcript events.

Parameters:

Returns:

See Also:



105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
# File 'lib/openai/resources/audio/transcriptions.rb', line 105

def create_streaming(params)
  parsed, options = OpenAI::Audio::TranscriptionCreateParams.dump_request(params)
  unless parsed.fetch(:stream, true)
    message = "Please use `#create` for the non-streaming use case."
    raise ArgumentError.new(message)
  end
  parsed.store(:stream, true)
  @client.request(
    method: :post,
    path: "audio/transcriptions",
    headers: {
      "content-type" => "multipart/form-data",
      "accept" => "text/event-stream",
      "accept-encoding" => "identity"
    },
    body: parsed,
    stream: OpenAI::Internal::Stream,
    model: OpenAI::Audio::TranscriptionStreamEvent,
    security: {bearer_auth: true},
    options: options
  )
end