pub struct CategoryProfile {
pub model_name: Option<String>,
pub tool_call_id: Option<String>,
pub subtype: Option<String>,
pub extra: BTreeMap<String, Value>,
pub annotated_request: Option<Arc<AnnotatedLlmRequest>>,
pub annotated_response: Option<Arc<AnnotatedLlmResponse>>,
}Expand description
Category-specific profile data.
Unknown wire keys are preserved in extra. LLM annotations are serialized
under category_profile when a codec captures them.
Fields§
§model_name: Option<String>Normalized model identifier for LLM events.
tool_call_id: Option<String>LLM-provider correlation ID for Tool events.
subtype: Option<String>Vendor subtype required when category == "custom".
extra: BTreeMap<String, Value>Unknown category-profile keys preserved from newer producers.
annotated_request: Option<Arc<AnnotatedLlmRequest>>Normalized request annotation for LLM start events.
annotated_response: Option<Arc<AnnotatedLlmResponse>>Normalized response annotation for LLM end events.
Implementations§
Source§impl CategoryProfile
impl CategoryProfile
Sourcepub fn builder() -> CategoryProfileBuilder
pub fn builder() -> CategoryProfileBuilder
Create a builder for building CategoryProfile.
On the builder, call .model_name(...)(optional), .tool_call_id(...)(optional), .subtype(...)(optional), .extra(...)(optional), .annotated_request(...)(optional), .annotated_response(...)(optional) to set the values of the fields.
Finally, call .build() to create the instance of CategoryProfile.
Source§impl CategoryProfile
impl CategoryProfile
Sourcepub fn is_wire_empty(&self) -> bool
pub fn is_wire_empty(&self) -> bool
Return true when the profile has no wire-serialized fields.
§Returns
true when no profile fields would be serialized on the wire.
Trait Implementations§
Source§impl Clone for CategoryProfile
impl Clone for CategoryProfile
Source§fn clone(&self) -> CategoryProfile
fn clone(&self) -> CategoryProfile
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CategoryProfile
impl Debug for CategoryProfile
Source§impl Default for CategoryProfile
impl Default for CategoryProfile
Source§fn default() -> CategoryProfile
fn default() -> CategoryProfile
Source§impl<'de> Deserialize<'de> for CategoryProfile
impl<'de> Deserialize<'de> for CategoryProfile
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<CategoryProfile, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<CategoryProfile, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for CategoryProfile
impl PartialEq for CategoryProfile
Source§impl Serialize for CategoryProfile
impl Serialize for CategoryProfile
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for CategoryProfile
Auto Trait Implementations§
impl Freeze for CategoryProfile
impl RefUnwindSafe for CategoryProfile
impl Send for CategoryProfile
impl Sync for CategoryProfile
impl Unpin for CategoryProfile
impl UnsafeUnpin for CategoryProfile
impl UnwindSafe for CategoryProfile
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
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> ⓘ
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> ⓘ
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 moreSource§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>
T in a tonic::Request