zai_rs/model/
chat_models.rs1use super::traits::*;
68use crate::{
69 define_model_type, impl_message_binding, impl_model_markers,
70 model::chat_message_types::{TextMessage, VisionMessage, VoiceMessage},
71};
72
73define_model_type!(
78 #[allow(non_camel_case_types)]
79 GLM5_turbo,
80 "glm-5-turbo"
81);
82impl_message_binding!(GLM5_turbo, TextMessage);
83impl_model_markers!(GLM5_turbo: Chat, AsyncChat, ThinkEnable);
84
85define_model_type!(GLM5, "glm-5");
86impl_message_binding!(GLM5, TextMessage);
87impl_model_markers!(GLM5: Chat, AsyncChat, ThinkEnable);
88
89define_model_type!(GLM4_7, "glm-4.7");
90impl_message_binding!(GLM4_7, TextMessage);
91impl_model_markers!(GLM4_7: Chat, AsyncChat, ThinkEnable, ToolStreamEnable);
92
93define_model_type!(
94 #[allow(non_camel_case_types)]
95 GLM4_7_flash,
96 "glm-4.7-flash"
97);
98impl_message_binding!(GLM4_7_flash, TextMessage);
99impl_model_markers!(GLM4_7_flash: Chat, AsyncChat, ThinkEnable);
100
101define_model_type!(
102 #[allow(non_camel_case_types)]
103 GLM4_7_flashx,
104 "glm-4.7-flashx"
105);
106impl_message_binding!(GLM4_7_flashx, TextMessage);
107impl_model_markers!(GLM4_7_flashx: Chat, AsyncChat, ThinkEnable);
108
109define_model_type!(GLM4_6, "glm-4.6");
110impl_message_binding!(GLM4_6, TextMessage);
111impl_model_markers!(GLM4_6: Chat, AsyncChat, ThinkEnable);
112impl ToolStreamEnable for GLM4_6 {}
113
114define_model_type!(GLM4_5, "glm-4.5");
115impl_message_binding!(GLM4_5, TextMessage);
116impl_model_markers!(GLM4_5: Chat, AsyncChat, ThinkEnable);
117
118define_model_type!(
119 #[allow(non_camel_case_types)]
120 GLM4_5_x,
121 "glm-4.5-X"
122);
123impl_message_binding!(GLM4_5_x, TextMessage);
124impl_model_markers!(GLM4_5_x: Chat, AsyncChat, ThinkEnable);
125
126define_model_type!(
127 #[allow(non_camel_case_types)]
128 GLM4_5_flash,
129 "glm-4.5-flash"
130);
131impl_message_binding!(GLM4_5_flash, TextMessage);
132impl_model_markers!(GLM4_5_flash: Chat, AsyncChat, ThinkEnable);
133
134define_model_type!(
135 #[allow(non_camel_case_types)]
136 GLM4_5_air,
137 "glm-4.5-air"
138);
139impl_message_binding!(GLM4_5_air, TextMessage);
140impl_model_markers!(GLM4_5_air: Chat, AsyncChat, ThinkEnable);
141
142define_model_type!(
143 #[allow(non_camel_case_types)]
144 GLM4_5_airx,
145 "glm-4.5-airx"
146);
147impl_message_binding!(GLM4_5_airx, TextMessage);
148impl_model_markers!(GLM4_5_airx: Chat, AsyncChat, ThinkEnable);
149
150define_model_type!(
155 #[allow(non_camel_case_types)]
156 autoglm_phone,
157 "autoglm-phone"
158);
159impl_message_binding!(autoglm_phone, VisionMessage);
160impl_model_markers!(autoglm_phone: Chat, AsyncChat);
161
162define_model_type!(
163 #[allow(non_camel_case_types)]
164 GLM4_6v,
165 "glm-4.6v"
166);
167impl_message_binding!(GLM4_6v, VisionMessage);
168impl_model_markers!(GLM4_6v: Chat, AsyncChat);
169
170define_model_type!(
171 #[allow(non_camel_case_types)]
172 GLM4_6v_flash,
173 "glm-4.6v-flash"
174);
175impl_message_binding!(GLM4_6v_flash, VisionMessage);
176impl_model_markers!(GLM4_6v_flash: Chat, AsyncChat);
177
178define_model_type!(
179 #[allow(non_camel_case_types)]
180 GLM4_6v_flashx,
181 "glm-4.6v-flashx"
182);
183impl_message_binding!(GLM4_6v_flashx, VisionMessage);
184impl_model_markers!(GLM4_6v_flashx: Chat, AsyncChat);
185
186define_model_type!(
187 #[allow(non_camel_case_types)]
188 GLM4_5v,
189 "glm-4.5v"
190);
191impl_message_binding!(GLM4_5v, VisionMessage);
192impl_model_markers!(GLM4_5v: Chat, AsyncChat);
193
194define_model_type!(
199 #[allow(non_camel_case_types)]
200 GLM4_voice,
201 "glm-4-voice"
202);
203impl_message_binding!(GLM4_voice, VoiceMessage);
204impl_model_markers!(GLM4_voice: Chat, AsyncChat);