omniai 1.0.2 → 1.0.3
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 +4 -4
- data/lib/omniai/chat/completion.rb +11 -1
- data/lib/omniai/chat/usage.rb +16 -22
- data/lib/omniai/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9ef66e140869ad45643072513852d7ed06439fb6a7fecda4f552ecb34c14ddb1
|
4
|
+
data.tar.gz: 55740c3bdc98c9d83330b1a45b1b83d760b279d388830e83fce8a671f635d26d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f335ee44a2460431d3f7bf83991448569f451930102ba1d3714c79af225db08d22467269c1543434a987de2d0f70bbe33faece99c4f291cc67032e7a5121721b
|
7
|
+
data.tar.gz: 33ca9dbf52c1a7af1c60683db4fd31680f4e3230da6c139591c6c62796616767b67109862963d8b1b7b93c6af46143e140471a606b20f0a6457b3f1989c87030
|
@@ -33,7 +33,17 @@ module OmniAI
|
|
33
33
|
|
34
34
|
# @return [OmniAI::Chat::Usage]
|
35
35
|
def usage
|
36
|
-
|
36
|
+
return unless @data['usage']
|
37
|
+
|
38
|
+
input_tokens = @data['usage']['input_tokens'] || @data['usage']['prompt_tokens']
|
39
|
+
output_tokens = @data['usage']['output_tokens'] || @data['usage']['completion_tokens']
|
40
|
+
total_tokens = @data['usage']['total_tokens'] || (input_tokens + output_tokens)
|
41
|
+
|
42
|
+
@usage ||= Usage.new(
|
43
|
+
input_tokens:,
|
44
|
+
output_tokens:,
|
45
|
+
total_tokens:
|
46
|
+
)
|
37
47
|
end
|
38
48
|
|
39
49
|
# @return [Array<OmniAI::Chat::Choice>]
|
data/lib/omniai/chat/usage.rb
CHANGED
@@ -3,37 +3,31 @@
|
|
3
3
|
module OmniAI
|
4
4
|
class Chat
|
5
5
|
# A usage returned by the API.
|
6
|
-
class
|
7
|
-
attr_accessor :
|
6
|
+
class Usage
|
7
|
+
attr_accessor :input_tokens, :output_tokens, :total_tokens
|
8
8
|
|
9
|
-
# @param
|
10
|
-
|
11
|
-
|
9
|
+
# @param input_tokens [Integer]
|
10
|
+
# @param output_tokens [Integer]
|
11
|
+
# @param total_tokens [Integer]
|
12
|
+
def initialize(input_tokens:, output_tokens:, total_tokens:)
|
13
|
+
@input_tokens = input_tokens
|
14
|
+
@output_tokens = output_tokens
|
15
|
+
@total_tokens = total_tokens
|
12
16
|
end
|
13
17
|
|
14
|
-
# @return [Integer
|
18
|
+
# @return [Integer]
|
15
19
|
def completion_tokens
|
16
|
-
@
|
20
|
+
@output_tokens
|
17
21
|
end
|
18
22
|
|
19
|
-
# @return [Integer
|
23
|
+
# @return [Integer]
|
20
24
|
def prompt_tokens
|
21
|
-
@
|
25
|
+
@input_tokens
|
22
26
|
end
|
23
27
|
|
24
|
-
# @return [
|
25
|
-
def
|
26
|
-
|
27
|
-
end
|
28
|
-
|
29
|
-
# @return [Integer, nil]
|
30
|
-
def input_tokens
|
31
|
-
@data['input_tokens']
|
32
|
-
end
|
33
|
-
|
34
|
-
# @return [Integer, nil]
|
35
|
-
def output_tokens
|
36
|
-
@data['output_tokens']
|
28
|
+
# @return [String]
|
29
|
+
def inspect
|
30
|
+
"#<#{self.class.name} input_tokens=#{input_tokens} output_tokens=#{output_tokens} total_tokens=#{total_tokens}>"
|
37
31
|
end
|
38
32
|
end
|
39
33
|
end
|
data/lib/omniai/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: omniai
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kevin Sylvestre
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-06-
|
11
|
+
date: 2024-06-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: event_stream_parser
|