add voxcpm with some bug

This commit is contained in:
jhqxxx
2025-10-03 22:25:58 +08:00
parent ae36194a4b
commit f33eaaee0d
30 changed files with 2411 additions and 165 deletions
+23 -23
View File
@@ -7,27 +7,27 @@ pub mod position_embed;
pub mod tokenizer;
pub mod utils;
pub enum ModelType {
Qwen2_5VL,
MiniCPM4,
}
// pub enum ModelType {
// Qwen2_5VL,
// MiniCPM4,
// }
impl ModelType {
pub fn init(
model_type: ModelType,
model_path: &str,
device: Option<&Device>,
dtype: Option<DType>,
) -> Result<Box<dyn GenerateModel>> {
match model_type {
ModelType::Qwen2_5VL => {
let model = Qwen2_5VLGenerateModel::init(model_path, device, dtype)?;
Ok(Box::new(model) as Box<dyn GenerateModel>)
},
ModelType::MiniCPM4 => {
let model = MiniCPMGenerateModel::init(model_path, device, dtype)?;
Ok(Box::new(model)as Box<dyn GenerateModel>)
}
}
}
}
// impl ModelType {
// pub fn init(
// model_type: ModelType,
// model_path: &str,
// device: Option<&Device>,
// dtype: Option<DType>,
// ) -> Result<Box<dyn GenerateModel>> {
// match model_type {
// ModelType::Qwen2_5VL => {
// let model = Qwen2_5VLGenerateModel::init(model_path, device, dtype)?;
// Ok(Box::new(model) as Box<dyn GenerateModel>)
// },
// ModelType::MiniCPM4 => {
// let model = MiniCPMGenerateModel::init(model_path, device, dtype)?;
// Ok(Box::new(model)as Box<dyn GenerateModel>)
// }
// }
// }
// }