AgentDb.ML.ModelManager.State (agent_db v0.1.0)

Copy Markdown View Source

State struct for ModelManager

Summary

Types

last_load_ms()

@type last_load_ms() :: %{optional(:embedding | :llm) => non_neg_integer()}

load_status()

@type load_status() :: :idle | :loading | :ready | :failed

loading_ref()

@type loading_ref() :: %{
  optional(:embedding) => reference(),
  optional(:llm) => reference()
}

model_ref()

@type model_ref() :: %{
  tokenizer: Bumblebee.Tokenizer.t(),
  model: term(),
  config: map(),
  serving: module(),
  chat_template: String.t()
}

t()

@type t() :: %AgentDb.ML.ModelManager.State{
  config: map(),
  embedding_model: model_ref() | nil,
  in_flight: non_neg_integer(),
  inference_refs: MapSet.t(reference()),
  last_latency_ms: %{optional(:embedding | :llm) => non_neg_integer()},
  last_load_ms: %{optional(:embedding | :llm) => non_neg_integer()},
  llm_model: model_ref() | nil,
  loading: %{
    optional(:embedding) => load_status(),
    optional(:llm) => load_status()
  },
  loading_ref: loading_ref()
}