mistral_openapi_client/models/
chat_completion_response.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ChatCompletionResponse {
16 #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
17 pub id: Option<String>,
18 #[serde(rename = "object", skip_serializing_if = "Option::is_none")]
19 pub object: Option<String>,
20 #[serde(rename = "model", skip_serializing_if = "Option::is_none")]
21 pub model: Option<String>,
22 #[serde(rename = "usage", skip_serializing_if = "Option::is_none")]
23 pub usage: Option<Box<models::UsageInfo>>,
24 #[serde(rename = "created", skip_serializing_if = "Option::is_none")]
25 pub created: Option<i32>,
26 #[serde(rename = "choices")]
27 pub choices: Vec<models::ChatCompletionChoice>,
28}
29
30impl ChatCompletionResponse {
31 pub fn new(choices: Vec<models::ChatCompletionChoice>) -> ChatCompletionResponse {
32 ChatCompletionResponse {
33 id: None,
34 object: None,
35 model: None,
36 usage: None,
37 created: None,
38 choices,
39 }
40 }
41}
42