swiftide_integrations/dashscope/
mod.rs1use config::DashscopeConfig;
2
3use crate::openai;
4
5mod config;
6
7pub type Dashscope = openai::GenericOpenAI<DashscopeConfig>;
8impl Dashscope {
9 pub fn builder() -> DashscopeBuilder {
10 DashscopeBuilder::default()
11 }
12}
13
14pub type DashscopeBuilder = openai::GenericOpenAIBuilder<DashscopeConfig>;
15pub type DashscopeBuilderError = openai::GenericOpenAIBuilderError;
16pub use openai::{Options, OptionsBuilder, OptionsBuilderError};
17
18impl Default for Dashscope {
19 fn default() -> Self {
20 Dashscope::builder().build().unwrap()
21 }
22}
23
24#[cfg(test)]
25mod test {
26 use super::*;
27 #[test]
28 fn test_default_prompt_model() {
29 let openai = Dashscope::builder()
30 .default_prompt_model("qwen-long")
31 .build()
32 .unwrap();
33 assert_eq!(
34 openai.default_options.prompt_model,
35 Some("qwen-long".to_string())
36 );
37
38 let openai = Dashscope::builder()
39 .default_prompt_model("qwen-turbo")
40 .build()
41 .unwrap();
42 assert_eq!(
43 openai.default_options.prompt_model,
44 Some("qwen-turbo".to_string())
45 );
46 }
47}