lammy 0.9.0 → 0.10.0

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: 2ff43d19861d0ae98debcecac11133a2abb26a9a7cd44636b63ba5195bf6984f
4
- data.tar.gz: 0dbe0ed8665a34ce50cc6c0862d77f926b298f353035018ebdb27dbe1e7d3674
3
+ metadata.gz: d2e0b41537900b2d85dbdc0615b3fdbaa4d2c299c7bb725d96537aa80a92779e
4
+ data.tar.gz: f23d7da872f98736f60a25008f3e819e757ca0ffcc4745f83ba029d97141a410
5
5
  SHA512:
6
- metadata.gz: 07e4aaae22128eb3e16447c136bab320c5887649611cb8acc5f29709c53841c52442040fd8a21609d2dd6df19e5565950f618334ca6fe1cb2515f71d25d09202
7
- data.tar.gz: 3b5352026f96575f874187b02f02ec57795748409853fb59e52df490223e05563ea5f53530d2c83e1930b4666601da9382c39f83bd2e43cd071c74aae52f93d0
6
+ metadata.gz: fb5968d47e3f60ccd0235146fd46c65b777dccc0860c310bedfcd4e5415412fee1bd6b1f73c9e52849eb27b21b5ac2bfc72b0fc00790199adcafbdec3451361c
7
+ data.tar.gz: 33c1932bc38493bac9b71414057554cd46672270dc135dc33a51477ddadd3292eb8bed2ac57b33708b730c8eaec816ab051fa7c8fc7c99cc029b6465037ebd9f
data/lib/lammy/chat.rb CHANGED
@@ -32,7 +32,11 @@ module Lammy
32
32
  raise "Unsupported model: #{model}"
33
33
  end
34
34
 
35
- client.chat(user_message, @system_message, @stream)
35
+ if !settings[:async] || @_with_sync_lammy
36
+ client.chat(user_message, @system_message, @stream)
37
+ else
38
+ ::Lammy::Job.perform_async(klass.name, self.id, method_name, *args)
39
+ end
36
40
  end
37
41
  end
38
42
  end
data/lib/lammy/claude.rb CHANGED
@@ -7,17 +7,11 @@ module Lammy
7
7
  # Use the Claude API's Ruby library
8
8
  class Claude
9
9
  MODELS = [
10
- /\Aclaude-3-5-sonnet-latest\z/,
11
- /\Aclaude-3-5-haiku-latest\z/,
12
- /\Aclaude-3-opus-latest\z/,
13
- /\Aclaude-3-5-sonnet-20240620\z/,
14
- /\Aclaude-3-5-haiku-20241022\z/,
15
- /\Aclaude-3-opus-20240229\z/,
16
- /\Aclaude-3-sonnet-20240229\z/,
17
- /\Aclaude-3-haiku-20240307\z/,
18
- /\Aclaude-2\.1\z/,
19
- /\Aclaude-2\.0\z/,
20
- /\Aclaude-instant-1\.2\z/
10
+ /\Aclaude-3-7-(?:sonnet|haiku|opus)(?:-\d{8}|-latest)?\z/,
11
+ /\Aclaude-3-5-(?:sonnet|haiku|opus)(?:-\d{8}|-latest)?\z/,
12
+ /\Aclaude-3-(?:sonnet|haiku|opus)(?:-\d{8}|-latest)?\z/,
13
+ /\Aclaude-2(?:\.\d)?\z/,
14
+ /\Aclaude-instant-(?:\d\.\d)?\z/
21
15
  ].freeze
22
16
 
23
17
  attr_reader :settings
data/lib/lammy/openai.rb CHANGED
@@ -9,15 +9,10 @@ module Lammy
9
9
  class OpenAI
10
10
  MODELS = [
11
11
  /^gpt-4o(?:-\d{4}-\d{2}-\d{2})?$/, /^chatgpt-4o-latest$/,
12
-
13
12
  /^gpt-4o-mini(?:-\d{4}-\d{2}-\d{2})?$/,
14
-
15
13
  /^o1(?:-preview(?:-\d{4}-\d{2}-\d{2})?)?$/,
16
-
17
14
  /^o1-mini(?:-\d{4}-\d{2}-\d{2})?$/,
18
-
19
15
  /^gpt-3\.5-turbo$/,
20
-
21
16
  /^gpt-4(?:-turbo(?:-\d{4}-\d{2}-\d{2})?|-32k|-\d{4}-preview|-vision-preview)?$/,
22
17
  /^gpt-3\.5-turbo-(?:\d{4}|\d{2}k-\d{4}|-instruct)$/,
23
18
  /^(?:davinci|babbage)-002$/
data/lib/lammy.rb CHANGED
@@ -32,6 +32,12 @@ module L
32
32
  base.extend ClassMethods
33
33
  end
34
34
 
35
+ def _lammy_perform_now(&block)
36
+ @_with_sync_lammy = true
37
+ block.call
38
+ @_with_sync_lammy = false
39
+ end
40
+
35
41
  # Wrap generative methods with handlers
36
42
  module ClassMethods
37
43
  def llm(**kwargs)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lammy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 0.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kamil Nicieja
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-12-31 00:00:00.000000000 Z
11
+ date: 2025-03-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: anthropic