pub struct OpenAiCodexProvider { /* private fields */ }Implementations§
Source§impl OpenAiCodexProvider
impl OpenAiCodexProvider
pub fn from_api_key(api_key: String) -> Self
Sourcepub fn from_credentials(credentials: OAuthCredentials) -> Self
pub fn from_credentials(credentials: OAuthCredentials) -> Self
Create from stored OAuth credentials (from Vault)
Get the OAuth authorization URL for the user to visit
pub fn oauth_issuer() -> &'static str
pub fn oauth_client_id() -> &'static str
pub fn responses_ws_url() -> String
pub async fn connect_responses_ws(&self) -> Result<OpenAiRealtimeConnection>
Sourcepub async fn exchange_code(
code: &str,
verifier: &str,
) -> Result<OAuthCredentials>
pub async fn exchange_code( code: &str, verifier: &str, ) -> Result<OAuthCredentials>
Exchange authorization code for tokens
Sourcepub async fn exchange_code_with_redirect_uri(
code: &str,
verifier: &str,
redirect_uri: &str,
) -> Result<OAuthCredentials>
pub async fn exchange_code_with_redirect_uri( code: &str, verifier: &str, redirect_uri: &str, ) -> Result<OAuthCredentials>
Exchange authorization code for tokens using a custom redirect URI.
pub async fn exchange_id_token_for_api_key(id_token: &str) -> Result<String>
pub fn extract_chatgpt_account_id(token: &str) -> Option<String>
Trait Implementations§
Source§impl Debug for OpenAiCodexProvider
impl Debug for OpenAiCodexProvider
Source§impl Default for OpenAiCodexProvider
impl Default for OpenAiCodexProvider
Source§impl Provider for OpenAiCodexProvider
impl Provider for OpenAiCodexProvider
Source§fn list_models<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<ModelInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn list_models<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<ModelInfo>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
List models available under this provider. Read more
Source§fn complete<'life0, 'async_trait>(
&'life0 self,
request: CompletionRequest,
) -> Pin<Box<dyn Future<Output = Result<CompletionResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn complete<'life0, 'async_trait>(
&'life0 self,
request: CompletionRequest,
) -> Pin<Box<dyn Future<Output = Result<CompletionResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Generate a single completion. Read more
Source§fn complete_stream<'life0, 'async_trait>(
&'life0 self,
request: CompletionRequest,
) -> Pin<Box<dyn Future<Output = Result<BoxStream<'static, StreamChunk>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn complete_stream<'life0, 'async_trait>(
&'life0 self,
request: CompletionRequest,
) -> Pin<Box<dyn Future<Output = Result<BoxStream<'static, StreamChunk>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Generate a streaming completion. Read more
Source§fn embed<'life0, 'async_trait>(
&'life0 self,
_request: EmbeddingRequest,
) -> Pin<Box<dyn Future<Output = Result<EmbeddingResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn embed<'life0, 'async_trait>(
&'life0 self,
_request: EmbeddingRequest,
) -> Pin<Box<dyn Future<Output = Result<EmbeddingResponse>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Generate embeddings (optional; default returns an error).
Auto Trait Implementations§
impl Freeze for OpenAiCodexProvider
impl !RefUnwindSafe for OpenAiCodexProvider
impl Send for OpenAiCodexProvider
impl Sync for OpenAiCodexProvider
impl Unpin for OpenAiCodexProvider
impl UnsafeUnpin for OpenAiCodexProvider
impl !UnwindSafe for OpenAiCodexProvider
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ServiceExt for T
impl<T> ServiceExt for T
Source§fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
fn map_response_body<F>(self, f: F) -> MapResponseBody<Self, F>where
Self: Sized,
Apply a transformation to the response body. Read more
Source§fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
fn trace_for_http(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using HTTP status codes. Read more
Source§fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
fn trace_for_grpc(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>>where
Self: Sized,
High level tracing that classifies responses using gRPC headers. Read more