stash save

This commit is contained in:
jhqxxx
2026-05-09 12:18:16 +08:00
parent 5df1f30f83
commit e8bf980b38
39 changed files with 2505 additions and 316 deletions
+21 -9
View File
@@ -1,13 +1,5 @@
use aha::models::{
deepseek_ocr::config::DeepseekOCRConfig,
hunyuan_ocr::config::HunYuanVLConfig,
lfm2::config::Lfm2Config,
lfm2vl::config::{Lfm2ProcessorConfig, Lfm2VLConfig},
minicpm4::config::MiniCPM4Config,
paddleocr_vl::config::PaddleOCRVLConfig,
qwen2_5vl::config::Qwen2_5VLConfig,
qwen3vl::config::Qwen3VLConfig,
voxcpm::config::VoxCPMConfig,
deepseek_ocr::config::DeepseekOCRConfig, hunyuan_ocr::config::HunYuanVLConfig, lfm2::config::Lfm2Config, lfm2vl::config::{Lfm2ProcessorConfig, Lfm2VLConfig}, minicpm4::config::MiniCPM4Config, moss::config::{MossAudioTokenizerConfig, MossTTSConfig}, paddleocr_vl::config::PaddleOCRVLConfig, qwen2_5vl::config::Qwen2_5VLConfig, qwen3vl::config::Qwen3VLConfig, voxcpm::config::VoxCPMConfig
};
use anyhow::Result;
@@ -117,3 +109,23 @@ fn lfm2vl_config() -> Result<()> {
println!("{:?}", processor_config);
Ok(())
}
#[test]
fn moss_audio_tokenizer_config() -> Result<()> {
// cargo test -F cuda --test config_tests moss_audio_tokenizer_config -r -- --nocapture
let model_path = "/home/jhq/.aha/openmoss/MOSS-Audio-Tokenizer-Nano/";
let config_path = model_path.to_string() + "/config.json";
let config: MossAudioTokenizerConfig = serde_json::from_slice(&std::fs::read(config_path)?)?;
println!("{:?}", config);
Ok(())
}
#[test]
fn moss_tts_config() -> Result<()> {
// cargo test -F cuda --test config_tests moss_tts_config -r -- --nocapture
let model_path = "/home/jhq/.aha/openmoss/MOSS-TTS-Nano/";
let config_path = model_path.to_string() + "/config.json";
let config: MossTTSConfig = serde_json::from_slice(&std::fs::read(config_path)?)?;
println!("{:?}", config);
Ok(())
}
+20
View File
@@ -0,0 +1,20 @@
use aha::models::moss::generate::MossTTSGenerate;
use anyhow::Result;
#[test]
fn moss_tts() -> Result<()> {
// RUST_BACKTRACE=1 cargo test -F cuda --test test_moss_tts moss_tts -r -- --nocapture
let save_dir =
aha::utils::get_default_save_dir().ok_or(anyhow::anyhow!("Failed to get save dir"))?;
let tts_path = format!("{}/openmoss/MOSS-TTS-Nano/", save_dir);
let audio_tokenizer_path = format!("{}/openmoss/MOSS-Audio-Tokenizer-Nano/", save_dir);
let mut model = MossTTSGenerate::init(&tts_path, &audio_tokenizer_path, None, None)?;
let _ = model.generate(
"您好啊,吃饭了吗,吃的啥啊中午",
Some("file://./assets/audio/jiangjiang.wav"),
Some("哈喽大家好,我是蒋蒋"),
Some(aha::models::moss::tts_nano::MossTTSMode::Continuation),
// None,
)?;
Ok(())
}
+27
View File
@@ -425,3 +425,30 @@ fn silero_vad_weight() -> Result<()> {
Ok(())
}
#[test]
fn moss_tts_nano_weight() -> Result<()> {
// cargo test -F cuda --test weight_test moss_tts_nano_weight -r -- --nocapture
let save_dir =
aha::utils::get_default_save_dir().ok_or(anyhow::anyhow!("Failed to get save dir"))?;
let model_path = format!("{}/openmoss/MOSS-TTS-Nano/pytorch_model.bin", save_dir);
let dict = read_all_with_key(&model_path, None)?;
for (k, v) in dict {
println!("key: {}, tensor shape: {:?}", k, v);
}
Ok(())
}
#[test]
fn moss_audio_tokenizer_nano_weight() -> Result<()> {
// cargo test -F cuda --test weight_test moss_audio_tokenizer_nano_weight -r -- --nocapture
let save_dir =
aha::utils::get_default_save_dir().ok_or(anyhow::anyhow!("Failed to get save dir"))?;
let model_path = format!("{}/openmoss/MOSS-Audio-Tokenizer-Nano/model-00001-of-00001.safetensors", save_dir);
let device = get_device(None);
let weights = safetensors::load(model_path, &device)?;
for (key, tensor) in weights.iter() {
println!("=== {} === {:?}", key, tensor);
}
Ok(())
}