NAME

LLM::SimpleClient::Provider - Base class for LLM providers

DESCRIPTION

This is the base class that all LLM provider classes inherit from. It provides common functionality for making API requests.

METHODS

new(%params)

Creates a new provider instance.

Parameters: - api_key: API key for authentication - model: Model identifier - temperature: Sampling temperature - max_tokens: Maximum tokens to generate - top_p: Nucleus sampling parameter - timeout: Request timeout in seconds - logger: Log4perl logger instance

send_request($messages)

Sends a chat request to the provider and returns the response.

_build_url()

Returns the API endpoint URL. Must be implemented by subclasses.

_build_headers()

Returns headers for the request. Must be implemented by subclasses.

_build_payload($messages)

Returns the request payload. Can be overridden by subclasses.

_parse_response($response)

Parses the API response. Must be implemented by subclasses.