View Source HyperLLM.Provider behaviour (hyper_llm v0.6.0)
Defines the behaviour that all provider modules must implement.
Summary
Types
@type completion_config() :: [{:receive_timeout, integer()}]
@type completion_params() :: %{ messages: [%{role: String.t(), content: String.t()}], model: String.t(), audio: map(), frequency_penalty: number(), logit_bias: map(), logprobs: boolean(), max_completion_tokens: integer(), metadata: map(), modalities: [String.t()], n: integer(), parallel_tool_calls: boolean(), prediction: map(), presence_penalty: number(), reasoning_effort: String.t(), response_format: map(), seed: integer(), service_tier: String.t(), stop: String.t() | [String.t()], store: boolean(), stream: boolean(), stream_options: map(), temperature: number(), tool_choice: String.t() | map(), tools: [map()], top_logprobs: integer(), top_p: number(), user: String.t(), function_call: String.t() | map(), functions: [map()], max_tokens: integer() }