Module: LLM::Contract::Completion Abstract
- Extended by:
- LLM::Contract
- Included in:
- Anthropic::ResponseAdapter::Completion, Gemini::ResponseAdapter::Completion, Ollama::ResponseAdapter::Completion, OpenAI::ResponseAdapter::Completion
- Defined in:
- lib/llm/contract/completion.rb
Overview
This module is abstract.
Defines the interface all completion responses must implement
Constant Summary
Constants included from LLM::Contract
Instance Method Summary collapse
-
#input_tokens ⇒ Integer
Returns the number of input tokens.
-
#messages ⇒ Array<LLM::Messsage>
(also: #choices)
Returns one or more messages.
-
#model ⇒ String
Returns the model name.
-
#output_tokens ⇒ Integer
Returns the number of output tokens.
-
#total_tokens ⇒ Integer
Returns the total number of tokens.
-
#usage ⇒ LLM::Usage
Returns usage information.
Methods included from LLM::Contract
Instance Method Details
#input_tokens ⇒ Integer
Returns the number of input tokens
21 22 23 |
# File 'lib/llm/contract/completion.rb', line 21 def input_tokens raise NotImplementedError, "#{self.class} does not implement '#{__method__}'" end |
#messages ⇒ Array<LLM::Messsage> Also known as: choices
Returns one or more messages
13 14 15 |
# File 'lib/llm/contract/completion.rb', line 13 def raise NotImplementedError, "#{self.class} does not implement '#{__method__}'" end |
#model ⇒ String
Returns the model name
53 54 55 |
# File 'lib/llm/contract/completion.rb', line 53 def model raise NotImplementedError, "#{self.class} does not implement '#{__method__}'" end |
#output_tokens ⇒ Integer
Returns the number of output tokens
28 29 30 |
# File 'lib/llm/contract/completion.rb', line 28 def output_tokens raise NotImplementedError, "#{self.class} does not implement '#{__method__}'" end |
#total_tokens ⇒ Integer
Returns the total number of tokens
35 36 37 |
# File 'lib/llm/contract/completion.rb', line 35 def total_tokens raise NotImplementedError, "#{self.class} does not implement '#{__method__}'" end |
#usage ⇒ LLM::Usage
Returns usage information
42 43 44 45 46 47 48 |
# File 'lib/llm/contract/completion.rb', line 42 def usage LLM::Usage.new( input_tokens:, output_tokens:, total_tokens: ) end |