Inference.Request (inference v0.1.0)

Copy Markdown View Source

Provider-neutral inference request.

Summary

Types

input()

@type input() :: String.t() | [Inference.Message.t() | map() | keyword()] | t()

t()

@type t() :: %Inference.Request{
  id: String.t() | nil,
  max_tokens: pos_integer() | nil,
  messages: [Inference.Message.t()],
  metadata: map(),
  model: String.t() | nil,
  options: keyword(),
  response_format: term(),
  session: term(),
  stream?: boolean(),
  temperature: number() | nil,
  top_p: number() | nil,
  trace_context: map() | nil
}

Functions

from_messages(messages, opts \\ [])

@spec from_messages(
  list(),
  keyword()
) :: {:ok, t()} | {:error, Inference.Error.t()}

from_messages!(messages, opts \\ [])

@spec from_messages!(
  list(),
  keyword()
) :: t()

from_prompt(prompt, opts \\ [])

@spec from_prompt(
  String.t(),
  keyword()
) :: {:ok, t()} | {:error, Inference.Error.t()}

from_prompt!(prompt, opts \\ [])

@spec from_prompt!(
  String.t(),
  keyword()
) :: t()

new(input, opts \\ [])

@spec new(
  input(),
  keyword()
) :: {:ok, t()} | {:error, Inference.Error.t()}

to_prompt(request)

@spec to_prompt(t()) :: String.t()

user_prompt(request)

@spec user_prompt(t()) :: String.t()