Module: Ollama::Providers

Defined in:
lib/ollama/providers.rb,
lib/ollama/providers/base.rb,
lib/ollama/providers/ollama.rb,
lib/ollama/providers/openai.rb,
lib/ollama/providers/llama_cpp.rb

Overview

API Provider registry and factory.

Defined Under Namespace

Classes: Base, LlamaCpp, Ollama, OpenAI

Class Method Summary collapse

Class Method Details

.build(config, transport) ⇒ Providers::Base

Build the appropriate provider based on configuration.

Parameters:

Returns:



15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/ollama/providers.rb', line 15

def self.build(config, transport)
  case config.provider
  when :ollama, nil
    Ollama.new(config, transport)
  when :openai
    OpenAI.new(config, transport)
  when :llama_cpp
    LlamaCpp.new(config, transport)
  else
    raise ArgumentError, "Unsupported provider: #{config.provider.inspect}"
  end
end