index-tts stash save

This commit is contained in:
jhqxxx
2026-02-07 00:26:03 +08:00
parent 978b74ec13
commit 01172b1ae6
24 changed files with 1004 additions and 232 deletions
+15 -1
View File
@@ -1,5 +1,6 @@
use anyhow::{Ok, Result, anyhow};
use anyhow::{Result, anyhow};
use candle_core::{Device, Tensor};
use sentencepiece::SentencePieceProcessor;
use serde_json::Value;
use tokenizers::{
AddedToken, Tokenizer, decoders::byte_level::ByteLevel as ByteLevelDecoder, models::bpe::BPE,
@@ -114,3 +115,16 @@ impl TokenizerModel {
Ok(decode)
}
}
pub fn sentencepiece_encode(
text: &str,
tokenizer: &SentencePieceProcessor,
device: &Device,
) -> Result<Tensor> {
let tokens = tokenizer
.encode(text)
.map_err(|e| anyhow!(format!("tokenizer encode error:{}", e)))?;
let token_ids = tokens.iter().map(|p| p.id).collect::<Vec<u32>>();
let tokens_t = Tensor::new(token_ids, device)?.unsqueeze(0)?;
Ok(tokens_t)
}