Module: Legion::Extensions::Ollama::Helpers::Usage

Defined in:
lib/legion/extensions/ollama/helpers/usage.rb

Constant Summary collapse

EMPTY_USAGE =
{
  input_tokens:         0,
  output_tokens:        0,
  total_duration:       0,
  load_duration:        0,
  prompt_eval_duration: 0,
  eval_duration:        0
}.freeze

Class Method Summary collapse

Class Method Details

.from_response(body) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/legion/extensions/ollama/helpers/usage.rb', line 19

def from_response(body)
  return EMPTY_USAGE.dup unless body.is_a?(Hash)

  {
    input_tokens:         body['prompt_eval_count'] || 0,
    output_tokens:        body['eval_count'] || 0,
    total_duration:       body['total_duration'] || 0,
    load_duration:        body['load_duration'] || 0,
    prompt_eval_duration: body['prompt_eval_duration'] || 0,
    eval_duration:        body['eval_duration'] || 0
  }
end