Class: Ollama::Transport::Base
- Inherits:
-
Object
- Object
- Ollama::Transport::Base
- Defined in:
- lib/ollama/transport/base.rb
Overview
Base transport adapter contract.
Instance Method Summary collapse
-
#call(request, _env = {}) ⇒ Object
Chain entry point used by the pipeline.
- #capabilities ⇒ Object
-
#initialize(config) ⇒ Base
constructor
A new instance of Base.
- #request(_uri:, _request:, _read_timeout:) ⇒ Object
- #stream(_uri:, _request:, &_block) ⇒ Object
Constructor Details
#initialize(config) ⇒ Base
Returns a new instance of Base.
10 11 12 |
# File 'lib/ollama/transport/base.rb', line 10 def initialize(config) @config = config end |
Instance Method Details
#call(request, _env = {}) ⇒ Object
Chain entry point used by the pipeline. Surfaces HTTP failures as typed errors (Errors.from_response) inside the middleware chain so policies like Retry/AutoPull/Fallback can observe them.
21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/ollama/transport/base.rb', line 21 def call(request, _env = {}) response = request( uri: request.uri, request: request, read_timeout: request.timeout ) raise Errors.from_response(response) if response.is_a?(Response) && !response.success? response end |
#capabilities ⇒ Object
37 38 39 |
# File 'lib/ollama/transport/base.rb', line 37 def capabilities [] end |
#request(_uri:, _request:, _read_timeout:) ⇒ Object
14 15 16 |
# File 'lib/ollama/transport/base.rb', line 14 def request(_uri:, _request:, _read_timeout:) raise NotImplementedError, "transport adapter must implement #request" end |
#stream(_uri:, _request:, &_block) ⇒ Object
33 34 35 |
# File 'lib/ollama/transport/base.rb', line 33 def stream(_uri:, _request:, &_block) raise NotImplementedError, "transport adapter must implement #stream" end |