gproxy_protocol/protocol/openai/common/logprobs/
stream.rs1use serde::{Deserialize, Serialize};
2
3use super::super::Extra;
4
5#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
6#[non_exhaustive]
7pub struct StreamTokenLogprob {
8 pub token: String,
9 pub logprob: f64,
10 #[serde(skip_serializing_if = "Option::is_none")]
11 pub top_logprobs: Option<Vec<StreamTokenTopLogprob>>,
12 #[serde(
13 default,
14 flatten,
15 skip_serializing_if = "std::collections::BTreeMap::is_empty"
16 )]
17 pub extra: Extra,
18}
19
20#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, gproxy_protocol_macros::WireBuilder)]
21#[non_exhaustive]
22pub struct StreamTokenTopLogprob {
23 #[serde(skip_serializing_if = "Option::is_none")]
24 pub token: Option<String>,
25 #[serde(skip_serializing_if = "Option::is_none")]
26 pub logprob: Option<f64>,
27 #[serde(
28 default,
29 flatten,
30 skip_serializing_if = "std::collections::BTreeMap::is_empty"
31 )]
32 pub extra: Extra,
33}