pub struct CompletionRequest {
pub messages: Vec<Message>,
pub model: String,
pub max_tokens: Option<u32>,
pub temperature: Option<f32>,
pub top_p: Option<f32>,
pub stream: Option<bool>,
pub n: Option<u32>,
pub stop: Option<Vec<String>>,
pub presence_penalty: Option<f32>,
pub frequency_penalty: Option<f32>,
pub user: Option<String>,
pub response_format: Option<ResponseFormat>,
}Expand description
A completion request to an LLM provider.
Fields§
§messages: Vec<Message>List of messages in the conversation
model: StringModel identifier (e.g., “gpt-4”, “claude-3-opus”)
max_tokens: Option<u32>Maximum tokens to generate
temperature: Option<f32>Sampling temperature (0.0-2.0)
top_p: Option<f32>Nucleus sampling threshold (0.0-1.0)
stream: Option<bool>Enable streaming responses
n: Option<u32>Number of completions to generate
stop: Option<Vec<String>>Stop sequences
presence_penalty: Option<f32>Presence penalty (-2.0 to 2.0)
frequency_penalty: Option<f32>Frequency penalty (-2.0 to 2.0)
user: Option<String>User identifier (for abuse detection)
response_format: Option<ResponseFormat>Response format for structured outputs (OpenAI only)
Implementations§
Source§impl CompletionRequest
impl CompletionRequest
Sourcepub fn builder() -> CompletionRequestBuilder
pub fn builder() -> CompletionRequestBuilder
Create a new builder.
§Example
use simple_agent_type::request::CompletionRequest;
use simple_agent_type::message::Message;
let request = CompletionRequest::builder()
.model("gpt-4")
.message(Message::user("Hello!"))
.build()
.unwrap();Trait Implementations§
Source§impl Clone for CompletionRequest
impl Clone for CompletionRequest
Source§fn clone(&self) -> CompletionRequest
fn clone(&self) -> CompletionRequest
Returns a duplicate of the value. Read more
1.0.0 · 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 CompletionRequest
impl Debug for CompletionRequest
Source§impl<'de> Deserialize<'de> for CompletionRequest
impl<'de> Deserialize<'de> for CompletionRequest
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for CompletionRequest
impl PartialEq for CompletionRequest
Source§impl Serialize for CompletionRequest
impl Serialize for CompletionRequest
impl StructuralPartialEq for CompletionRequest
Auto Trait Implementations§
impl Freeze for CompletionRequest
impl RefUnwindSafe for CompletionRequest
impl Send for CompletionRequest
impl Sync for CompletionRequest
impl Unpin for CompletionRequest
impl UnwindSafe for CompletionRequest
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