Class: Summarize::Result
- Inherits:
-
Object
- Object
- Summarize::Result
- Defined in:
- lib/summarize/result.rb
Instance Attribute Summary collapse
-
#raw ⇒ Object
readonly
Returns the value of attribute raw.
Instance Method Summary collapse
- #completion_tokens ⇒ Object
- #content ⇒ Object
- #content_length ⇒ Object
- #description ⇒ Object
- #extract_only? ⇒ Boolean
-
#initialize(json) ⇒ Result
constructor
A new instance of Result.
- #input_kind ⇒ Object
- #llm_metrics ⇒ Object
- #media_type ⇒ Object
- #metrics ⇒ Object
- #model ⇒ Object
- #prompt ⇒ Object
- #prompt_tokens ⇒ Object
- #provider ⇒ Object
- #site_name ⇒ Object
- #slides ⇒ Object
- #source ⇒ Object
- #success? ⇒ Boolean
- #summary ⇒ Object
- #title ⇒ Object
- #to_h ⇒ Object
- #total_tokens ⇒ Object
Constructor Details
#initialize(json) ⇒ Result
Returns a new instance of Result.
7 8 9 |
# File 'lib/summarize/result.rb', line 7 def initialize(json) @raw = json end |
Instance Attribute Details
#raw ⇒ Object (readonly)
Returns the value of attribute raw.
5 6 7 |
# File 'lib/summarize/result.rb', line 5 def raw @raw end |
Instance Method Details
#completion_tokens ⇒ Object
71 72 73 |
# File 'lib/summarize/result.rb', line 71 def completion_tokens llm_metrics.sum { |m| m["completionTokens"] || 0 } end |
#content ⇒ Object
27 28 29 |
# File 'lib/summarize/result.rb', line 27 def content dig("extracted", "content") end |
#content_length ⇒ Object
31 32 33 |
# File 'lib/summarize/result.rb', line 31 def content_length dig("extracted", "contentLength") end |
#description ⇒ Object
19 20 21 |
# File 'lib/summarize/result.rb', line 19 def description dig("extracted", "description") end |
#extract_only? ⇒ Boolean
87 88 89 |
# File 'lib/summarize/result.rb', line 87 def extract_only? summary.nil? && !content.nil? end |
#input_kind ⇒ Object
75 76 77 |
# File 'lib/summarize/result.rb', line 75 def input_kind dig("input", "kind") end |
#llm_metrics ⇒ Object
59 60 61 |
# File 'lib/summarize/result.rb', line 59 def llm_metrics dig("metrics", "llm") || [] end |
#media_type ⇒ Object
35 36 37 |
# File 'lib/summarize/result.rb', line 35 def media_type dig("extracted", "mediaType") end |
#metrics ⇒ Object
55 56 57 |
# File 'lib/summarize/result.rb', line 55 def metrics raw["metrics"] end |
#model ⇒ Object
43 44 45 |
# File 'lib/summarize/result.rb', line 43 def model dig("llm", "model") end |
#prompt ⇒ Object
51 52 53 |
# File 'lib/summarize/result.rb', line 51 def prompt raw["prompt"] end |
#prompt_tokens ⇒ Object
67 68 69 |
# File 'lib/summarize/result.rb', line 67 def prompt_tokens llm_metrics.sum { |m| m["promptTokens"] || 0 } end |
#provider ⇒ Object
47 48 49 |
# File 'lib/summarize/result.rb', line 47 def provider dig("llm", "provider") end |
#site_name ⇒ Object
23 24 25 |
# File 'lib/summarize/result.rb', line 23 def site_name dig("extracted", "siteName") end |
#slides ⇒ Object
79 80 81 |
# File 'lib/summarize/result.rb', line 79 def raw["slides"] end |
#source ⇒ Object
39 40 41 |
# File 'lib/summarize/result.rb', line 39 def source dig("extracted", "source") end |
#success? ⇒ Boolean
83 84 85 |
# File 'lib/summarize/result.rb', line 83 def success? !summary.nil? end |
#summary ⇒ Object
11 12 13 |
# File 'lib/summarize/result.rb', line 11 def summary raw["summary"] end |
#title ⇒ Object
15 16 17 |
# File 'lib/summarize/result.rb', line 15 def title dig("extracted", "title") end |
#to_h ⇒ Object
91 92 93 |
# File 'lib/summarize/result.rb', line 91 def to_h raw end |
#total_tokens ⇒ Object
63 64 65 |
# File 'lib/summarize/result.rb', line 63 def total_tokens llm_metrics.sum { |m| m["totalTokens"] || 0 } end |