Struct GenAISpan
pub struct GenAISpan {Show 18 fields
pub model: String,
pub provider: String,
pub operation: String,
pub response_model: Option<String>,
pub response_id: Option<String>,
pub finish_reasons: Vec<String>,
pub error_type: Option<String>,
pub error_class: Option<String>,
pub input_tokens: Option<i32>,
pub output_tokens: Option<i32>,
pub total_tokens: Option<i32>,
pub cache_read_input_tokens: Option<i32>,
pub cache_creation_input_tokens: Option<i32>,
pub temperature: Option<f64>,
pub top_p: Option<f64>,
pub max_tokens: Option<u32>,
pub stop_sequences: Vec<String>,
pub duration_ms: u64,
}Expand description
A single LLM inference span (OTel GenAI aligned).
Fields§
§model: StringOTel: gen_ai.request.model.
provider: StringOTel: gen_ai.provider.name.
operation: StringOTel: gen_ai.operation.name.
response_model: Option<String>OTel: gen_ai.response.model.
response_id: Option<String>OTel: gen_ai.response.id.
finish_reasons: Vec<String>OTel: gen_ai.response.finish_reasons.
error_type: Option<String>OTel: error.type.
error_class: Option<String>Classified error category (e.g. rate_limit, timeout).
input_tokens: Option<i32>OTel: gen_ai.usage.input_tokens.
output_tokens: Option<i32>OTel: gen_ai.usage.output_tokens.
total_tokens: Option<i32>§cache_read_input_tokens: Option<i32>OTel: gen_ai.usage.cache_read.input_tokens.
cache_creation_input_tokens: Option<i32>OTel: gen_ai.usage.cache_creation.input_tokens.
temperature: Option<f64>OTel: gen_ai.request.temperature.
top_p: Option<f64>OTel: gen_ai.request.top_p.
max_tokens: Option<u32>OTel: gen_ai.request.max_tokens.
stop_sequences: Vec<String>OTel: gen_ai.request.stop_sequences.
duration_ms: u64OTel: gen_ai.client.operation.duration.
Trait Implementations§
§impl<'de> Deserialize<'de> for GenAISpan
impl<'de> Deserialize<'de> for GenAISpan
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<GenAISpan, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<GenAISpan, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl Serialize for GenAISpan
impl Serialize for GenAISpan
§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,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for GenAISpan
impl RefUnwindSafe for GenAISpan
impl Send for GenAISpan
impl Sync for GenAISpan
impl Unpin for GenAISpan
impl UnwindSafe for GenAISpan
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