Completion

Trait Completion 

Source
pub trait Completion {
    type Response: Send + Sync + ResponseContent + ResponseToolCalls;

    // Required method
    fn completion(
        &mut self,
        request: Request,
    ) -> impl Future<Output = Result<Self::Response, CompletionError>>;
}
Expand description

A trait defining the behavior of a completion engine.

This trait is used by components that handle requests for text generation (or similar completions) and generate responses asynchronously.

§Associated Types

  • Response: The specific type of the response generated by the completion engine.

Required Associated Types§

Source

type Response: Send + Sync + ResponseContent + ResponseToolCalls

The type of response returned by the completion method.

Required Methods§

Source

fn completion( &mut self, request: Request, ) -> impl Future<Output = Result<Self::Response, CompletionError>>

Processes a Request and returns the generated response asynchronously.

§Arguments
  • request: The request object containing the prompt and additional configuration.
§Returns

A future that resolves to either:

  • Ok(Self::Response): The generated response.
  • Err(CompletionError): An error encountered during the request processing.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§