pub struct ChatCompletionRequest {Show 28 fields
pub model: String,
pub messages: Vec<Message>,
pub frequency_penalty: Option<f64>,
pub logprobs: Option<bool>,
pub max_completion_tokens: Option<u64>,
pub max_tokens: Option<u64>,
pub n: Option<u32>,
pub presence_penalty: Option<f64>,
pub response_format: Option<ResponseFormat>,
pub seed: Option<i64>,
pub stop: Option<Stop>,
pub stream: Option<bool>,
pub stream_options: Option<StreamOptions>,
pub temperature: Option<f64>,
pub tool_choice: Option<ToolChoice>,
pub tools: Option<Vec<Tool>>,
pub top_logprobs: Option<u32>,
pub top_p: Option<f64>,
pub user: Option<String>,
pub reasoning_effort: Option<String>,
pub parallel_tool_calls: Option<bool>,
pub logit_bias: Option<HashMap<String, i32>>,
pub metadata: Option<HashMap<String, String>>,
pub store: Option<bool>,
pub service_tier: Option<String>,
pub modalities: Option<Vec<String>>,
pub audio: Option<Value>,
pub extra: HashMap<String, Value>,
}Expand description
Request body for POST /chat/completions, mirroring the parameter list in
resources/chat/completions/completions.py::create.
Fields§
§model: String§messages: Vec<Message>§frequency_penalty: Option<f64>§logprobs: Option<bool>§max_completion_tokens: Option<u64>§max_tokens: Option<u64>Deprecated upstream in favor of max_completion_tokens, but still
widely supported by OpenAI-compatible providers.
n: Option<u32>§presence_penalty: Option<f64>§response_format: Option<ResponseFormat>§seed: Option<i64>§stop: Option<Stop>§stream: Option<bool>§stream_options: Option<StreamOptions>§temperature: Option<f64>§tool_choice: Option<ToolChoice>§tools: Option<Vec<Tool>>§top_logprobs: Option<u32>§top_p: Option<f64>§user: Option<String>§reasoning_effort: Option<String>Reasoning effort for reasoning models ("minimal", "low",
"medium", "high").
parallel_tool_calls: Option<bool>§logit_bias: Option<HashMap<String, i32>>§metadata: Option<HashMap<String, String>>§store: Option<bool>§service_tier: Option<String>§modalities: Option<Vec<String>>Output modalities, e.g. ["text", "audio"].
audio: Option<Value>Audio output configuration ({"voice": ..., "format": ...}).
extra: HashMap<String, Value>Escape hatch: additional request parameters flattened into the JSON body, for provider-specific or newly-added params not yet typed.
Implementations§
Source§impl ChatCompletionRequest
impl ChatCompletionRequest
pub fn new(model: impl Into<String>, messages: Vec<Message>) -> Self
pub fn temperature(self, temperature: f64) -> Self
pub fn max_completion_tokens(self, max: u64) -> Self
pub fn max_tokens(self, max: u64) -> Self
pub fn top_p(self, top_p: f64) -> Self
pub fn n(self, n: u32) -> Self
pub fn seed(self, seed: i64) -> Self
pub fn frequency_penalty(self, penalty: f64) -> Self
pub fn presence_penalty(self, penalty: f64) -> Self
pub fn logprobs(self, logprobs: bool) -> Self
pub fn top_logprobs(self, top_logprobs: u32) -> Self
pub fn stop(self, stop: Stop) -> Self
pub fn response_format(self, response_format: ResponseFormat) -> Self
pub fn tools(self, tools: Vec<Tool>) -> Self
pub fn tool_choice(self, tool_choice: ToolChoice) -> Self
pub fn stream_options(self, stream_options: StreamOptions) -> Self
pub fn user(self, user: impl Into<String>) -> Self
Sourcepub fn reasoning_effort(self, effort: impl Into<String>) -> Self
pub fn reasoning_effort(self, effort: impl Into<String>) -> Self
Reasoning effort for reasoning models: "minimal", "low",
"medium", or "high".
pub fn parallel_tool_calls(self, parallel: bool) -> Self
pub fn metadata(self, metadata: HashMap<String, String>) -> Self
pub fn store(self, store: bool) -> Self
Trait Implementations§
Source§impl Clone for ChatCompletionRequest
impl Clone for ChatCompletionRequest
Source§fn clone(&self) -> ChatCompletionRequest
fn clone(&self) -> ChatCompletionRequest
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ChatCompletionRequest
impl Debug for ChatCompletionRequest
Source§impl Default for ChatCompletionRequest
impl Default for ChatCompletionRequest
Source§fn default() -> ChatCompletionRequest
fn default() -> ChatCompletionRequest
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for ChatCompletionRequest
impl RefUnwindSafe for ChatCompletionRequest
impl Send for ChatCompletionRequest
impl Sync for ChatCompletionRequest
impl Unpin for ChatCompletionRequest
impl UnsafeUnpin for ChatCompletionRequest
impl UnwindSafe for ChatCompletionRequest
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