pub struct LLMResponse {
pub content: Option<String>,
pub tool_calls: Option<Vec<ToolCall>>,
pub model: String,
pub usage: Option<Usage>,
pub finish_reason: FinishReason,
pub reasoning: Option<String>,
pub reasoning_details: Option<Vec<String>>,
pub tool_references: Vec<String>,
pub request_id: Option<String>,
pub organization_id: Option<String>,
}Expand description
Universal LLM response structure
Fields§
§content: Option<String>The response content text
tool_calls: Option<Vec<ToolCall>>Tool calls made by the model
model: StringThe model that generated this response
usage: Option<Usage>Token usage statistics
finish_reason: FinishReasonWhy the response finished
reasoning: Option<String>Reasoning content (for models that support it)
reasoning_details: Option<Vec<String>>Detailed reasoning traces (for models that support it)
tool_references: Vec<String>Tool references for context
request_id: Option<String>Request ID from the provider
organization_id: Option<String>Organization ID from the provider
Implementations§
Source§impl LLMResponse
impl LLMResponse
Trait Implementations§
Source§impl Clone for LLMResponse
impl Clone for LLMResponse
Source§fn clone(&self) -> LLMResponse
fn clone(&self) -> LLMResponse
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 LLMResponse
impl Debug for LLMResponse
Source§impl<'de> Deserialize<'de> for LLMResponse
impl<'de> Deserialize<'de> for LLMResponse
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 LLMResponse
impl PartialEq for LLMResponse
Source§impl Serialize for LLMResponse
impl Serialize for LLMResponse
impl StructuralPartialEq for LLMResponse
Auto Trait Implementations§
impl Freeze for LLMResponse
impl RefUnwindSafe for LLMResponse
impl Send for LLMResponse
impl Sync for LLMResponse
impl Unpin for LLMResponse
impl UnwindSafe for LLMResponse
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 more