Module: CleoQualityReview::LlmProviders

Defined in:
lib/cleo_quality_review/llm_providers.rb,
lib/cleo_quality_review/llm_providers/stub.rb,
lib/cleo_quality_review/llm_providers/open_ai.rb,
lib/cleo_quality_review/llm_providers/registry.rb,
lib/cleo_quality_review/llm_providers/open_ai_config.rb

Overview

Namespace for bundled LLM provider implementations.

Defined Under Namespace

Modules: OpenAi, Stub Classes: Registry

Class Method Summary collapse

Class Method Details

.fetch(provider_name) ⇒ Object

Resolve a registered LLM provider.

Parameters:

  • provider_name (String, Symbol)

Returns:

  • (Object)


25
26
27
# File 'lib/cleo_quality_review/llm_providers.rb', line 25

def fetch(provider_name)
  Registry.fetch(provider_name.to_s)
end

.register(provider_name, provider_class) ⇒ nil

Register a new LLM provider for use.

Parameters:

  • provider_name (String, Symbol)
  • provider_class (Class)

Returns:

  • (nil)


17
18
19
# File 'lib/cleo_quality_review/llm_providers.rb', line 17

def register(provider_name, provider_class)
  Registry.register(provider_name.to_s, provider_class)
end

.registeredArray<String>

Returns registered provider names.

Returns:

  • (Array<String>)

    registered provider names



31
32
33
# File 'lib/cleo_quality_review/llm_providers.rb', line 31

def registered
  Registry.registered
end

.registered?(provider_name) ⇒ Boolean

Has a provider with the given name been registered?

Parameters:

  • provider_name (String, Symbol)

Returns:

  • (Boolean)


39
40
41
# File 'lib/cleo_quality_review/llm_providers.rb', line 39

def registered?(provider_name)
  Registry.registered?(provider_name)
end