pub struct SimpleStreamOptions {Show 13 fields
pub api_key: Option<String>,
pub timeout: Option<Duration>,
pub max_retries: Option<u32>,
pub max_retry_delay: Option<Duration>,
pub headers: Option<BTreeMap<String, String>>,
pub metadata: Option<BTreeMap<String, String>>,
pub cache_retention: CacheRetention,
pub session_id: Option<String>,
pub signal: CancellationToken,
pub reasoning: Option<ThinkingLevel>,
pub max_tokens: Option<u64>,
pub temperature: Option<f64>,
pub thinking_budgets: Option<ThinkingBudgets>,
}Expand description
Options for a “simple” (non-agent) stream call — what compaction / smoke tests / bare provider usage pass. The agent loop wraps this with its richer equivalent when it drives a real turn (M2).
Fields§
§api_key: Option<String>API key. A provider may fall back to an env var when None (M3 anthropic
reads ANTHROPIC_API_KEY); faux ignores it.
timeout: Option<Duration>Request timeout. Defaults to 600 seconds; None uses the same provider
fallback and can be used by patches to clear a caller override.
max_retries: Option<u32>Max retry attempts on retryable errors (408/409/429/>=500). None = 0.
max_retry_delay: Option<Duration>Cap on the total backoff between retries. None = 60s.
headers: Option<BTreeMap<String, String>>Extra HTTP headers to send (merged over provider defaults).
metadata: Option<BTreeMap<String, String>>Free-form provider metadata (request id, trace id, …). Anthropic reads
user_id for abuse tracking; faux ignores it.
cache_retention: CacheRetentionCache-retention hint for prompt caching.
session_id: Option<String>Optional session id (faux uses it to simulate prompt-cache hits).
signal: CancellationTokenCancellation token. Providers must poll this between chunks and emit an
Error { reason: Aborted } terminal event when cancelled. Defaults to a
fresh un-cancelled token so Default-constructed options never abort.
reasoning: Option<ThinkingLevel>Extended-thinking level. None/Off → thinking disabled (provider may
still emit thinking: { type: "disabled" } when the model reasons).
Mirrors TS SimpleStreamOptions.reasoning.
max_tokens: Option<u64>Optional caller override for the requested output-token ceiling. None
lets the provider fit the thinking budget inside Model::max_tokens.
Mirrors TS SimpleStreamOptions.maxTokens.
temperature: Option<f64>Sampling temperature. Only applied when the model supports it AND
thinking is disabled (Anthropic rejects temperature under thinking).
Mirrors TS StreamOptions.temperature.
thinking_budgets: Option<ThinkingBudgets>Per-level reasoning token budgets for budget-based thinking models.
Faux ignores this; anthropic uses it in adjust_max_tokens_for_thinking.
Implementations§
Source§impl SimpleStreamOptions
impl SimpleStreamOptions
pub fn new() -> Self
pub fn with_api_key(self, key: impl Into<String>) -> Self
pub fn with_signal(self, signal: CancellationToken) -> Self
Sourcepub fn reasoning_level(&self) -> ThinkingLevel
pub fn reasoning_level(&self) -> ThinkingLevel
Resolve the effective reasoning level, defaulting to Off when unset.
Sourcepub fn request_timeout(&self) -> Duration
pub fn request_timeout(&self) -> Duration
Resolve the effective request timeout, including the provider fallback.