View Source LlmComposer.LlmResponse (llm_composer v0.13.0)

Module to parse and easily handle llm responses.

Summary

Types

@type model_response() :: Tesla.Env.result()
@type provider() :: :open_ai | :ollama | :open_router | :bedrock | :google
@type t() :: %LlmComposer.LlmResponse{
  cost_info: LlmComposer.CostInfo.t() | nil,
  function_calls: [LlmComposer.FunctionCall.t()] | nil,
  input_tokens: pos_integer() | nil,
  main_response: LlmComposer.Message.t() | nil,
  metadata: map(),
  output_tokens: pos_integer() | nil,
  previous_response: map() | nil,
  provider: provider(),
  raw: map(),
  status: :ok | :error,
  stream: nil | Enum.t()
}

Functions

Link to this function

new(response, provider, opts \\ [])

View Source
@spec new(nil | model_response(), atom(), keyword()) :: {:ok, t()} | {:error, term()}