Genshin_A-L / Inference /docs /cn /API接口文档.md
白菜工厂1145号员工
Automated commit from batch script
6962fb8
|
raw
history blame
3.11 kB

概述

本文档旨在介绍如何使用我们的文本转语音的API,包括通过GET和POST方法进行请求。本API支持将文本转换为指定角色的语音,并支持不同的语言和情感表达。

角色列表

要获取支持的角色及其对应的情感,请访问以下URL:

  • URL:http://127.0.0.1:5000/character_list
  • 返回:JSON格式的角色列表和对应情感

语音转文本

  • URL:http://127.0.0.1:5000/tts
  • 返回:成功时返回wav音频。失败时返回错误原因。
  • 支持的方法:GET/POST

GET方法

格式

http://127.0.0.1:5000/tts?cha_name={{characterName}}&text={{text}}
  • 参数说明:
    • cha_name:角色文件夹的名字,需注意大小写、全半角及语言(中英文)。
    • text:要转换的文本,建议使用URL编码。
    • 可选参数包括text_languagetop_ktop_ptemperaturecharacter_emotionsave_tempstream,具体解释见下方POST。

示例

http://127.0.0.1:5000/tts?cha_name=胡桃&text=%E8%BF%99%E6%98%AF%E4%B8%80%E6%AE%B5%E5%AE%9E%E4%BE%8B%E9%9F%B3%E9%A2%91

POST方法

json包格式

所有参数
{
    "method": "POST",
    "body": {
        "cha_name": "${chaName}",
        "character_emotion": "${characterEmotion}",
        "text": "${speakText}",
        "text_language": "${textLanguage}",
        "top_k": "${topK}",
        "top_p": "${topP}",
        "temperature": "${temperature}",
        "save_temp": "${saveTemp}",
        "stream": "${stream}"
    }
}

可省略一项或多项

最少数据:
{
    "method": "POST",
    "body": {
        "cha_name": "${chaName}",
        "text": "${speakText}"
    }
}
参数解释
  • text:要转换的文本,建议进行URL编码。
  • cha_name:角色文件夹名称,注意大小写、全半角、语言。
  • character_emotion:角色情感,需为角色实际支持的情感,否则将调用默认情感。
  • text_language:文本语言(中文、英文、日文、中英混合、日英混合、多语种混合),默认为多语种混合。
  • top_ktop_ptemperature:GPT模型参数,不了解时无需修改。
  • save_temp:是否保存临时文件,为true时,后端会保存生成的音频,下次相同请求会直接返回该数据,默认为false。
  • stream:是否流式传输,为true时,会按句返回音频,默认为false。

示例:

{
    "method": "POST",
    "body": {
        "cha_name": "胡桃",
        "character_emotion": "default",
        "text": "%E8%BF%99%E6%98%AF%E4%B8%80%E6%AE%B5%E5%AE%9E%E4%BE%8B%E9%9F%B3%E9%A2%91",
        "text_language": "多语种混合"
    }
}

使用说明

  • 对于text参数,建议在传输前进行URL编码,以避免特殊字符导致的请求错误。
  • 选择正确的cha_name和character_emotion对于生成期望的音频非常重要。
  • 当save_temp设置为true时,可减少重复请求的处理时间。
  • stream选项适用于需要实时播放音频的场景。