Class: LlmLogs::PromptVersion
- Inherits:
-
ApplicationRecord
- Object
- ActiveRecord::Base
- ApplicationRecord
- LlmLogs::PromptVersion
- Defined in:
- app/models/llm_logs/prompt_version.rb
Instance Method Summary collapse
Instance Method Details
#reasoning_effort ⇒ Object
12 13 14 15 16 |
# File 'app/models/llm_logs/prompt_version.rb', line 12 def reasoning_effort return nil unless model_params.is_a?(Hash) model_params["reasoning_effort"] || model_params[:reasoning_effort] end |
#render(variables = {}) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'app/models/llm_logs/prompt_version.rb', line 22 def render(variables = {}) merged = (default_variables || {}).merge(variables.stringify_keys) = .map do |msg| { role: msg["role"], content: LlmLogs::PromptRenderer.render(msg["content"], merged) } end params = { messages: } params[:model] = model if model.present? params.merge!(model_params.symbolize_keys) if model_params.present? params end |
#variables ⇒ Object
18 19 20 |
# File 'app/models/llm_logs/prompt_version.rb', line 18 def variables .flat_map { |msg| msg["content"].to_s.scan(/\{\{[#^]?([^\/}]+)\}\}/) }.flatten.uniq.sort end |