Trait rig::completion::CompletionModel

source ·
pub trait CompletionModel:
    Clone
    + Send
    + Sync {
    type Response: Send + Sync;

    // Required method
    fn completion(
        &self,
        request: CompletionRequest,
    ) -> impl Future<Output = Result<CompletionResponse<Self::Response>, CompletionError>> + Send;

    // Provided method
    fn completion_request(&self, prompt: &str) -> CompletionRequestBuilder<Self> { ... }
}
Expand description

Trait defining a completion model that can be used to generate completion responses. This trait is meant to be implemented by the user to define a custom completion model, either from a third party provider (e.g.: OpenAI) or a local model.

Required Associated Types§

source

type Response: Send + Sync

The raw response type returned by the underlying completion model.

Required Methods§

source

fn completion( &self, request: CompletionRequest, ) -> impl Future<Output = Result<CompletionResponse<Self::Response>, CompletionError>> + Send

Generates a completion response for the given completion request.

Provided Methods§

source

fn completion_request(&self, prompt: &str) -> CompletionRequestBuilder<Self>

Generates a completion request builder for the given prompt.

Object Safety§

This trait is not object safe.

Implementors§