Skip to content

pi_llm.providers.simple_options

simple_options

Option building helpers for providers.

Maps SimpleStreamOptions to provider-specific options, handles reasoning level clamping, and adjusts token budgets for thinking-enabled models.

build_base_options(model, options=None, api_key=None)

Map SimpleStreamOptions to base StreamOptions.

Parameters:

Name Type Description Default
model Model

The model (used for default max_tokens).

required
options SimpleStreamOptions | None

Simplified options to convert.

None
api_key str | None

API key override.

None

Returns:

Type Description
StreamOptions

A StreamOptions instance.

clamp_reasoning(effort)

Clamp "xhigh" to "high" for models that don't support it.

adjust_max_tokens_for_thinking(base_max_tokens, model_max_tokens, reasoning_level, custom_budgets=None)

Calculate token limits for thinking-enabled models.

Returns:

Type Description
tuple[int, int]

A (max_tokens, thinking_budget) tuple.