pub struct TurnMetrics {
pub role: String,
pub word_count: usize,
pub char_count: usize,
pub question_count: usize,
pub response_time_ms: Option<u64>,
pub sentiment_score: f64,
pub topic_keywords: Vec<String>,
}Expand description
Per-turn metrics for a single conversation turn.
Fields§
§role: StringRole of the speaker (e.g. "user" or "assistant").
word_count: usizeNumber of words in the turn.
char_count: usizeNumber of characters in the turn.
question_count: usizeNumber of interrogative patterns detected.
response_time_ms: Option<u64>Time from the previous turn to this turn in milliseconds, if known.
sentiment_score: f64Sentiment score in the range [-1.0, 1.0].
topic_keywords: Vec<String>Top keywords extracted from this turn.
Trait Implementations§
Source§impl Clone for TurnMetrics
impl Clone for TurnMetrics
Source§fn clone(&self) -> TurnMetrics
fn clone(&self) -> TurnMetrics
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 moreAuto Trait Implementations§
impl Freeze for TurnMetrics
impl RefUnwindSafe for TurnMetrics
impl Send for TurnMetrics
impl Sync for TurnMetrics
impl Unpin for TurnMetrics
impl UnsafeUnpin for TurnMetrics
impl UnwindSafe for TurnMetrics
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request