pub struct CompletionRequest {
pub system_prompt_blocks: Vec<PromptBlock>,
pub messages: Vec<Message>,
pub tools: Vec<ToolDefinition>,
pub model_hint: Option<ModelHint>,
pub max_tokens: Option<u32>,
}Expand description
All inputs a provider needs to generate a single completion.
Fields§
§system_prompt_blocks: Vec<PromptBlock>Structured system prompt blocks. Providers that do not support block-level semantics should render these blocks into a single system message.
messages: Vec<Message>§tools: Vec<ToolDefinition>§model_hint: Option<ModelHint>Optional model routing hint. When None, the provider uses its default model.
When Some, a routing-aware provider may select a different model.
max_tokens: Option<u32>Maximum output tokens. When None, the provider uses its default.
Implementations§
Source§impl CompletionRequest
impl CompletionRequest
pub fn system_prompt_text(&self) -> Option<String>
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 moreAuto Trait Implementations§
impl Freeze for CompletionRequest
impl RefUnwindSafe for CompletionRequest
impl Send for CompletionRequest
impl Sync for CompletionRequest
impl Unpin for CompletionRequest
impl UnsafeUnpin 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