zai_rs/model/
chat_models.rs1use super::traits::*;
46use crate::model::chat_message_types::{TextMessage, VisionMessage, VoiceMessage};
47use crate::{define_model_type, impl_message_binding, impl_model_markers};
48
49define_model_type!(GLM4_6, "glm-4.6");
50impl_message_binding!(GLM4_6, TextMessage);
51impl_model_markers!(GLM4_6: Chat, AsyncChat, ThinkEnable);
52impl ToolStreamEnable for GLM4_6 {}
53
54
55
56define_model_type!(GLM4_5, "glm-4.5");
57impl_message_binding!(GLM4_5, TextMessage);
58impl_model_markers!(GLM4_5: Chat, AsyncChat, ThinkEnable);
59
60define_model_type!(
61 #[allow(non_camel_case_types)]
62 GLM4_5_flash,
63 "glm-4.5-flash"
64);
65impl_message_binding!(GLM4_5_flash, TextMessage);
66impl_model_markers!(GLM4_5_flash: Chat, AsyncChat, ThinkEnable);
67
68define_model_type!(
69 #[allow(non_camel_case_types)]
70 GLM4_5_air,
71 "glm-4.5-air"
72);
73impl_message_binding!(GLM4_5_air, TextMessage);
74impl_model_markers!(GLM4_5_air: Chat, AsyncChat, ThinkEnable);
75
76define_model_type!(
77 #[allow(non_camel_case_types)]
78 GLM4_5_x,
79 "glm-4.5-X"
80);
81impl_message_binding!(GLM4_5_x, TextMessage);
82impl_model_markers!(GLM4_5_x: Chat, AsyncChat, ThinkEnable);
83
84define_model_type!(
85 #[allow(non_camel_case_types)]
86 GLM4_5_airx,
87 "glm-4.5-airx"
88);
89impl_message_binding!(GLM4_5_airx, TextMessage);
90impl_model_markers!(GLM4_5_airx: Chat, AsyncChat, ThinkEnable);
91
92define_model_type!(
93 #[allow(non_camel_case_types)]
94 GLM4_5v,
95 "glm-4.5v"
96);
97impl_message_binding!(GLM4_5v, VisionMessage);
98impl_model_markers!(GLM4_5v: Chat, AsyncChat);
99
100define_model_type!(
101 #[allow(non_camel_case_types)]
102 GLM4_voice,
103 "glm-4-voice"
104);
105impl_message_binding!(GLM4_voice, VoiceMessage);
106impl_model_markers!(GLM4_voice: Chat, AsyncChat);