ruby_conversations 1.0.12 → 1.0.13
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aff2d69d93269766f9c467bf51769bf4fa6e96843fff2019b7920f7229aabd1c
|
4
|
+
data.tar.gz: d9bfcd7fc3f4c1900c51dc8576e5f51d9725cbc284eec25fa5bbe60fda419ad6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6d8b57d3de0e5344ba6bd9eb8ff84a62ba0eb0bf81553604113bd6f40146148d9cffcc60d65c91922e97e3703021e5898bd7362a3b97b555e47c826985e50d76
|
7
|
+
data.tar.gz: 755d57ff124a880a2a1f70fe9f1d573206e7c3002c8f813bfdff960adb30211110728cd4a9487ba8afc7599b273a59e2d0939f996157cbfcc43c9c04a0097a32
|
@@ -8,8 +8,14 @@ module RubyConversations
|
|
8
8
|
|
9
9
|
def execute(system_message: nil)
|
10
10
|
validate_conversation_state
|
11
|
-
|
12
|
-
|
11
|
+
chat_messages = generate_chat_response(system_message)
|
12
|
+
|
13
|
+
if tool.present?
|
14
|
+
tool_calls = chat_messages.filter { |message| message.tool_calls.present? }
|
15
|
+
raise "No tool call found for tool '#{tool}'. Please check the prompt." if tool_calls.empty?
|
16
|
+
end
|
17
|
+
|
18
|
+
store_and_update_conversation(chat_messages)
|
13
19
|
end
|
14
20
|
|
15
21
|
def llm
|
@@ -31,14 +37,15 @@ module RubyConversations
|
|
31
37
|
def generate_chat_response(system_message)
|
32
38
|
chat = setup_llm_chat(system_message: system_message)
|
33
39
|
chat.ask(messages.last.request)
|
40
|
+
chat.messages
|
34
41
|
end
|
35
42
|
|
36
|
-
def store_and_update_conversation(
|
37
|
-
update_last_message_response(messages.last,
|
43
|
+
def store_and_update_conversation(chat_messages)
|
44
|
+
update_last_message_response(messages.last, chat_messages)
|
38
45
|
RubyConversations.client.store_conversation_or_message(self, messages.last)
|
39
46
|
|
40
47
|
{
|
41
|
-
response:
|
48
|
+
response: chat_messages,
|
42
49
|
conversation: self
|
43
50
|
}
|
44
51
|
end
|
@@ -48,8 +55,8 @@ module RubyConversations
|
|
48
55
|
build_chat(system_message)
|
49
56
|
end
|
50
57
|
|
51
|
-
def update_last_message_response(message,
|
52
|
-
message.response =
|
58
|
+
def update_last_message_response(message, chat_messages)
|
59
|
+
message.response = chat_messages.map(&:to_h).to_json
|
53
60
|
end
|
54
61
|
|
55
62
|
def build_chat(system_message)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_conversations
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Paul Shippy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-04-
|
11
|
+
date: 2025-04-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|