pub struct OpenAIClient { /* private fields */ }Available on crate feature
models only.Expand description
OpenAI client for standard OpenAI API and OpenAI-compatible APIs.
Implementations§
Source§impl OpenAIClient
impl OpenAIClient
Sourcepub fn new(config: OpenAIConfig) -> Result<OpenAIClient, AdkError>
Available on crate feature openai only.
pub fn new(config: OpenAIConfig) -> Result<OpenAIClient, AdkError>
openai only.Create a new OpenAI client.
Sourcepub fn compatible(
api_key: impl Into<String>,
base_url: impl Into<String>,
model: impl Into<String>,
) -> Result<OpenAIClient, AdkError>
Available on crate feature openai only.
pub fn compatible( api_key: impl Into<String>, base_url: impl Into<String>, model: impl Into<String>, ) -> Result<OpenAIClient, AdkError>
openai only.Create a client for an OpenAI-compatible API.
pub fn with_retry_config(self, retry_config: RetryConfig) -> OpenAIClient
Available on crate feature
openai only.pub fn set_retry_config(&mut self, retry_config: RetryConfig)
Available on crate feature
openai only.pub fn retry_config(&self) -> &RetryConfig
Available on crate feature
openai only.Trait Implementations§
Source§impl Llm for OpenAIClient
impl Llm for OpenAIClient
fn name(&self) -> &str
fn generate_content<'life0, 'async_trait>(
&'life0 self,
request: LlmRequest,
stream: bool,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<LlmResponse, AdkError>> + Send>>, AdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
OpenAIClient: 'async_trait,
Auto Trait Implementations§
impl Freeze for OpenAIClient
impl !RefUnwindSafe for OpenAIClient
impl Send for OpenAIClient
impl Sync for OpenAIClient
impl Unpin for OpenAIClient
impl UnsafeUnpin for OpenAIClient
impl !UnwindSafe for OpenAIClient
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> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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::RequestCreates a shared type from an unshared type.