gen-ai 0.3.0 → 0.3.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: 1bbe9213620c2cb3e76d8b77bf895408a3e48398ac6bddf2a9cad20e5933fee4
4
- data.tar.gz: 479fe26279cff268b640aba8afd100422f1c2548b0842543081c829637bbf8dd
3
+ metadata.gz: 17dcb3c412f63caf6c69bd68617658683828aab1d5554daf8943a78ebf73eb0f
4
+ data.tar.gz: 23a6f04f28ac6535ac7b2ab965390d40fbdc92d4daf08ceba4ed5fe59b55ab74
5
5
  SHA512:
6
- metadata.gz: dacb5b6e3a5b56e3d2dc0833b9169ef77146decd34010a20945f69a974a273c5a3e7316893c7c0a2809b6e96f0113b976cd9d3dad036060c6a054ca6a9170831
7
- data.tar.gz: c0fd1e20f18d89c828b32a76f8c43af78fa7b0e3730f8172256e193e65eeec5a4eba26b32bb08ddcf9f2147196c2ba20d37c1eba6fdbbbea8f91787319723f79
6
+ metadata.gz: 179541fd7a5c4b3e15b589e101fe4daf0f442d4b7ecc4af3b63f3c826bd14ac5a4386269c1c39a7f2e33583050c65ab5b41b726f21c2355e695d718e8aedf044
7
+ data.tar.gz: cdd5b4223b1d756c6b1812ce8bd1d8b182ff029af68ab024b0f160d3315ff0917b616587e1efaf393d11516859bab762596c22241230b091f166c7eef186ac39
@@ -55,7 +55,7 @@ module GenAI
55
55
  def build_chat_options(message, context, history, examples, options)
56
56
  {
57
57
  model: options.delete(:model) || CHAT_COMPLETION_MODEL,
58
- messages: history.append({ author: DEFAULT_ROLE, content: message }),
58
+ messages: history.append(build_message(message, history)),
59
59
  examples: compose_examples(examples),
60
60
  context: context
61
61
  }.merge(options)
@@ -87,6 +87,14 @@ module GenAI
87
87
  object.respond_to?(:to_ary) ? object.to_ary || [object] : [object]
88
88
  end
89
89
 
90
+ def build_message(message, messages)
91
+ if message.is_a?(String)
92
+ { author: messages.dig(0, :author) || DEFAULT_ROLE, content: message }
93
+ else
94
+ message
95
+ end
96
+ end
97
+
90
98
  def extract_embeddings(responses)
91
99
  responses.map { |response| response.dig('embedding', 'value') }
92
100
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GenAI
4
- VERSION = '0.3.0'
4
+ VERSION = '0.3.2'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gen-ai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Chaplinsky
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-11-24 00:00:00.000000000 Z
11
+ date: 2024-01-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday