ruby_llm 0.1.0.pre47 → 0.1.0.pre49
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/ruby_llm/error.rb +1 -1
- data/lib/ruby_llm/models.rb +0 -2
- data/lib/ruby_llm/version.rb +1 -1
- data/lib/tasks/models.rake +2 -0
- data/ruby_llm.gemspec +5 -5
- metadata +21 -27
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c7a86805562863f11f52b4cc62826401774291b1a299a328d8622e8a721ffcd9
|
4
|
+
data.tar.gz: 7757aa1b1ad19804c508a7988dd50fe91acce3e9ab0f66f69e013eb59c5c9196
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b4ce44b2baa5cc565b52f162acc8ce30517616425d7f3d320fc1357d64f9f657532f3c9f20fbbb2dc8a6cd340f5ba84bad912fbdceab184929ce971766c09071
|
7
|
+
data.tar.gz: 6c15ce1c00cda64980d451a470ab1007bb7914fce9da43d3a1ce2bf08950c15bdd96ab2b80d9749292561e22903acc4974c20265b58a26d4130bd86f28018a7e
|
data/lib/ruby_llm/error.rb
CHANGED
@@ -60,7 +60,7 @@ module RubyLLM
|
|
60
60
|
raise RateLimitError.new(response, message || 'Rate limit exceeded - please wait a moment')
|
61
61
|
when 500
|
62
62
|
raise ServerError.new(response, message || 'API server error - please try again')
|
63
|
-
when 503
|
63
|
+
when 502..503
|
64
64
|
raise ServiceUnavailableError.new(response, message || 'API server unavailable - please try again later')
|
65
65
|
else
|
66
66
|
raise Error.new(response, message || 'An unknown error occurred')
|
data/lib/ruby_llm/models.rb
CHANGED
@@ -23,8 +23,6 @@ module RubyLLM
|
|
23
23
|
# Class method to refresh model data
|
24
24
|
def self.refresh!
|
25
25
|
models = RubyLLM.providers.flat_map(&:list_models).sort_by(&:id)
|
26
|
-
# Write to models.json
|
27
|
-
File.write(File.expand_path('models.json', __dir__), JSON.pretty_generate(models.map(&:to_h)))
|
28
26
|
@instance = new(models)
|
29
27
|
end
|
30
28
|
|
data/lib/ruby_llm/version.rb
CHANGED
data/lib/tasks/models.rake
CHANGED
@@ -76,6 +76,8 @@ namespace :models do # rubocop:disable Metrics/BlockLength
|
|
76
76
|
|
77
77
|
# Refresh models (now returns self instead of models array)
|
78
78
|
models = RubyLLM.models.refresh!.all
|
79
|
+
# Write to models.json
|
80
|
+
File.write(File.expand_path('../ruby_llm/models.json', __dir__), JSON.pretty_generate(models.map(&:to_h)))
|
79
81
|
|
80
82
|
puts "Updated models.json with #{models.size} models:"
|
81
83
|
RubyLLM::Provider.providers.each do |provider_sym, provider_module|
|
data/ruby_llm.gemspec
CHANGED
@@ -35,9 +35,9 @@ Gem::Specification.new do |spec|
|
|
35
35
|
spec.require_paths = ['lib']
|
36
36
|
|
37
37
|
# Runtime dependencies
|
38
|
-
spec.add_dependency 'event_stream_parser', '
|
39
|
-
spec.add_dependency 'faraday', '
|
40
|
-
spec.add_dependency 'faraday-multipart', '
|
41
|
-
spec.add_dependency 'faraday-retry', '
|
42
|
-
spec.add_dependency 'zeitwerk', '
|
38
|
+
spec.add_dependency 'event_stream_parser', '~> 1'
|
39
|
+
spec.add_dependency 'faraday', '~> 2'
|
40
|
+
spec.add_dependency 'faraday-multipart', '~> 1'
|
41
|
+
spec.add_dependency 'faraday-retry', '~> 2'
|
42
|
+
spec.add_dependency 'zeitwerk', '~> 2'
|
43
43
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_llm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.0.
|
4
|
+
version: 0.1.0.pre49
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Carmine Paolino
|
@@ -14,78 +14,72 @@ dependencies:
|
|
14
14
|
name: event_stream_parser
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
20
|
-
- - "<"
|
21
|
-
- !ruby/object:Gem::Version
|
22
|
-
version: 2.0.0
|
19
|
+
version: '1'
|
23
20
|
type: :runtime
|
24
21
|
prerelease: false
|
25
22
|
version_requirements: !ruby/object:Gem::Requirement
|
26
23
|
requirements:
|
27
|
-
- - "
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: 0.3.0
|
30
|
-
- - "<"
|
24
|
+
- - "~>"
|
31
25
|
- !ruby/object:Gem::Version
|
32
|
-
version:
|
26
|
+
version: '1'
|
33
27
|
- !ruby/object:Gem::Dependency
|
34
28
|
name: faraday
|
35
29
|
requirement: !ruby/object:Gem::Requirement
|
36
30
|
requirements:
|
37
|
-
- - "
|
31
|
+
- - "~>"
|
38
32
|
- !ruby/object:Gem::Version
|
39
|
-
version: '2
|
33
|
+
version: '2'
|
40
34
|
type: :runtime
|
41
35
|
prerelease: false
|
42
36
|
version_requirements: !ruby/object:Gem::Requirement
|
43
37
|
requirements:
|
44
|
-
- - "
|
38
|
+
- - "~>"
|
45
39
|
- !ruby/object:Gem::Version
|
46
|
-
version: '2
|
40
|
+
version: '2'
|
47
41
|
- !ruby/object:Gem::Dependency
|
48
42
|
name: faraday-multipart
|
49
43
|
requirement: !ruby/object:Gem::Requirement
|
50
44
|
requirements:
|
51
|
-
- - "
|
45
|
+
- - "~>"
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version: '1
|
47
|
+
version: '1'
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
51
|
requirements:
|
58
|
-
- - "
|
52
|
+
- - "~>"
|
59
53
|
- !ruby/object:Gem::Version
|
60
|
-
version: '1
|
54
|
+
version: '1'
|
61
55
|
- !ruby/object:Gem::Dependency
|
62
56
|
name: faraday-retry
|
63
57
|
requirement: !ruby/object:Gem::Requirement
|
64
58
|
requirements:
|
65
|
-
- - "
|
59
|
+
- - "~>"
|
66
60
|
- !ruby/object:Gem::Version
|
67
|
-
version: '2
|
61
|
+
version: '2'
|
68
62
|
type: :runtime
|
69
63
|
prerelease: false
|
70
64
|
version_requirements: !ruby/object:Gem::Requirement
|
71
65
|
requirements:
|
72
|
-
- - "
|
66
|
+
- - "~>"
|
73
67
|
- !ruby/object:Gem::Version
|
74
|
-
version: '2
|
68
|
+
version: '2'
|
75
69
|
- !ruby/object:Gem::Dependency
|
76
70
|
name: zeitwerk
|
77
71
|
requirement: !ruby/object:Gem::Requirement
|
78
72
|
requirements:
|
79
|
-
- - "
|
73
|
+
- - "~>"
|
80
74
|
- !ruby/object:Gem::Version
|
81
|
-
version: '2
|
75
|
+
version: '2'
|
82
76
|
type: :runtime
|
83
77
|
prerelease: false
|
84
78
|
version_requirements: !ruby/object:Gem::Requirement
|
85
79
|
requirements:
|
86
|
-
- - "
|
80
|
+
- - "~>"
|
87
81
|
- !ruby/object:Gem::Version
|
88
|
-
version: '2
|
82
|
+
version: '2'
|
89
83
|
description: A delightful Ruby way to work with AI. Chat in text, analyze and generate
|
90
84
|
images, understand audio, and use tools through a unified interface to OpenAI, Anthropic,
|
91
85
|
Google, and DeepSeek. Built for developer happiness with automatic token counting,
|