smart_prompt 0.3.4 → 0.3.6
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/CHANGELOG.md +5 -1
- data/lib/smart_prompt/conversation.rb +0 -32
- data/lib/smart_prompt/engine.rb +0 -4
- data/lib/smart_prompt/version.rb +1 -1
- metadata +4 -18
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 61eec571d913b8579730c5d4b27f75577ae3599b3e4d4028390d216b522cecb0
|
|
4
|
+
data.tar.gz: 356fe2e97fae980e40c3e98cc272e0689e46fe40f5b1aa919b6a455c39ff993e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 56b5109f329ee8253bcd3a601b92ea2752c2f32c6c085d6a2b3f932b509002f20b7854d489c98eb3c1165a607503db43ca1c00df7f9ca08a4d537396f45e0849
|
|
7
|
+
data.tar.gz: 308591ffbe9e66e782d81919f75f865cb029703a03cb891ed6e27aca8061ade44bbcc436e85785e793727055ef31c66b32fd5da4d9eca0f40417d8a10c533421
|
data/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.3.6] - 2026-04-08
|
|
9
|
+
### Changed
|
|
10
|
+
- Bumped `ruby-openai` dependency from `8.1.0` to `8.3.0`
|
|
11
|
+
|
|
8
12
|
## [0.3.2] - 2025-05-18
|
|
9
13
|
### Added
|
|
10
14
|
- Initial CHANGELOG.md file
|
|
@@ -34,4 +38,4 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
34
38
|
- Initial gem release
|
|
35
39
|
- Llama.cpp adapter
|
|
36
40
|
- Basic configuration parameters
|
|
37
|
-
- Environment bug fixes
|
|
41
|
+
- Environment bug fixes
|
|
@@ -31,9 +31,6 @@ module SmartPrompt
|
|
|
31
31
|
|
|
32
32
|
def model(model_name)
|
|
33
33
|
@model_name = model_name
|
|
34
|
-
if @engine.config["better_prompt_db"]
|
|
35
|
-
BetterPrompt.add_model(@current_llm_name, @model_name)
|
|
36
|
-
end
|
|
37
34
|
end
|
|
38
35
|
|
|
39
36
|
def temperature(temperature)
|
|
@@ -58,15 +55,9 @@ module SmartPrompt
|
|
|
58
55
|
raise "Template #{template_name} not found" unless @templates.key?(template_name)
|
|
59
56
|
content = @templates[template_name].render(params)
|
|
60
57
|
add_message({ role: "user", content: content }, with_history)
|
|
61
|
-
if @engine.config["better_prompt_db"]
|
|
62
|
-
BetterPrompt.add_prompt(template_name, "user", content)
|
|
63
|
-
end
|
|
64
58
|
self
|
|
65
59
|
else
|
|
66
60
|
add_message({ role: "user", content: template_name }, with_history)
|
|
67
|
-
if @engine.config["better_prompt_db"]
|
|
68
|
-
BetterPrompt.add_prompt("NULL", "user", template_name)
|
|
69
|
-
end
|
|
70
61
|
self
|
|
71
62
|
end
|
|
72
63
|
end
|
|
@@ -74,9 +65,6 @@ module SmartPrompt
|
|
|
74
65
|
def sys_msg(message, params)
|
|
75
66
|
@sys_msg = message
|
|
76
67
|
add_message({ role: "system", content: message }, params[:with_history])
|
|
77
|
-
if @engine.config["better_prompt_db"]
|
|
78
|
-
BetterPrompt.add_prompt("NULL", "system", message)
|
|
79
|
-
end
|
|
80
68
|
self
|
|
81
69
|
end
|
|
82
70
|
|
|
@@ -91,13 +79,6 @@ module SmartPrompt
|
|
|
91
79
|
def send_msg(params = {})
|
|
92
80
|
Retriable.retriable(RETRY_OPTIONS) do
|
|
93
81
|
raise ConfigurationError, "No LLM selected" if @current_llm.nil?
|
|
94
|
-
if @engine.config["better_prompt_db"]
|
|
95
|
-
if params[:with_history]
|
|
96
|
-
@last_call_id = BetterPrompt.add_model_call(@current_llm_name, @model_name, history_messages, false, @temperature, 0, 0.0, 0, @tools)
|
|
97
|
-
else
|
|
98
|
-
@last_call_id = BetterPrompt.add_model_call(@current_llm_name, @model_name, @messages, false, @temperature, 0, 0.0, 0, @tools)
|
|
99
|
-
end
|
|
100
|
-
end
|
|
101
82
|
if params[:with_history]
|
|
102
83
|
@last_response = @current_llm.send_request(history_messages, @model_name, @temperature, @tools, nil)
|
|
103
84
|
else
|
|
@@ -106,9 +87,6 @@ module SmartPrompt
|
|
|
106
87
|
if @last_response == ""
|
|
107
88
|
@last_response = @current_llm.last_response
|
|
108
89
|
end
|
|
109
|
-
if @engine.config["better_prompt_db"]
|
|
110
|
-
BetterPrompt.add_response(@last_call_id, @last_response, false)
|
|
111
|
-
end
|
|
112
90
|
@messages = []
|
|
113
91
|
@messages << { role: "system", content: @sys_msg }
|
|
114
92
|
@last_response
|
|
@@ -120,21 +98,11 @@ module SmartPrompt
|
|
|
120
98
|
def send_msg_by_stream(params = {}, &proc)
|
|
121
99
|
Retriable.retriable(RETRY_OPTIONS) do
|
|
122
100
|
raise ConfigurationError, "No LLM selected" if @current_llm.nil?
|
|
123
|
-
if @engine.config["better_prompt_db"]
|
|
124
|
-
if params[:with_history]
|
|
125
|
-
@last_call_id = BetterPrompt.add_model_call(@current_llm_name, @model_name, history_messages, true, @temperature, 0, 0.0, 0, @tools)
|
|
126
|
-
else
|
|
127
|
-
@last_call_id = BetterPrompt.add_model_call(@current_llm_name, @model_name, @messages, true, @temperature, 0, 0.0, 0, @tools)
|
|
128
|
-
end
|
|
129
|
-
end
|
|
130
101
|
if params[:with_history]
|
|
131
102
|
@current_llm.send_request(history_messages, @model_name, @temperature, @tools, proc)
|
|
132
103
|
else
|
|
133
104
|
@current_llm.send_request(@messages, @model_name, @temperature, @tools, proc)
|
|
134
105
|
end
|
|
135
|
-
if @engine.config["better_prompt_db"]
|
|
136
|
-
BetterPrompt.add_response(@last_call_id, @engine.stream_response, true)
|
|
137
|
-
end
|
|
138
106
|
@messages = []
|
|
139
107
|
@messages << { role: "system", content: @sys_msg }
|
|
140
108
|
end
|
data/lib/smart_prompt/engine.rb
CHANGED
|
@@ -64,10 +64,6 @@ module SmartPrompt
|
|
|
64
64
|
SmartPrompt.logger = Logger.new(@config["logger_file"])
|
|
65
65
|
end
|
|
66
66
|
SmartPrompt.logger.info "Loading configuration from file: #{config_file}"
|
|
67
|
-
if @config["better_prompt_db"]
|
|
68
|
-
require "better_prompt"
|
|
69
|
-
BetterPrompt.setup(db_path: @config["better_prompt_db"])
|
|
70
|
-
end
|
|
71
67
|
@config["adapters"].each do |adapter_name, adapter_class|
|
|
72
68
|
adapter_class = SmartPrompt.const_get(adapter_class)
|
|
73
69
|
@adapters[adapter_name] = adapter_class
|
data/lib/smart_prompt/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: smart_prompt
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- zhuang biaowei
|
|
@@ -29,14 +29,14 @@ dependencies:
|
|
|
29
29
|
requirements:
|
|
30
30
|
- - "~>"
|
|
31
31
|
- !ruby/object:Gem::Version
|
|
32
|
-
version: 8.
|
|
32
|
+
version: 8.3.0
|
|
33
33
|
type: :runtime
|
|
34
34
|
prerelease: false
|
|
35
35
|
version_requirements: !ruby/object:Gem::Requirement
|
|
36
36
|
requirements:
|
|
37
37
|
- - "~>"
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: 8.
|
|
39
|
+
version: 8.3.0
|
|
40
40
|
- !ruby/object:Gem::Dependency
|
|
41
41
|
name: json
|
|
42
42
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -93,20 +93,6 @@ dependencies:
|
|
|
93
93
|
- - "~>"
|
|
94
94
|
- !ruby/object:Gem::Version
|
|
95
95
|
version: 0.9.2.1
|
|
96
|
-
- !ruby/object:Gem::Dependency
|
|
97
|
-
name: better_prompt
|
|
98
|
-
requirement: !ruby/object:Gem::Requirement
|
|
99
|
-
requirements:
|
|
100
|
-
- - "~>"
|
|
101
|
-
- !ruby/object:Gem::Version
|
|
102
|
-
version: 0.2.1
|
|
103
|
-
type: :runtime
|
|
104
|
-
prerelease: false
|
|
105
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
106
|
-
requirements:
|
|
107
|
-
- - "~>"
|
|
108
|
-
- !ruby/object:Gem::Version
|
|
109
|
-
version: 0.2.1
|
|
110
96
|
description: SmartPrompt provides a flexible DSL for managing prompts, interacting
|
|
111
97
|
with multiple LLMs, and creating composable task workers.
|
|
112
98
|
email:
|
|
@@ -151,7 +137,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
151
137
|
- !ruby/object:Gem::Version
|
|
152
138
|
version: '0'
|
|
153
139
|
requirements: []
|
|
154
|
-
rubygems_version:
|
|
140
|
+
rubygems_version: 4.0.10
|
|
155
141
|
specification_version: 4
|
|
156
142
|
summary: A smart prompt management and LLM interaction gem
|
|
157
143
|
test_files: []
|