omniai 1.1.0 → 1.1.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7a31351fb7cc352c108f55c3df8d57020bf2d520b935dce75eb87e62e4a0737c
4
- data.tar.gz: a8ca504f40836a0072dcf4549767632a19bb6497da53390404fc1399ae264522
3
+ metadata.gz: facf65abfc03bc2fedc0572bbdebe5baca776da08b3eba9f4bde4b082bf037a7
4
+ data.tar.gz: 265613b4ab126f34d68d079241d8f4d2eae96c3e5c4f083aa9ff2761003a5678
5
5
  SHA512:
6
- metadata.gz: 76f22ab7edf30b0f5aedbe071d7a1ff0fd5c1b2a5ab1f5a36273b9041c62a27796a510a4c73fd52f27606ff4a5e8d84fbb46cea03a6949da71ada89cdc62daba
7
- data.tar.gz: 73d4718a9a593e5c520f48f8a1fa6c06560a2f3447c609f1a85ecbbda9c7d55dc45a6bec9d57de5054b1936be1d21266bbcb3324096a8337db1cf05d7359f09a
6
+ metadata.gz: a689d6591eabb97d47fea58a73c2b7fcc133c62aea51180bffe846976086b3819099708757cae85e20c5db3e38964b9dc7c0dc1cbc9fa8b076bc322a56dec4cb
7
+ data.tar.gz: bc80184100a4ca2888fb8a0ee3b93ac8d9d301e875e541e692b9a08564eb85fa59d58fcd88e35c4d72142624621ef73174b276c8da95ae53bfcabd1fc1ae776d
data/README.md CHANGED
@@ -80,7 +80,7 @@ messages = [
80
80
  'What is the capital of Canada?'
81
81
  ]
82
82
  completion = client.chat(messages, model: '...', temperature: 0.7, format: :json)
83
- completion.choice.message.content
83
+ completion.choice.message.content # '...'
84
84
  ```
85
85
 
86
86
  #### w/ a Collection of Files
@@ -100,7 +100,7 @@ message = {
100
100
  }
101
101
 
102
102
  completion = client.chat(message)
103
- completion.choice.message.content
103
+ completion.choice.message.content # '...'
104
104
  ```
105
105
 
106
106
  #### Streaming
@@ -117,5 +117,6 @@ client.chat('Tell me a joke.', stream:)
117
117
  Clients that support chat (e.g. OpenAI w/ "Whisper", etc) convert recordings to text via the following calls:
118
118
 
119
119
  ```ruby
120
- client.transcribe(file.path)
120
+ transcription = client.transcribe(file.path)
121
+ transcription.text # '...'
121
122
  ```
data/lib/omniai/client.rb CHANGED
@@ -56,7 +56,7 @@ module OmniAI
56
56
  # @param format [Symbol] :text, :srt, :vtt, or :json (default)
57
57
  #
58
58
  # @return text [OmniAI::Transcribe::Transcription]
59
- def transcribe(file, model:, language: nil, prompt: nil, temperature: nil, format: Transcription::Format::JSON)
59
+ def transcribe(file, model:, language: nil, prompt: nil, temperature: nil, format: nil)
60
60
  raise NotImplementedError, "#{self.class.name}#speak undefined"
61
61
  end
62
62
  end
@@ -4,22 +4,20 @@ module OmniAI
4
4
  class Transcribe
5
5
  # A transcription returned by the API.
6
6
  class Transcription
7
- attr_accessor :data, :format
7
+ attr_accessor :text, :model, :format
8
8
 
9
- # @param data [Hash]
10
- def initialize(data:, format:)
11
- @data = data
9
+ # @param text [String]
10
+ # @param model [String]
11
+ # @param format [String]
12
+ def initialize(text:, model:, format:)
13
+ @text = text
14
+ @model = model
12
15
  @format = format
13
16
  end
14
17
 
15
- # @return [String]
16
- def text
17
- @data['text']
18
- end
19
-
20
18
  # @return [String]
21
19
  def inspect
22
- "#<#{self.class} text=#{text.inspect} format=#{format.inspect}>"
20
+ "#<#{self.class} text=#{text.inspect}>"
23
21
  end
24
22
  end
25
23
  end
@@ -119,8 +119,8 @@ module OmniAI
119
119
  response = request!
120
120
  raise HTTPError, response.flush unless response.status.ok?
121
121
 
122
- data = @format.eql?(Format::JSON) ? response.parse : { text: String(response.body) }
123
- Transcription.new(format: @format, data:)
122
+ text = @format.nil? || @format.eql?(Format::JSON) ? response.parse['text'] : String(response.body)
123
+ Transcription.new(text:, model: @model, format: @format)
124
124
  end
125
125
 
126
126
  protected
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module OmniAI
4
- VERSION = '1.1.0'
4
+ VERSION = '1.1.2'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omniai
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Sylvestre