ASM.Stream (ASM v0.9.2)

Copy Markdown View Source

Stream helpers for run event consumption and final result projection.

Summary

Types

stream_state()

@type stream_state() :: %{
  session: GenServer.server(),
  run_id: String.t(),
  timeout_ms: pos_integer(),
  queue_timeout_ms: pos_integer() | :infinity,
  queue_started_at_ms: integer() | nil,
  started?: boolean(),
  done?: boolean()
}

Functions

create(session, prompt, opts \\ [])

@spec create(GenServer.server(), String.t(), keyword()) :: Enumerable.t()

final_result(events)

@spec final_result(Enumerable.t()) :: ASM.Result.t()

final_text(events)

@spec final_text(Enumerable.t()) :: String.t()

text_content(events)

@spec text_content(Enumerable.t()) :: Enumerable.t()

text_deltas(events)

@spec text_deltas(Enumerable.t()) :: Enumerable.t()