Skip to main content

BetaChatRequestBuilder

Struct BetaChatRequestBuilder 

Source
pub struct BetaChatRequestBuilder { /* private fields */ }
Expand description

Builder for BetaChatRequest.

Implementations§

Source§

impl BetaChatRequestBuilder

Source

pub fn client<VALUE: Into<DeepSeekClient>>(self, value: VALUE) -> Self

Source

pub fn messages<VALUE: Into<Vec<BetaChatMessage>>>(self, value: VALUE) -> Self

A list of messages comprising the conversation so far.

Source

pub fn message<VALUE, FROM_VALUE: Into<VALUE>>(self, item: FROM_VALUE) -> Self
where Vec<BetaChatMessage>: Default + Extend<VALUE>,

A list of messages comprising the conversation so far.

Source

pub fn model<VALUE: Into<String>>(self, value: VALUE) -> Self

Possible values: [deepseek-v4-flash, deepseek-v4-pro]

ID of the model to use.

Source

pub fn thinking<VALUE: Into<Thinking>>(self, value: VALUE) -> Self

Controls the switch between thinking and non-thinking mode.

Source

pub fn reasoning_effort<VALUE: Into<ReasoningEffort>>( self, value: VALUE, ) -> Self

Possible values: [high, max]

Controls the reasoning effort of the model. The default effort is high for regular requests; for some complex agent requests (such as Claude Code, OpenCode), effort is automatically set to max. For compatibility, low and medium are mapped to high, and xhigh is mapped to max.

Source

pub fn max_tokens<VALUE: Into<u32>>(self, value: VALUE) -> Self

The maximum number of tokens that can be generated in the chat completion.

The total length of input tokens and generated tokens is limited by the model’s context length.

For the value range and default value, please refer to the documentation.

Source

pub fn response_format<VALUE: Into<ResponseFormat>>(self, value: VALUE) -> Self

An object specifying the format that the model must output. Setting to { “type”: “json_object” } enables JSON Output, which guarantees the message the model generates is valid JSON.

Important: When using JSON Output, you must also instruct the model to produce JSON yourself via a system or user message. Without this, the model may generate an unending stream of whitespace until the generation reaches the token limit, resulting in a long-running and seemingly “stuck” request. Also note that the message content may be partially cut off if finish_reason=“length”, which indicates the generation exceeded max_tokens or the conversation exceeded the max context length.

Source

pub fn stop<VALUE: Into<Stop>>(self, value: VALUE) -> Self

Up to 16 sequences where the API will stop generating further tokens.

Source

pub fn stream<VALUE: Into<bool>>(self, value: VALUE) -> Self

If set, partial message deltas will be sent. Tokens will be sent as data-only server-sent events (SSE) as they become available, with the stream terminated by a `data: [DONE]`` message.

Source

pub fn stream_options<VALUE: Into<StreamOptions>>(self, value: VALUE) -> Self

Options for streaming response. Only set this when you set stream: true.

Source

pub fn temperature<VALUE: Into<f64>>(self, value: VALUE) -> Self

Possible values: <= 2

Default value: 1

What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 will make it more focused and deterministic. We generally recommend altering this or top_p but not both.

Source

pub fn top_p<VALUE: Into<f64>>(self, value: VALUE) -> Self

Possible values: <= 1

Default value: 1

An alternative to sampling with temperature, called nucleus sampling, where the model considers the results of the tokens with top_p probability mass. So 0.1 means only the tokens comprising the top 10% probability mass are considered.

We generally recommend altering this or temperature but not both.

Source

pub fn tools<VALUE: Into<Vec<Tool>>>(self, value: VALUE) -> Self

A list of tools the model may call. Currently, only functions are supported as a tool. Use this to provide a list of functions the model may generate JSON inputs for. A max of 128 functions are supported.

Source

pub fn tool<VALUE, FROM_VALUE: Into<VALUE>>(self, item: FROM_VALUE) -> Self
where Vec<Tool>: Default + Extend<VALUE>,

A list of tools the model may call. Currently, only functions are supported as a tool. Use this to provide a list of functions the model may generate JSON inputs for. A max of 128 functions are supported.

Source

pub fn tool_choice<VALUE: Into<ToolChoice>>(self, value: VALUE) -> Self

Controls which (if any) tool is called by the model. none means the model will not call any tool and instead generates a message. auto means the model can pick between generating a message or calling one or more tools. required means the model must call one or more tools. Specifying a particular tool via {"type": "function", "function": {"name": "my_function"}} forces the model to call that tool. none is the default when no tools are present. auto is the default if tools are present.

Source

pub fn logprobs<VALUE: Into<bool>>(self, value: VALUE) -> Self

Whether to return log probabilities of the output tokens or not. If true, returns the log probabilities of each output token returned in the content of message.

Source

pub fn top_logprobs<VALUE: Into<u32>>(self, value: VALUE) -> Self

Possible values: <= 20

An integer between 0 and 20 specifying the number of most likely tokens to return at each token position, each with an associated log probability. logprobs must be set to true if this parameter is used.

Source

pub fn user_id<VALUE: Into<String>>(self, value: VALUE) -> Self

A custom user_id. Allowed character set is [a-zA-Z0-9\-_], with a maximum length of 512. Do not include user privacy information in the user_id. user_id can be used to distinguish user identities on your side to help us with content safety review. user_id can be used for KVCache isolation for privacy management. user_id can be used for scheduling isolation of users on your business side. For more details on the user_id parameter, please refer to Rate Limit & Isolation

Source

pub fn build(self) -> Result<BetaChatRequest, BetaChatRequestBuilderError>

Builds a new BetaChatRequest.

§Errors

If a required field has not been initialized.

Trait Implementations§

Source§

impl Default for BetaChatRequestBuilder

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more