primus.optimization.semantic_budget module
Exact, replay-safe authorization ledger for semantic model calls.
This module is intentionally independent from the float-oriented runtime and optimizer budgets. It authorizes calls from a checked-in pricing snapshot and serializes all money as canonical decimal strings.
- exception primus.optimization.semantic_budget.SemanticBudgetConflict
Bases:
SemanticBudgetErrorReplay supplied data that conflicts with a durable ledger entry.
- exception primus.optimization.semantic_budget.SemanticBudgetError
Bases:
RuntimeErrorBase class for semantic budget authorization failures.
- exception primus.optimization.semantic_budget.SemanticBudgetExceeded
Bases:
SemanticBudgetErrorA worst-case reservation would exceed the frozen run budget.
- class primus.optimization.semantic_budget.SemanticBudgetLedger(*, run_key: str, spec: SemanticBudgetSpec, revision: int = 0, entries: Mapping[str, Mapping[str, Any]] | None = None)
Bases:
objectSingle-run authorization ledger with deterministic replay transitions.
- __init__(*, run_key: str, spec: SemanticBudgetSpec, revision: int = 0, entries: Mapping[str, Mapping[str, Any]] | None = None) None
- cancel_pre_contact(reservation_id: str, *, reason: str) dict[str, Any]
- digest() str
- classmethod from_dict(value: Mapping[str, Any], *, expected_spec: SemanticBudgetSpec | None = None) SemanticBudgetLedger
- get(reservation_id: str) dict[str, Any]
- mark_outcome_unknown(reservation_id: str, *, reason: str) dict[str, Any]
- reserve(plan: SemanticCallPlan) dict[str, Any]
- settle(reservation_id: str, usage: SemanticUsage, *, replay_payload: Mapping[str, Any] | None = None) dict[str, Any]
- summary() dict[str, Any]
- to_dict() dict[str, Any]
- class primus.optimization.semantic_budget.SemanticBudgetSpec(max_cost_usd: 'str', pricing_version: 'str', schema_version: 'str' = 'semantic-budget-v1')
Bases:
object- __init__(max_cost_usd: str, pricing_version: str, schema_version: str = 'semantic-budget-v1') None
- classmethod from_dict(value: Mapping[str, Any]) SemanticBudgetSpec
- property max_cost: Decimal
- max_cost_usd: str
- pricing_version: str
- schema_version: str = 'semantic-budget-v1'
- to_dict() dict[str, str]
- class primus.optimization.semantic_budget.SemanticCallPlan(run_key: 'str', target_id: 'str', call_site: 'str', attempt: 'int', max_attempts: 'int', provider: 'str', model: 'str', pricing_version: 'str', max_input_tokens: 'int', max_output_tokens: 'int', request_hash: 'str | None' = None, external_attempt_id: 'str | None' = None, schema_version: 'str' = 'semantic-call-plan-v1')
Bases:
object- __init__(run_key: str, target_id: str, call_site: str, attempt: int, max_attempts: int, provider: str, model: str, pricing_version: str, max_input_tokens: int, max_output_tokens: int, request_hash: str | None = None, external_attempt_id: str | None = None, schema_version: str = 'semantic-call-plan-v1') None
- attempt: int
- call_site: str
- external_attempt_id: str | None = None
- classmethod from_dict(value: Mapping[str, Any]) SemanticCallPlan
- identity_dict() dict[str, Any]
- max_attempts: int
- max_input_tokens: int
- max_output_tokens: int
- model: str
- pricing_version: str
- provider: str
- request_hash: str | None = None
- property reservation_id: str
- run_key: str
- schema_version: str = 'semantic-call-plan-v1'
- target_id: str
- to_dict() dict[str, Any]
- class primus.optimization.semantic_budget.SemanticModelPrice(provider: 'str', model: 'str', input_usd_per_million: 'Decimal', cached_input_usd_per_million: 'Decimal', output_usd_per_million: 'Decimal')
Bases:
object- __init__(provider: str, model: str, input_usd_per_million: Decimal, cached_input_usd_per_million: Decimal, output_usd_per_million: Decimal) None
- cached_input_usd_per_million: Decimal
- input_usd_per_million: Decimal
- model: str
- output_usd_per_million: Decimal
- provider: str
- class primus.optimization.semantic_budget.SemanticPricingSnapshot(pricing_version: 'str', models: 'Mapping[str, SemanticModelPrice]')
Bases:
object- __init__(pricing_version: str, models: Mapping[str, SemanticModelPrice]) None
- models: Mapping[str, SemanticModelPrice]
- price_for(provider: str, model: str) SemanticModelPrice
- pricing_version: str
- class primus.optimization.semantic_budget.SemanticUsage(input_tokens: 'int', output_tokens: 'int', cached_input_tokens: 'int' = 0, provider_request_id: 'str | None' = None, schema_version: 'str' = 'semantic-usage-v1')
Bases:
object- __init__(input_tokens: int, output_tokens: int, cached_input_tokens: int = 0, provider_request_id: str | None = None, schema_version: str = 'semantic-usage-v1') None
- cached_input_tokens: int = 0
- classmethod from_dict(value: Mapping[str, Any]) SemanticUsage
- input_tokens: int
- output_tokens: int
- provider_request_id: str | None = None
- schema_version: str = 'semantic-usage-v1'
- to_dict() dict[str, Any]
- exception primus.optimization.semantic_budget.UnknownSemanticPricing
Bases:
SemanticBudgetErrorThe requested immutable provider/model price is not authorized.
- primus.optimization.semantic_budget.canonical_json_bytes(value: Mapping[str, Any]) bytes
- primus.optimization.semantic_budget.decimal_string(value: Decimal) str
Return stable non-exponent decimal JSON text without losing precision.
- primus.optimization.semantic_budget.load_semantic_pricing(pricing_version: str) SemanticPricingSnapshot
- primus.optimization.semantic_budget.stakeholder_budget_evidence(ledger_value: Mapping[str, Any], *, evidence_reference: str) dict[str, Any]
Return a privacy-safe, deterministic projection of a frozen ledger.
This is intentionally an aggregate rather than a transport copy of the ledger. Operators need exact Decimal reconciliation and a durable digest, but stakeholder artifacts must not expose target identifiers, request payloads, replay payloads, provider request IDs, or unknown-outcome text.