Class: Protege::Provider

Inherits:
Object
  • Object
show all
Includes:
ProviderMixin
Defined in:
lib/protege/extensions/provider.rb

Overview

Base class for LLM providers. Host apps subclass Protege::Provider, declare their id with protege_id :symbol, and implement #generate(request) (optionally #generate_stream). The provider contract lives in ProviderMixin, which this includes; subclasses are discovered via Provider.descendants (see ProviderMixin.registered). The request/response value objects it exchanges are the Inference::Provider::* types.

Direct Known Subclasses

OpenRouterProvider

Method Summary

Methods included from ProviderMixin

#generate, #generate_stream, included, #model, registered, #settings