pub trait JsonRequest<TRes: DeserializeOwned>: Serialize + Sized + Sync {
    const ENDPOINT: &'static str;

    // Provided method
    fn run<'life0, 'life1, 'async_trait>(
        &'life0 self,
        client: &'life1 OpenAiClient
    ) -> Pin<Box<dyn Future<Output = Result<TRes>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
}

Required Associated Constants§

source

const ENDPOINT: &'static str

Provided Methods§

source

fn run<'life0, 'life1, 'async_trait>( &'life0 self, client: &'life1 OpenAiClient ) -> Pin<Box<dyn Future<Output = Result<TRes>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Implementors§

source§

impl JsonRequest<ChatSuccess> for ChatRequest

source§

const ENDPOINT: &'static str = "/chat/completions"

source§

impl JsonRequest<CompletionSuccess> for CompletionRequest

source§

const ENDPOINT: &'static str = "/completions"

source§

impl JsonRequest<EditResponse> for EditRequest

source§

const ENDPOINT: &'static str = "/edits"

source§

impl JsonRequest<EmbeddingResponse> for EmbeddingRequest

source§

const ENDPOINT: &'static str = "/embeddings"

source§

impl JsonRequest<FineTune> for FineTuneCreateRequest

source§

const ENDPOINT: &'static str = "/fine-tunes"

source§

impl JsonRequest<ImageResponse> for ImageRequest

source§

const ENDPOINT: &'static str = "/images/generations"

source§

impl JsonRequest<ModerationResponse> for ModerationRequest

source§

const ENDPOINT: &'static str = "/moderations"