use zai_rs::model::voice_clone::{model::GlmTtsClone, response::VoiceCloneResponse, *};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
env_logger::init();
let key = std::env::var("ZHIPU_API_KEY").expect("Please set ZHIPU_API_KEY env var");
let model = GlmTtsClone {};
let voice_name = "my_custom_voice_001";
let text = "你好,这是一段示例音频的文本内容,用于音色复刻参考。";
let input = "欢迎使用我们的音色复刻服务,这将生成与示例音频相同音色的语音。";
let file_id = "abcf4765-0d08-5cbd-8bd8-6867f76166cc";
let client = VoiceCloneRequest::new(model, key, voice_name, input, file_id)
.with_request_id("voice_clone_req_001")
.with_text(text);
let body: VoiceCloneResponse = client.send().await?;
println!("{:#?}", body);
Ok(())
}