Skip to main content

ModelCapabilityBackend

Trait ModelCapabilityBackend 

Source
pub trait ModelCapabilityBackend: TextGenerationBackend {
    // Required methods
    fn model_capabilities(
        runtime: &ModelRuntime<Self>,
    ) -> Result<ModelCapabilities, CapabilityError>;
    fn count_prepared_input(
        runtime: &ModelRuntime<Self>,
        input: &Self::Prompt,
    ) -> Result<InputTokenCount, CapabilityError>;
    fn estimate_runtime_state(
        runtime: &ModelRuntime<Self>,
        input: InputTokenCount,
        max_output_tokens: u64,
        batch_size: u64,
    ) -> Result<RuntimeStateEstimate, CapabilityError>;
    fn static_memory(
        runtime: &ModelRuntime<Self>,
    ) -> Result<StaticMemoryReport, CapabilityError>;
}
Expand description

Capability and resource observations for one selected text-model session.

Implementations inspect the opaque model and cache already owned by ModelRuntime. The contract exposes only portable documents and the backend’s existing opaque prompt type; tensor, stream, allocator, and executable types remain inside the adapter.

Required Methods§

Source

fn model_capabilities( runtime: &ModelRuntime<Self>, ) -> Result<ModelCapabilities, CapabilityError>

Reports validated model capabilities for the selected session.

Source

fn count_prepared_input( runtime: &ModelRuntime<Self>, input: &Self::Prompt, ) -> Result<InputTokenCount, CapabilityError>

Counts text and backend-specific model positions in a prepared prompt.

Source

fn estimate_runtime_state( runtime: &ModelRuntime<Self>, input: InputTokenCount, max_output_tokens: u64, batch_size: u64, ) -> Result<RuntimeStateEstimate, CapabilityError>

Estimates persistent and transient request state for this session.

Source

fn static_memory( runtime: &ModelRuntime<Self>, ) -> Result<StaticMemoryReport, CapabilityError>

Reports static model storage and current backend memory observations.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§