name: qiwei-voice
执行以下能力:
禁止克隆未明确授权的第三方声音。调用真实发送工具前,先向用户确认接收人、文本和语气。
outputs/voice/<date>/<time>-transcribe/outputs/voice/profiles/<account-key>/vp_*/reference.wavoutputs/voice/<date>/<time>-clone/outputs/voice/previews/<account-key>/vpv_*.wav不同企微账号使用独立声音档案。语音发送成功后保留 speech.wav 供工作台回放;试听文件单独存放,不计入已发送语音。
调用 qiwei_transcribe_voice,传入 voiceUrl、filePath 或 base64Audio。Silk 文件先解码,再按配置调用 fmode-listen。voiceUrl 只接受公网 HTTPS 地址,最多重定向 3 次、30 秒超时且音频最大 20MB;本机和内网地址会被拒绝。
qiwei_voice_profile_status 检查配置。qiwei_enroll_voice 保存 5~30 秒本人录音。qiwei_send_cloned_voice,同时传入 confirmed=true,生成并真实发送。发送成功后可在工作台消息流中回放该语音。工作台提供「试听」和「语音发送」:试听只合成 WAV 供本地播放,会计费,不会发给客户;语音发送必须人工确认后,编码 SILK 并走 Fmode /doFileApi + /msg/sendVoice。从待审核草稿发送时传入当前 draftId,仅在企微确认成功后将该草稿结算为 sent。
工作台「转文字」直接展示合成时已保存的原文。不要为已发送的克隆语音再次调用 ASR,也不要因此产生额外模型费用。
tone 默认使用 auto。只使用以下受控语气:
natural:普通说明;friendly:欢迎、感谢、成功和好消息;apology:投诉、道歉和服务失误;empathetic:遗憾、安慰和关怀;reminder:截止、到期和时间提醒。保持 use_random=false。自动判断不明确时回退 natural。不要开放愤怒、厌恶、恐惧或强烈悲伤。
声音合成通过 Fmode /api/voice/indextts2,并复用技能包的 Fmode Token。只通过 Fmode /api/qiwei/doFileApi 上传本地 SILK;上传失败时直接报错,不使用公网 URL 回源。语音发送请求发生网络结果不确定时不自动重试,避免重复发送。
QIWEI_VOICE_ENDPOINT:默认 https://server.fmode.cn/api/voice/indextts2;QIWEI_AUTH_TOKEN、FMODE_API_KEY 或当前 Fmode Studio 的 NewAPI Token;@binsee/wx-voice:SILK 编解码;@ffmpeg-installer/ffmpeg、@ffprobe-installer/ffprobe:音频标准化和校验。qiwei_transcribe_voiceqiwei_voice_profile_statusqiwei_enroll_voiceqiwei_send_cloned_voice