//! Model executor implementations.
//!
//! Decoder-only LLMs go through `LlmExecutor` (wrapping any
//! `Box<dyn DecoderOnlyLLM>`). Per-modality executors (Bert / Clip / Whisper /
//! Tts) remain separate — they have different forward contracts that don't
//! fit the prefill/decode interface.
pub use BertModelExecutor;
pub use ClipModelExecutor;
pub use LlmExecutor;
pub use StubModelExecutor;
pub use TtsModelExecutor;
pub use WhisperModelExecutor;