Class: Riffer::Providers::Base
- Inherits:
-
Object
- Object
- Riffer::Providers::Base
- Includes:
- Helpers::Dependencies, Messages::Converter
- Defined in:
- lib/riffer/providers/base.rb
Overview
Base class for all LLM providers in the Riffer framework.
Subclasses must implement perform_generate_text and perform_stream_text.
Direct Known Subclasses
Instance Method Summary collapse
-
#generate_text(prompt: nil, system: nil, messages: nil, model: nil, **options) ⇒ Object
Generates text using the provider.
-
#stream_text(prompt: nil, system: nil, messages: nil, model: nil, **options) ⇒ Object
Streams text from the provider.
Methods included from Messages::Converter
Methods included from Helpers::Dependencies
Instance Method Details
#generate_text(prompt: nil, system: nil, messages: nil, model: nil, **options) ⇒ Object
Generates text using the provider.
: (?prompt: String?, ?system: String?, ?messages: Array[Hash[Symbol, untyped] | Riffer::Messages::Base]?, ?model: String?, **untyped) -> Riffer::Messages::Assistant
14 15 16 17 18 19 |
# File 'lib/riffer/providers/base.rb', line 14 def generate_text(prompt: nil, system: nil, messages: nil, model: nil, **) validate_input!(prompt: prompt, system: system, messages: ) = (prompt: prompt, system: system, messages: ) () perform_generate_text(, model: model, **) end |
#stream_text(prompt: nil, system: nil, messages: nil, model: nil, **options) ⇒ Object
Streams text from the provider.
: (?prompt: String?, ?system: String?, ?messages: Array[Hash[Symbol, untyped] | Riffer::Messages::Base]?, ?model: String?, **untyped) -> Enumerator[Riffer::StreamEvents::Base, void]
24 25 26 27 28 29 |
# File 'lib/riffer/providers/base.rb', line 24 def stream_text(prompt: nil, system: nil, messages: nil, model: nil, **) validate_input!(prompt: prompt, system: system, messages: ) = (prompt: prompt, system: system, messages: ) () perform_stream_text(, model: model, **) end |