durable-llm 0.1.3 → 0.1.5

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.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/.envrc +7 -0
  3. data/CHANGELOG.md +5 -0
  4. data/CONFIGURE.md +132 -0
  5. data/Gemfile +7 -9
  6. data/Gemfile.lock +3 -3
  7. data/README.md +1 -0
  8. data/Rakefile +6 -6
  9. data/devenv.lock +103 -0
  10. data/devenv.nix +9 -0
  11. data/devenv.yaml +15 -0
  12. data/durable-llm.gemspec +44 -0
  13. data/examples/openai_quick_complete.rb +3 -1
  14. data/lib/durable/llm/cli.rb +247 -60
  15. data/lib/durable/llm/client.rb +92 -11
  16. data/lib/durable/llm/configuration.rb +174 -23
  17. data/lib/durable/llm/errors.rb +185 -0
  18. data/lib/durable/llm/providers/anthropic.rb +246 -36
  19. data/lib/durable/llm/providers/azure_openai.rb +347 -0
  20. data/lib/durable/llm/providers/base.rb +106 -9
  21. data/lib/durable/llm/providers/cohere.rb +227 -0
  22. data/lib/durable/llm/providers/deepseek.rb +233 -0
  23. data/lib/durable/llm/providers/fireworks.rb +278 -0
  24. data/lib/durable/llm/providers/google.rb +301 -0
  25. data/lib/durable/llm/providers/groq.rb +108 -29
  26. data/lib/durable/llm/providers/huggingface.rb +122 -18
  27. data/lib/durable/llm/providers/mistral.rb +431 -0
  28. data/lib/durable/llm/providers/openai.rb +162 -25
  29. data/lib/durable/llm/providers/opencode.rb +253 -0
  30. data/lib/durable/llm/providers/openrouter.rb +256 -0
  31. data/lib/durable/llm/providers/perplexity.rb +273 -0
  32. data/lib/durable/llm/providers/together.rb +346 -0
  33. data/lib/durable/llm/providers/xai.rb +355 -0
  34. data/lib/durable/llm/providers.rb +103 -15
  35. data/lib/durable/llm/version.rb +5 -1
  36. data/lib/durable/llm.rb +143 -3
  37. data/lib/durable.rb +29 -4
  38. data/sig/durable/llm.rbs +302 -1
  39. metadata +50 -36
metadata CHANGED
@@ -1,59 +1,58 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: durable-llm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Durable Programming Team
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2024-10-09 00:00:00.000000000 Z
10
+ date: 1980-01-01 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
- name: faraday
13
+ name: event_stream_parser
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
- - - ">"
16
+ - - "~>"
18
17
  - !ruby/object:Gem::Version
19
18
  version: '1.0'
20
19
  type: :runtime
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
- - - ">"
23
+ - - "~>"
25
24
  - !ruby/object:Gem::Version
26
25
  version: '1.0'
27
26
  - !ruby/object:Gem::Dependency
28
- name: json
27
+ name: faraday
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
- - - "~>"
30
+ - - ">"
32
31
  - !ruby/object:Gem::Version
33
- version: '2.6'
32
+ version: '1.0'
34
33
  type: :runtime
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
- - - "~>"
37
+ - - ">"
39
38
  - !ruby/object:Gem::Version
40
- version: '2.6'
39
+ version: '1.0'
41
40
  - !ruby/object:Gem::Dependency
42
- name: thor
41
+ name: highline
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
44
  - - "~>"
46
45
  - !ruby/object:Gem::Version
47
- version: '1.3'
46
+ version: '3.1'
48
47
  type: :runtime
49
48
  prerelease: false
50
49
  version_requirements: !ruby/object:Gem::Requirement
51
50
  requirements:
52
51
  - - "~>"
53
52
  - !ruby/object:Gem::Version
54
- version: '1.3'
53
+ version: '3.1'
55
54
  - !ruby/object:Gem::Dependency
56
- name: zeitwerk
55
+ name: json
57
56
  requirement: !ruby/object:Gem::Requirement
58
57
  requirements:
59
58
  - - "~>"
@@ -67,89 +66,89 @@ dependencies:
67
66
  - !ruby/object:Gem::Version
68
67
  version: '2.6'
69
68
  - !ruby/object:Gem::Dependency
70
- name: highline
69
+ name: thor
71
70
  requirement: !ruby/object:Gem::Requirement
72
71
  requirements:
73
72
  - - "~>"
74
73
  - !ruby/object:Gem::Version
75
- version: '3.1'
74
+ version: '1.3'
76
75
  type: :runtime
77
76
  prerelease: false
78
77
  version_requirements: !ruby/object:Gem::Requirement
79
78
  requirements:
80
79
  - - "~>"
81
80
  - !ruby/object:Gem::Version
82
- version: '3.1'
81
+ version: '1.3'
83
82
  - !ruby/object:Gem::Dependency
84
- name: event_stream_parser
83
+ name: zeitwerk
85
84
  requirement: !ruby/object:Gem::Requirement
86
85
  requirements:
87
86
  - - "~>"
88
87
  - !ruby/object:Gem::Version
89
- version: '1.0'
88
+ version: '2.6'
90
89
  type: :runtime
91
90
  prerelease: false
92
91
  version_requirements: !ruby/object:Gem::Requirement
93
92
  requirements:
94
93
  - - "~>"
95
94
  - !ruby/object:Gem::Version
96
- version: '1.0'
95
+ version: '2.6'
97
96
  - !ruby/object:Gem::Dependency
98
- name: minitest
97
+ name: dotenv
99
98
  requirement: !ruby/object:Gem::Requirement
100
99
  requirements:
101
100
  - - "~>"
102
101
  - !ruby/object:Gem::Version
103
- version: '5.0'
102
+ version: '2.8'
104
103
  type: :development
105
104
  prerelease: false
106
105
  version_requirements: !ruby/object:Gem::Requirement
107
106
  requirements:
108
107
  - - "~>"
109
108
  - !ruby/object:Gem::Version
110
- version: '5.0'
109
+ version: '2.8'
111
110
  - !ruby/object:Gem::Dependency
112
- name: mocha
111
+ name: minitest
113
112
  requirement: !ruby/object:Gem::Requirement
114
113
  requirements:
115
114
  - - "~>"
116
115
  - !ruby/object:Gem::Version
117
- version: '2.1'
116
+ version: '5.0'
118
117
  type: :development
119
118
  prerelease: false
120
119
  version_requirements: !ruby/object:Gem::Requirement
121
120
  requirements:
122
121
  - - "~>"
123
122
  - !ruby/object:Gem::Version
124
- version: '2.1'
123
+ version: '5.0'
125
124
  - !ruby/object:Gem::Dependency
126
- name: rubocop
125
+ name: mocha
127
126
  requirement: !ruby/object:Gem::Requirement
128
127
  requirements:
129
128
  - - "~>"
130
129
  - !ruby/object:Gem::Version
131
- version: '1.0'
130
+ version: '2.1'
132
131
  type: :development
133
132
  prerelease: false
134
133
  version_requirements: !ruby/object:Gem::Requirement
135
134
  requirements:
136
135
  - - "~>"
137
136
  - !ruby/object:Gem::Version
138
- version: '1.0'
137
+ version: '2.1'
139
138
  - !ruby/object:Gem::Dependency
140
- name: dotenv
139
+ name: rubocop
141
140
  requirement: !ruby/object:Gem::Requirement
142
141
  requirements:
143
142
  - - "~>"
144
143
  - !ruby/object:Gem::Version
145
- version: '2.8'
144
+ version: '1.0'
146
145
  type: :development
147
146
  prerelease: false
148
147
  version_requirements: !ruby/object:Gem::Requirement
149
148
  requirements:
150
149
  - - "~>"
151
150
  - !ruby/object:Gem::Version
152
- version: '2.8'
151
+ version: '1.0'
153
152
  - !ruby/object:Gem::Dependency
154
153
  name: vcr
155
154
  requirement: !ruby/object:Gem::Requirement
@@ -172,13 +171,19 @@ executables: []
172
171
  extensions: []
173
172
  extra_rdoc_files: []
174
173
  files:
174
+ - ".envrc"
175
175
  - CHANGELOG.md
176
176
  - CLI.md
177
+ - CONFIGURE.md
177
178
  - Gemfile
178
179
  - Gemfile.lock
179
180
  - LICENSE.txt
180
181
  - README.md
181
182
  - Rakefile
183
+ - devenv.lock
184
+ - devenv.nix
185
+ - devenv.yaml
186
+ - durable-llm.gemspec
182
187
  - enterprise/GET_ENTERPRISE.md
183
188
  - examples/anthropic.md
184
189
  - examples/openai.md
@@ -191,10 +196,21 @@ files:
191
196
  - lib/durable/llm/errors.rb
192
197
  - lib/durable/llm/providers.rb
193
198
  - lib/durable/llm/providers/anthropic.rb
199
+ - lib/durable/llm/providers/azure_openai.rb
194
200
  - lib/durable/llm/providers/base.rb
201
+ - lib/durable/llm/providers/cohere.rb
202
+ - lib/durable/llm/providers/deepseek.rb
203
+ - lib/durable/llm/providers/fireworks.rb
204
+ - lib/durable/llm/providers/google.rb
195
205
  - lib/durable/llm/providers/groq.rb
196
206
  - lib/durable/llm/providers/huggingface.rb
207
+ - lib/durable/llm/providers/mistral.rb
197
208
  - lib/durable/llm/providers/openai.rb
209
+ - lib/durable/llm/providers/opencode.rb
210
+ - lib/durable/llm/providers/openrouter.rb
211
+ - lib/durable/llm/providers/perplexity.rb
212
+ - lib/durable/llm/providers/together.rb
213
+ - lib/durable/llm/providers/xai.rb
198
214
  - lib/durable/llm/version.rb
199
215
  - sig/durable/llm.rbs
200
216
  homepage: https://github.com/durableprogramming/durable-llm
@@ -205,7 +221,6 @@ metadata:
205
221
  homepage_uri: https://github.com/durableprogramming/durable-llm
206
222
  source_code_uri: https://github.com/durableprogramming/durable-llm
207
223
  changelog_uri: https://github.com/durableprogramming/durable-llm/blob/main/CHANGELOG.md
208
- post_install_message:
209
224
  rdoc_options: []
210
225
  require_paths:
211
226
  - lib
@@ -220,8 +235,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
220
235
  - !ruby/object:Gem::Version
221
236
  version: '0'
222
237
  requirements: []
223
- rubygems_version: 3.4.10
224
- signing_key:
238
+ rubygems_version: 3.7.1
225
239
  specification_version: 4
226
240
  summary: A Ruby gem providing access to LLM APIs from various vendors
227
241
  test_files: []