mistral_openapi_client/models/
model_capabilities.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct ModelCapabilities {
16 #[serde(rename = "completion_chat", skip_serializing_if = "Option::is_none")]
17 pub completion_chat: Option<bool>,
18 #[serde(rename = "function_calling", skip_serializing_if = "Option::is_none")]
19 pub function_calling: Option<bool>,
20 #[serde(rename = "completion_fim", skip_serializing_if = "Option::is_none")]
21 pub completion_fim: Option<bool>,
22 #[serde(rename = "fine_tuning", skip_serializing_if = "Option::is_none")]
23 pub fine_tuning: Option<bool>,
24 #[serde(rename = "vision", skip_serializing_if = "Option::is_none")]
25 pub vision: Option<bool>,
26 #[serde(rename = "ocr", skip_serializing_if = "Option::is_none")]
27 pub ocr: Option<bool>,
28 #[serde(rename = "classification", skip_serializing_if = "Option::is_none")]
29 pub classification: Option<bool>,
30 #[serde(rename = "moderation", skip_serializing_if = "Option::is_none")]
31 pub moderation: Option<bool>,
32 #[serde(rename = "audio", skip_serializing_if = "Option::is_none")]
33 pub audio: Option<bool>,
34 #[serde(rename = "audio_transcription", skip_serializing_if = "Option::is_none")]
35 pub audio_transcription: Option<bool>,
36}
37
38impl ModelCapabilities {
39 pub fn new() -> ModelCapabilities {
40 ModelCapabilities {
41 completion_chat: None,
42 function_calling: None,
43 completion_fim: None,
44 fine_tuning: None,
45 vision: None,
46 ocr: None,
47 classification: None,
48 moderation: None,
49 audio: None,
50 audio_transcription: None,
51 }
52 }
53}
54