pub struct DeepSeekClient { /* private fields */ }Available on crate features
models and deepseek only.Expand description
DeepSeek client for V4 and legacy models.
§V4 Models
ⓘ
use adk_model::deepseek::{DeepSeekClient, DeepSeekConfig, ReasoningEffort};
// V4 Pro with max reasoning
let pro = DeepSeekClient::new(
DeepSeekConfig::v4_pro("api-key")
.with_reasoning_effort(ReasoningEffort::Max)
)?;
// V4 Flash (fast, no thinking by default)
let flash = DeepSeekClient::v4_flash("api-key")?;§Legacy Models
ⓘ
// Still works — backward compatible
let chat = DeepSeekClient::chat("api-key")?;
let reasoner = DeepSeekClient::reasoner("api-key")?;Implementations§
Source§impl DeepSeekClient
impl DeepSeekClient
Sourcepub fn new(config: DeepSeekConfig) -> Result<DeepSeekClient, AdkError>
pub fn new(config: DeepSeekConfig) -> Result<DeepSeekClient, AdkError>
Create a new DeepSeek client.
Sourcepub fn v4_pro(api_key: impl Into<String>) -> Result<DeepSeekClient, AdkError>
pub fn v4_pro(api_key: impl Into<String>) -> Result<DeepSeekClient, AdkError>
Create a client for deepseek-v4-pro (strongest reasoning, thinking enabled).
Sourcepub fn v4_flash(api_key: impl Into<String>) -> Result<DeepSeekClient, AdkError>
pub fn v4_flash(api_key: impl Into<String>) -> Result<DeepSeekClient, AdkError>
Create a client for deepseek-v4-flash (fast, cost-efficient).
Sourcepub fn chat(api_key: impl Into<String>) -> Result<DeepSeekClient, AdkError>
pub fn chat(api_key: impl Into<String>) -> Result<DeepSeekClient, AdkError>
Create a client for deepseek-chat model (legacy).
Sourcepub fn reasoner(api_key: impl Into<String>) -> Result<DeepSeekClient, AdkError>
pub fn reasoner(api_key: impl Into<String>) -> Result<DeepSeekClient, AdkError>
Create a client for deepseek-reasoner model with thinking enabled (legacy).
Sourcepub fn with_retry_config(self, retry_config: RetryConfig) -> DeepSeekClient
pub fn with_retry_config(self, retry_config: RetryConfig) -> DeepSeekClient
Set retry configuration.
Sourcepub fn set_retry_config(&mut self, retry_config: RetryConfig)
pub fn set_retry_config(&mut self, retry_config: RetryConfig)
Set retry configuration (mutable).
Sourcepub fn retry_config(&self) -> &RetryConfig
pub fn retry_config(&self) -> &RetryConfig
Get the current retry configuration.
Trait Implementations§
Source§impl Llm for DeepSeekClient
impl Llm for DeepSeekClient
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,
DeepSeekClient: 'async_trait,
Auto Trait Implementations§
impl Freeze for DeepSeekClient
impl !RefUnwindSafe for DeepSeekClient
impl Send for DeepSeekClient
impl Sync for DeepSeekClient
impl Unpin for DeepSeekClient
impl UnsafeUnpin for DeepSeekClient
impl !UnwindSafe for DeepSeekClient
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.