pub trait ErasedModel: Send + Sync {
// Required methods
fn generate_erased<'a>(
&'a self,
request: &'a ChatRequest,
) -> Pin<Box<dyn Future<Output = Result<ChatResponse>> + Send + 'a>>;
fn generate_stream_erased<'a>(
&'a self,
request: &'a ChatRequest,
) -> Pin<Box<dyn Future<Output = Result<ResponseStream>> + Send + 'a>>;
}Expand description
Object-safe wrapper for Model, enabling dynamic dispatch via Arc<dyn ErasedModel>.
Required Methods§
Sourcefn generate_erased<'a>(
&'a self,
request: &'a ChatRequest,
) -> Pin<Box<dyn Future<Output = Result<ChatResponse>> + Send + 'a>>
fn generate_erased<'a>( &'a self, request: &'a ChatRequest, ) -> Pin<Box<dyn Future<Output = Result<ChatResponse>> + Send + 'a>>
Object-safe version of Model::generate.
Sourcefn generate_stream_erased<'a>(
&'a self,
request: &'a ChatRequest,
) -> Pin<Box<dyn Future<Output = Result<ResponseStream>> + Send + 'a>>
fn generate_stream_erased<'a>( &'a self, request: &'a ChatRequest, ) -> Pin<Box<dyn Future<Output = Result<ResponseStream>> + Send + 'a>>
Object-safe version of Model::generate_stream.