[{"data":1,"prerenderedAt":1212},["ShallowReactive",2],{"mosiI18n":3,"docs:\u002Fdocs\u002Fscenarios\u002Fsingle-voice":237,"docs:navigation":909,"docs:published-paths":1153},{"locale":4,"resources":5},"zh-CN",{"zh-CN":6},{"10026153":7,"10110081":8,"10115365":9,"10127104":10,"10131153":11,"10141411":12,"10213461":13,"10314103":14,"10381912":15,"10431014":16,"10513157":17,"10627315":18,"10748121":19,"10751193":20,"11015141":21,"11095710":22,"11101321":23,"11101539":24,"11108144":25,"11115121":26,"11121423":27,"11243911":28,"11312152":29,"11331069":30,"11331371":31,"11341099":32,"11342126":33,"11374381":34,"11421315":35,"11471412":36,"11490910":37,"11498141":38,"11541010":39,"11563101":40,"11691311":41,"11878412":42,"12013124":43,"12109113":44,"12113301":45,"12125023":46,"12149722":47,"12151213":48,"12153811":49,"12510848":50,"12611148":51,"12641310":52,"12771248":53,"12814011":54,"12981411":55,"13105901":56,"13113044":57,"13131276":58,"13138186":59,"13152831":60,"13361411":61,"13410713":62,"13441491":63,"13611115":64,"13730815":65,"14108671":66,"14111410":67,"14131214":68,"14133115":69,"14215115":70,"14239121":71,"14281461":72,"14410039":73,"14479127":74,"14510490":75,"14541392":76,"14553315":77,"14927151":78,"14966133":79,"15131411":80,"15221201":81,"15362121":82,"15413780":83,"15671112":84,"15912711":85,"15915315":86,"19064413":87,"19149761":88,"19152130":89,"20104410":90,"20312081":91,"20871277":92,"21115723":93,"21127141":94,"21213015":95,"21434141":96,"21515101":97,"21591310":98,"23189135":99,"23972510":100,"24141413":101,"24151261":102,"26121231":103,"26841151":104,"26871212":105,"27568131":106,"28131115":107,"31011812":108,"31111521":109,"31207765":110,"31214933":111,"31294114":112,"31410213":113,"31513471":114,"32108107":115,"32119732":116,"32440814":117,"32871477":118,"33122111":119,"33412201":120,"34015463":121,"36153310":122,"37127101":123,"39932152":124,"41115155":125,"41193153":126,"41229331":127,"41271212":128,"41311761":129,"41313151":130,"42101139":131,"42121271":132,"44914151":133,"45139121":134,"48124111":135,"48147894":136,"49271053":137,"49814113":138,"50731491":139,"51011111":140,"51021210":141,"51062133":142,"51153329":143,"51313109":144,"51314877":145,"51315413":146,"51333111":147,"51450135":148,"52530401":149,"53137715":150,"56141531":151,"56781111":152,"60120151":153,"61113981":154,"61231441":155,"61312915":156,"61491114":157,"61541340":158,"61552121":159,"62141210":160,"62149158":161,"62151146":162,"63139013":163,"63201141":164,"65410661":165,"66151513":166,"67104697":167,"67314145":168,"71011421":169,"71013126":170,"71102161":171,"71171209":172,"71296911":173,"71382811":174,"71514149":175,"73075237":176,"74124314":177,"75112694":178,"75133152":179,"75313811":180,"76141211":181,"78101312":182,"80141314":183,"81010346":184,"81052659":185,"81135311":186,"81138901":187,"81161515":188,"81312151":189,"81514715":190,"81561581":191,"81661365":192,"82215113":193,"83761411":194,"84411812":195,"85135104":196,"85412059":197,"86141428":198,"88002231":199,"88137214":200,"89115104":201,"89145141":202,"89771179":203,"90610856":204,"91111414":205,"91111997":206,"91113112":207,"91145551":208,"91160143":209,"91314612":210,"91341173":211,"91381541":212,"91510028":213,"92122444":214,"97848298":215,"98153132":216,"99561087":217,"01191112":218,"01056101":219,"01140234":220,"01184512":221,"01514514":222,"01981430":223,"02141491":224,"02269571":225,"03117111":226,"03121214":227,"03155210":228,"04109514":229,"05183656":230,"07141286":231,"07148165":232,"07541155":233,"01273151":234,"07131161":235,"05611115":236},"输出 Token","关闭搜索","选择 API key 后才能运行。","API 平台","MOSI API Platform 控制台","查看 API 平台用量、积分消耗和排行。","工作日在线时间：10:00 - 22:00","确认删除","{n} 天","过去 7 天","在浏览器中直接调用 MOSI 模型，预览请求与响应。","Playground","查看详情","原始 JSON","选择模型","控制台首页","创建 Key","{n} 次","渲染结果","上传文件","清除","Output","登录查看数据","切换语言","账户菜单","用量分析","填写 {label} 后才能运行。","让灵感有声有色","登录","无访问权限","使用 Mossland 账号登录，管理 API Key 与用量","没有匹配结果。","添加小助手微信，获取内测积分","累计请求","成功 {n} 次","重试","正在加载请求记录…","控制台统计","选择","搜索中…","按模型排行","追踪 ID","API Key 创建成功，请保存","选择音频来源","参考音频（必选）","使用 Mossland 登录","打开","编辑 API Key","模型","请选择","加载失败","当前时间范围交易量较大，趋势与排行基于最近一批交易聚合，为近似值。","文本","更多模型","本月交易量较大，统计基于最近一批交易聚合，为近似值。","，完成第一次调用","名称","流式音频播放器将在接入后端流式接口后启用。","「{label}」不是合法 JSON，修正后才能运行。","内容类型","请求预览","查看 API 平台积分余额、请求统计与最近调用。","操作","API Key 已创建","Mossland API 新平台已上线，旧 \u002Fapi\u002Fv1 接口请迁移至新版 \u002Fv1 接口。","参考音频（可选）","创建 API Key, 查看","API Keys 加载失败，请重试。","语音生成占 {n}%","还有 {count} 条结果未展示。","登录 \u002F 注册","下载音频","暂无用量数据。","请先在上方选择一个模型。","搜索暂时不可用，请稍后重试。","正在运行…","API Docs","密钥","复制 Markdown","正在加载用量数据…","语音处理","立即登录","引擎耗时","音频来源","首页","输入","还没有 API Key，创建一个用于开始调用。","File ID","取消","搜索文档…","该维度数据待后端补充","删除","API Key","用量与积分","复制渲染结果","页内目录","选择 API Key","获取积分","文档","积分使用趋势","正在加载模型…","退出登录","响应","创建 API Key","用量统计","输入 Token","头像","关闭","确认删除 API Key?","当前账号无权访问该页面。","复制成功","Token 吞吐","Mossland","快速开始","Code","确认","公告占位，正式内容待产品提供。","文件","今日请求","控制台导航","还没有可用的 API Key。","内容均由 AI 生成，不代表平台立场和观点。","加入我们的 Discord 获取测试积分","Mossland，","字节数","音色管理","输入文件 ID","暂无英文版","控制台菜单","输入要合成的文本。","加载中…","退出","查看用量","权限范围","个人中心","默认可调用当前账号已开通的全部 API。暂不支持单独配置权限。","错误与限制","未命名用户","最近请求","完整密钥只在创建时展示一次。如怀疑泄露，请立即删除该 Key 并创建新的 Key。","日均消耗","上一篇","任务","回到顶部","获取积分二维码","查看迁移指南","请输入","文档导航","本月消耗积分","完整密钥仅此一次展示，关闭后无法再次查看，请妥善保存。","去创建","欢迎使用 Mossland API","手机号","过去 30 天","正在加载 API Keys…","最近 5 次请求","复制","状态","语音识别","API Key 数量已达上限（{limit} 个），请删除不再使用的 Key 后重试。","可用积分","下一篇","昵称","暂无请求记录。","已复制 Markdown 到剪贴板","选择一个模型以在工作台中调用。","继续","音频 URL","开始使用","邮箱","搜索文档","运行","图表加载中…","复制失败","加入 Discord","复制本页 Markdown","音频合成","API Key 校验服务暂不可用，请稍后重试。","近 24小时成功率","如确认删除此 API key，请输入“{text}”","按 Endpoint 排行","时间","暂停","输入关键词搜索全部文档。","已复制","在左侧选择模型并输入内容，运行后在此查看结果。","选择文件","模型加载失败，请稍后重试。","默认","正在加载 API Key…","所选 API Key 已不可用（禁用或过期），请重新选择。","复制失败，请重试","下载 WAV","搜索结果","调整面板宽度","基础","请求失败，请稍后重试。","API Key 已删除","较昨日","语音生成","运行失败，请稍后重试。","响应视图","消耗积分","今日消耗","个人资料请前往 Mossland 管理","管理 API 平台调用密钥。","活跃 API Key","仅支持 wav \u002F mp3 音频文件。","运行参数","上下篇","该 API Key「{name}」将立即被禁用。使用此密钥发出的 API 请求将被拒绝，这可能会导致仍然依赖它的任何系统无法正常运转。一旦删除，密钥无法恢复，你将无法再查看或修改此 API Key。","开始使用 Mossland API","预计维持 (按近 {n} 天均值估算)","API Reference","上传参考音频后才能运行。","用户 ID","场景指南","全部 API","即将上线","会话加载出错，请重试。","暂无可用模型。","复制完整 API Key","时长","编辑","创建时间","API Key 已更新","API key 名称","运行请求经服务端注入所选 key，明文 key 不经过浏览器。","模型服务调用失败，请稍后重试。","创建失败，请刷新后重试。",{"id":238,"title":239,"api_group":240,"body":241,"description":250,"draft":899,"endpoint":240,"extension":900,"hide_next":899,"hide_toc":899,"locale":4,"meta":901,"method":240,"model_id":240,"model_version":240,"nav_category":240,"nav_group":902,"nav_order":582,"navigation":551,"path":903,"published":551,"seo":904,"stem":905,"translation_key":906,"translation_status":907,"__hash__":908},"docs\u002Fdocs\u002Fscenarios\u002Fsingle-voice.mdc","单人语音生成",null,{"type":242,"value":243,"toc":895},"minimark",[244,247,251,255,271,860,863,891],[245,246,239],"h1",{"id":239},[248,249,250],"p",{},"将一段文本合成为单一音色的语音，适合旁白、客服话术、播报和有声内容生成。",[252,253,254],"h2",{"id":254},"操作流程",[256,257,259,266],"feature-card-grid",{"columns":258},"2",[260,261,263],"feature-card",{"title":262},"POST \u002Fv1\u002Faudio\u002Fspeech",[248,264,265],{},"Endpoint",[260,267,269],{"title":268},"moss-tts",[248,270,55],{},[272,273,274,322,448,701,834],"docs-steps",{},[275,276,277,286],"docs-step",{"title":110},[248,278,279,280,285],{},"进入 ",[281,282,284],"a",{"href":283},"\u002Fapp\u002Fapi-keys","API Key 管理平台","，创建 API Key，并保存为环境变量。不要把 API Key 写进客户端代码或提交到仓库。",[287,288,293],"mosi-code-block",{"copy-error-label":198,"copy-label":289,"copy-success-label":290,"language":291,"title":292},"复制代码","已复制到剪贴板","bash","示例",[294,295,299],"pre",{"className":296,"code":297,"language":291,"meta":298,"style":298},"language-bash shiki shiki-themes github-light github-dark","export MOSS_API_KEY=\"\u003Cyour-api-key>\"\n","",[300,301,302],"code",{"__ignoreMap":298},[303,304,307,311,315,318],"span",{"class":305,"line":306},"line",1,[303,308,310],{"class":309},"szBVR","export",[303,312,314],{"class":313},"sVt8B"," MOSS_API_KEY",[303,316,317],{"class":309},"=",[303,319,321],{"class":320},"sZZnC","\"\u003Cyour-api-key>\"\n",[275,323,325,340,361],{"title":324},"准备请求输入",[248,326,327,328,331,332,335,336,339],{},"用 ",[300,329,330],{},"model"," 指定模型，并补齐单人语音合成需要的输入字段。参考音色请先用 ",[300,333,334],{},"POST \u002Fv1\u002Faudio\u002Fvoices"," 创建，得到 ",[300,337,338],{},"voice_id"," 后在这里使用。",[341,342,343],"tag-group",{},[248,344,345,351,352,351,355,351,358],{},[346,347,350],"mosi-tag",{"size":348,"variant":349},"small","outline","input：待合成文本"," ",[346,353,354],{"size":348,"variant":349},"voice 或 voice_id：目标音色",[346,356,357],{"size":348,"variant":349},"response_format：输出格式，默认 mp3",[346,359,360],{"size":348,"variant":349},"delivery_method：audio 或 url",[287,362,365],{"copy-error-label":198,"copy-label":289,"copy-success-label":290,"language":363,"title":364},"json","request.json",[294,366,369],{"className":367,"code":368,"language":363,"meta":298,"style":298},"language-json shiki shiki-themes github-light github-dark","{\n  \"model\": \"moss-tts\",\n  \"input\": \"欢迎使用 MOSI 语音合成服务，这是一段示例旁白。\",\n  \"voice_id\": \"\u003Cvoice_id>\",\n  \"response_format\": \"mp3\",\n  \"delivery_method\": \"url\"\n}\n",[300,370,371,376,392,405,418,431,442],{"__ignoreMap":298},[303,372,373],{"class":305,"line":306},[303,374,375],{"class":313},"{\n",[303,377,379,383,386,389],{"class":305,"line":378},2,[303,380,382],{"class":381},"sj4cs","  \"model\"",[303,384,385],{"class":313},": ",[303,387,388],{"class":320},"\"moss-tts\"",[303,390,391],{"class":313},",\n",[303,393,395,398,400,403],{"class":305,"line":394},3,[303,396,397],{"class":381},"  \"input\"",[303,399,385],{"class":313},[303,401,402],{"class":320},"\"欢迎使用 MOSI 语音合成服务，这是一段示例旁白。\"",[303,404,391],{"class":313},[303,406,408,411,413,416],{"class":305,"line":407},4,[303,409,410],{"class":381},"  \"voice_id\"",[303,412,385],{"class":313},[303,414,415],{"class":320},"\"\u003Cvoice_id>\"",[303,417,391],{"class":313},[303,419,421,424,426,429],{"class":305,"line":420},5,[303,422,423],{"class":381},"  \"response_format\"",[303,425,385],{"class":313},[303,427,428],{"class":320},"\"mp3\"",[303,430,391],{"class":313},[303,432,434,437,439],{"class":305,"line":433},6,[303,435,436],{"class":381},"  \"delivery_method\"",[303,438,385],{"class":313},[303,440,441],{"class":320},"\"url\"\n",[303,443,445],{"class":305,"line":444},7,[303,446,447],{"class":313},"}\n",[275,449,451,461],{"title":450},"发起第一次请求",[248,452,453,454,456,457,460],{},"向 ",[300,455,262],{}," 发起请求。",[300,458,459],{},"delivery_method=url"," 时同步返回 JSON 和结果 URL。",[462,463,464,520,592],"api-example",{},[465,466,469],"mosi-tab",{"label":467,"value":468},"cURL","curl",[287,470,471],{"copy-error-label":198,"copy-label":289,"copy-success-label":290,"language":291},[294,472,474],{"className":296,"code":473,"language":291,"meta":298,"style":298},"curl https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Fspeech \\\n  -H \"Authorization: Bearer $MOSS_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d @request.json\n",[300,475,476,487,503,512],{"__ignoreMap":298},[303,477,478,481,484],{"class":305,"line":306},[303,479,468],{"class":480},"sScJk",[303,482,483],{"class":320}," https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Fspeech",[303,485,486],{"class":381}," \\\n",[303,488,489,492,495,498,501],{"class":305,"line":378},[303,490,491],{"class":381},"  -H",[303,493,494],{"class":320}," \"Authorization: Bearer ",[303,496,497],{"class":313},"$MOSS_API_KEY",[303,499,500],{"class":320},"\"",[303,502,486],{"class":381},[303,504,505,507,510],{"class":305,"line":394},[303,506,491],{"class":381},[303,508,509],{"class":320}," \"Content-Type: application\u002Fjson\"",[303,511,486],{"class":381},[303,513,514,517],{"class":305,"line":407},[303,515,516],{"class":381},"  -d",[303,518,519],{"class":320}," @request.json\n",[465,521,524],{"label":522,"value":523},"Python","python",[287,525,526],{"copy-error-label":198,"copy-label":289,"copy-success-label":290,"language":523},[294,527,530],{"className":528,"code":529,"language":523,"meta":298,"style":298},"language-python shiki shiki-themes github-light github-dark","import json\nimport os\nimport requests\n\npayload = json.load(open(\"request.json\"))\nresp = requests.post(\n    \"https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Fspeech\",\n    headers={\"Authorization\": f\"Bearer {os.environ['MOSS_API_KEY']}\"},\n    json=payload,\n)\nprint(resp.json())\n",[300,531,532,537,542,547,553,558,563,568,574,580,586],{"__ignoreMap":298},[303,533,534],{"class":305,"line":306},[303,535,536],{},"import json\n",[303,538,539],{"class":305,"line":378},[303,540,541],{},"import os\n",[303,543,544],{"class":305,"line":394},[303,545,546],{},"import requests\n",[303,548,549],{"class":305,"line":407},[303,550,552],{"emptyLinePlaceholder":551},true,"\n",[303,554,555],{"class":305,"line":420},[303,556,557],{},"payload = json.load(open(\"request.json\"))\n",[303,559,560],{"class":305,"line":433},[303,561,562],{},"resp = requests.post(\n",[303,564,565],{"class":305,"line":444},[303,566,567],{},"    \"https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Fspeech\",\n",[303,569,571],{"class":305,"line":570},8,[303,572,573],{},"    headers={\"Authorization\": f\"Bearer {os.environ['MOSS_API_KEY']}\"},\n",[303,575,577],{"class":305,"line":576},9,[303,578,579],{},"    json=payload,\n",[303,581,583],{"class":305,"line":582},10,[303,584,585],{},")\n",[303,587,589],{"class":305,"line":588},11,[303,590,591],{},"print(resp.json())\n",[465,593,596],{"label":594,"value":595},"TypeScript","typescript",[287,597,599],{"copy-error-label":198,"copy-label":289,"copy-success-label":290,"language":598},"ts",[294,600,603],{"className":601,"code":602,"language":598,"meta":298,"style":298},"language-ts shiki shiki-themes github-light github-dark","const resp = await fetch('https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Fspeech', {\n  method: 'POST',\n  headers: {\n    Authorization: `Bearer ${apiKey}`,\n    'Content-Type': 'application\u002Fjson',\n  },\n  body: JSON.stringify(payload),\n})\n",[300,604,605,631,641,646,662,674,679,696],{"__ignoreMap":298},[303,606,607,610,613,616,619,622,625,628],{"class":305,"line":306},[303,608,609],{"class":309},"const",[303,611,612],{"class":381}," resp",[303,614,615],{"class":309}," =",[303,617,618],{"class":309}," await",[303,620,621],{"class":480}," fetch",[303,623,624],{"class":313},"(",[303,626,627],{"class":320},"'https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Fspeech'",[303,629,630],{"class":313},", {\n",[303,632,633,636,639],{"class":305,"line":378},[303,634,635],{"class":313},"  method: ",[303,637,638],{"class":320},"'POST'",[303,640,391],{"class":313},[303,642,643],{"class":305,"line":394},[303,644,645],{"class":313},"  headers: {\n",[303,647,648,651,654,657,660],{"class":305,"line":407},[303,649,650],{"class":313},"    Authorization: ",[303,652,653],{"class":320},"`Bearer ${",[303,655,656],{"class":313},"apiKey",[303,658,659],{"class":320},"}`",[303,661,391],{"class":313},[303,663,664,667,669,672],{"class":305,"line":420},[303,665,666],{"class":320},"    'Content-Type'",[303,668,385],{"class":313},[303,670,671],{"class":320},"'application\u002Fjson'",[303,673,391],{"class":313},[303,675,676],{"class":305,"line":433},[303,677,678],{"class":313},"  },\n",[303,680,681,684,687,690,693],{"class":305,"line":444},[303,682,683],{"class":313},"  body: ",[303,685,686],{"class":381},"JSON",[303,688,689],{"class":313},".",[303,691,692],{"class":480},"stringify",[303,694,695],{"class":313},"(payload),\n",[303,697,698],{"class":305,"line":570},[303,699,700],{"class":313},"})\n",[275,702,704,717],{"title":703},"获取结果",[248,705,706,708,709,712,713,716],{},[300,707,459],{}," 时，从同步响应的 JSON 中读取结果 URL。如果传了 ",[300,710,711],{},"async=true","，接口会先返回 ",[300,714,715],{},"task_id","，再用它查询任务。",[462,718,719,752,783],{},[465,720,721],{"label":467,"value":468},[287,722,723],{"copy-error-label":198,"copy-label":289,"copy-success-label":290,"language":291},[294,724,726],{"className":296,"code":725,"language":291,"meta":298,"style":298},"curl https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Ftasks\u002F$TASK_ID \\\n  -H \"Authorization: Bearer $MOSS_API_KEY\"\n",[300,727,728,741],{"__ignoreMap":298},[303,729,730,732,735,738],{"class":305,"line":306},[303,731,468],{"class":480},[303,733,734],{"class":320}," https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Ftasks\u002F",[303,736,737],{"class":313},"$TASK_ID ",[303,739,740],{"class":381},"\\\n",[303,742,743,745,747,749],{"class":305,"line":378},[303,744,491],{"class":381},[303,746,494],{"class":320},[303,748,497],{"class":313},[303,750,751],{"class":320},"\"\n",[465,753,754],{"label":522,"value":523},[287,755,756],{"copy-error-label":198,"copy-label":289,"copy-success-label":290,"language":523},[294,757,759],{"className":528,"code":758,"language":523,"meta":298,"style":298},"resp = requests.get(\n    f\"https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Ftasks\u002F{task_id}\",\n    headers={\"Authorization\": f\"Bearer {os.environ['MOSS_API_KEY']}\"},\n)\nprint(resp.json())\n",[300,760,761,766,771,775,779],{"__ignoreMap":298},[303,762,763],{"class":305,"line":306},[303,764,765],{},"resp = requests.get(\n",[303,767,768],{"class":305,"line":378},[303,769,770],{},"    f\"https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Ftasks\u002F{task_id}\",\n",[303,772,773],{"class":305,"line":394},[303,774,573],{},[303,776,777],{"class":305,"line":407},[303,778,585],{},[303,780,781],{"class":305,"line":420},[303,782,591],{},[465,784,785],{"label":594,"value":595},[287,786,787],{"copy-error-label":198,"copy-label":289,"copy-success-label":290,"language":598},[294,788,790],{"className":601,"code":789,"language":598,"meta":298,"style":298},"const resp = await fetch(`https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Ftasks\u002F${taskId}`, {\n  headers: { Authorization: `Bearer ${apiKey}` },\n})\n",[300,791,792,816,830],{"__ignoreMap":298},[303,793,794,796,798,800,802,804,806,809,812,814],{"class":305,"line":306},[303,795,609],{"class":309},[303,797,612],{"class":381},[303,799,615],{"class":309},[303,801,618],{"class":309},[303,803,621],{"class":480},[303,805,624],{"class":313},[303,807,808],{"class":320},"`https:\u002F\u002Fapi.mosi.cn\u002Fv1\u002Faudio\u002Ftasks\u002F${",[303,810,811],{"class":313},"taskId",[303,813,659],{"class":320},[303,815,630],{"class":313},[303,817,818,821,823,825,827],{"class":305,"line":378},[303,819,820],{"class":313},"  headers: { Authorization: ",[303,822,653],{"class":320},[303,824,656],{"class":313},[303,826,659],{"class":320},[303,828,829],{"class":313}," },\n",[303,831,832],{"class":305,"line":394},[303,833,700],{"class":313},[275,835,837,847],{"title":836},"验证成功",[248,838,839,840,843,844,846],{},"成功标志：拿到结果音频（",[300,841,842],{},"delivery_method=audio","）或结果 URL（",[300,845,459],{},"），可下载或播放生成音频。",[848,849,850],"mosi-notification",{},[248,851,852,853,856,857,859],{},"TTS 的 ",[300,854,855],{},"voice"," 只接受音色 ID（voice id），不接受内联音频或参考音频文件。如需基于参考音频创建音色，请先使用 ",[300,858,334],{},"。",[252,861,862],{"id":862},"下一步",[256,864,866,875,883],{"columns":865},"3",[260,867,872],{"title":868,"href":869,"icon":870,"variant":871},"查看接口参数","\u002Fdocs\u002Freference\u002Fspeech","api","action",[248,873,874],{},"打开单人语音合成 Endpoint 的完整接口契约。",[260,876,880],{"title":877,"href":878,"icon":879,"variant":871},"了解模型","\u002Fdocs\u002Fmodels\u002Foverview","cube-two",[248,881,882],{},"查看本场景使用的模型定位。",[260,884,888],{"title":885,"href":886,"icon":887,"variant":871},"了解异步任务","\u002Fdocs\u002Fgetting-started\u002Fasync-tasks","compass-one",[248,889,890],{},"了解任务结果的同步 \u002F 异步获取与轮询。",[892,893,894],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}",{"title":298,"searchDepth":378,"depth":378,"links":896},[897,898],{"id":254,"depth":378,"text":254},{"id":862,"depth":378,"text":862},false,"mdc",{},"scenarios","\u002Fdocs\u002Fscenarios\u002Fsingle-voice",{"title":239,"description":250},"docs\u002Fscenarios\u002Fsingle-voice","scenarios\u002Fsingle-voice","source","Sv4z1QdqRFgYkittMHGmJYwwoqANtle4RoPP6KgTMHY",[910,915,920,924,929,930,934,938,942,946,950,955,959,963,967,971,975,980,984,989,993,997,1001,1005,1009,1013,1017,1021,1025,1029,1033,1038,1042,1047,1051,1057,1061,1066,1068,1072,1076,1081,1085,1090,1093,1097,1101,1106,1110,1115,1119,1123,1127,1132,1136,1140,1144,1149],{"path":911,"title":912,"description":913,"nav_group":914,"nav_order":582,"method":240,"nav_category":240},"\u002Fdocs\u002Ferrors-and-limits\u002Ferror-codes","错误码","\u002Fv1 同步错误采用 error 结构；异步失败采用内部标准错误结构。","errors-and-limits",{"path":916,"title":917,"description":918,"nav_group":919,"nav_order":582,"method":240,"nav_category":240},"\u002Fdocs\u002Fgetting-started\u002Foverview","API 概览","Mossland API \u002Fv1 音频接口总览：核心概念与接口清单。","getting-started",{"path":878,"title":921,"description":922,"nav_group":923,"nav_order":582,"method":240,"nav_category":240},"模型概览","MOSI 平台语音模型按语音生成 \u002F 语音识别分类总览。","models",{"path":925,"title":926,"description":927,"nav_group":928,"nav_order":582,"method":240,"nav_category":240},"\u002Fdocs\u002Freference","API 参考总览","Mossland API 参考分区入口，按操作列出模型、文件、语音生成、语音识别、音色管理与任务接口。","reference",{"path":903,"title":239,"description":250,"nav_group":902,"nav_order":582,"method":240,"nav_category":240},{"path":931,"title":932,"description":933,"nav_group":914,"nav_order":582,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Ferrors-and-limits\u002Ferror-codes","Error Codes","\u002Fv1 synchronous errors use the error structure; asynchronous failures use an internal standard error structure.",{"path":935,"title":936,"description":937,"nav_group":919,"nav_order":582,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fgetting-started\u002Foverview","API Overview","An overview of the Mossland API \u002Fv1 audio endpoints — core concepts and the endpoint catalog.",{"path":939,"title":940,"description":941,"nav_group":923,"nav_order":582,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fmodels\u002Foverview","Model Overview","An overview of MOSI platform speech models across speech generation and speech recognition.",{"path":943,"title":944,"description":945,"nav_group":928,"nav_order":582,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Freference","API Reference Overview","Entry point for the Mossland API reference section, listing model, file, speech, transcription, voice, and task operations by capability.",{"path":947,"title":948,"description":949,"nav_group":902,"nav_order":582,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fscenarios\u002Fsingle-voice","Single-Speaker Speech Generation","Synthesize a piece of text into speech with a single voice, suited to narration, customer-service scripts, announcements, and audio content generation.",{"path":951,"title":952,"description":953,"nav_group":914,"nav_order":954,"method":240,"nav_category":240},"\u002Fdocs\u002Ferrors-and-limits\u002Flimits","请求限制","网关、文件服务、模型服务和计费系统共同决定的公开 API 稳定约束。",20,{"path":956,"title":957,"description":958,"nav_group":919,"nav_order":954,"method":240,"nav_category":240},"\u002Fdocs\u002Fgetting-started\u002Fauth","认证","Mossland API \u002Fv1 的 API Key 鉴权、获取步骤、请求头与严格入参约束。",{"path":960,"title":961,"description":962,"nav_group":902,"nav_order":954,"method":240,"nav_category":240},"\u002Fdocs\u002Fscenarios\u002Fdialogue","多人对话语音生成","将多角色对话文本合成为完整对话音频，适合播客、角色扮演、有声书和课程对话。",{"path":964,"title":965,"description":966,"nav_group":914,"nav_order":954,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Ferrors-and-limits\u002Flimits","Request Limits","The stable constraints of the public API, jointly determined by the gateway, file service, model service, and billing system.",{"path":968,"title":969,"description":970,"nav_group":919,"nav_order":954,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fgetting-started\u002Fauth","Authentication","API Key authentication for the Mossland API \u002Fv1, how to obtain a key, request headers, and strict input constraints.",{"path":972,"title":973,"description":974,"nav_group":902,"nav_order":954,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fscenarios\u002Fdialogue","Multi-Speaker Dialogue Speech Generation","Synthesize multi-character dialogue text into complete dialogue audio, suited to podcasts, role-play, audiobooks, and course dialogues.",{"path":976,"title":977,"description":978,"nav_group":914,"nav_order":979,"method":240,"nav_category":240},"\u002Fdocs\u002Ferrors-and-limits\u002Fcallback-rules","回调安全规则","异步任务通过 webhook_url 回调终态结果，URL 必须是公网可访问的 HTTPS 地址。",30,{"path":981,"title":982,"description":983,"nav_group":919,"nav_order":979,"method":240,"nav_category":240},"\u002Fdocs\u002Fguides\u002Fquickstart","快速开始：单人语音生成","五步完成 Mossland API \u002Fv1\u002Faudio\u002Fspeech 接入，生成首个单人语音。",{"path":985,"title":986,"description":987,"nav_group":928,"nav_order":979,"method":988,"nav_category":55},"\u002Fdocs\u002Freference\u002Fmodels","查询模型列表","列出当前租户可用的模型；GET \u002Fv1\u002Fmodels，只做 list，不提供 model detail。","GET",{"path":990,"title":991,"description":992,"nav_group":902,"nav_order":979,"method":240,"nav_category":240},"\u002Fdocs\u002Fscenarios\u002Fvoice-design","音色设计","通过自然语言描述声音风格，并将文本生成对应风格的语音。",{"path":994,"title":995,"description":996,"nav_group":914,"nav_order":979,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Ferrors-and-limits\u002Fcallback-rules","Callback Security Rules","Asynchronous tasks deliver terminal-state results via webhook_url; the URL must be a publicly accessible HTTPS address.",{"path":998,"title":999,"description":1000,"nav_group":919,"nav_order":979,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fguides\u002Fquickstart","Quickstart: Single-Speaker Speech Generation","Complete the Mossland API \u002Fv1\u002Faudio\u002Fspeech integration in five steps and generate your first single-speaker speech.",{"path":1002,"title":1003,"description":1004,"nav_group":928,"nav_order":979,"method":988,"nav_category":55},"\u002Fen\u002Fdocs\u002Freference\u002Fmodels","List Models","List the models available to the current tenant; GET \u002Fv1\u002Fmodels, list only, no model detail.",{"path":1006,"title":1007,"description":1008,"nav_group":902,"nav_order":979,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fscenarios\u002Fvoice-design","Voice Design","Describe a voice style in natural language and generate speech from text in the corresponding style.",{"path":886,"title":1010,"description":1011,"nav_group":919,"nav_order":1012,"method":240,"nav_category":240},"同步、异步与任务查询","同步请求直接返回结果；async=true 创建异步任务，用服务端返回的 task_id 查询。",40,{"path":1014,"title":26,"description":1015,"nav_group":928,"nav_order":1012,"method":1016,"nav_category":124},"\u002Fdocs\u002Freference\u002Ffiles-create","上传文件到平台资产体系；POST \u002Fv1\u002Ffiles，返回 file_id 供 ASR 等大文件场景复用。","POST",{"path":1018,"title":1019,"description":1020,"nav_group":902,"nav_order":1012,"method":240,"nav_category":240},"\u002Fdocs\u002Fscenarios\u002Fvoice-clone","克隆音色","上传一段参考音频文件（multipart audio_sample），创建可复用的 voice_id，供后续 TTS 或 TTSD 使用。",{"path":1022,"title":1023,"description":1024,"nav_group":919,"nav_order":1012,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fgetting-started\u002Fasync-tasks","Synchronous, Asynchronous, and Task Queries","Synchronous requests return results directly; async=true creates an asynchronous task, queried with the server-returned task_id.",{"path":1026,"title":1027,"description":1028,"nav_group":928,"nav_order":1012,"method":1016,"nav_category":124},"\u002Fen\u002Fdocs\u002Freference\u002Ffiles-create","Upload File","Upload a file into the platform asset system; POST \u002Fv1\u002Ffiles returns a file_id for reuse in ASR and other large-file scenarios.",{"path":1030,"title":1031,"description":1032,"nav_group":902,"nav_order":1012,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fscenarios\u002Fvoice-clone","Clone a Voice","Upload a reference audio file (multipart audio_sample) to create a reusable voice_id for later use in TTS or TTSD.",{"path":1034,"title":1035,"description":1036,"nav_group":928,"nav_order":1037,"method":988,"nav_category":124},"\u002Fdocs\u002Freference\u002Ffiles-list","查询文件列表","分页查询当前租户上传的文件；GET \u002Fv1\u002Ffiles，支持 limit \u002F offset \u002F purpose 过滤。",41,{"path":1039,"title":1040,"description":1041,"nav_group":928,"nav_order":1037,"method":988,"nav_category":124},"\u002Fen\u002Fdocs\u002Freference\u002Ffiles-list","List Files","Paginated query of files uploaded by the current tenant; GET \u002Fv1\u002Ffiles supports limit \u002F offset \u002F purpose filtering.",{"path":1043,"title":1044,"description":1045,"nav_group":928,"nav_order":1046,"method":988,"nav_category":124},"\u002Fdocs\u002Freference\u002Ffile-detail","查询文件详情","查询单个文件的元信息；GET \u002Fv1\u002Ffiles\u002F{file_id}，返回 file 对象。",42,{"path":1048,"title":1049,"description":1050,"nav_group":928,"nav_order":1046,"method":988,"nav_category":124},"\u002Fen\u002Fdocs\u002Freference\u002Ffile-detail","Get File","Query the metadata of a single file; GET \u002Fv1\u002Ffiles\u002F{file_id}; returns a file object.",{"path":1052,"title":1053,"description":1054,"nav_group":928,"nav_order":1055,"method":1056,"nav_category":124},"\u002Fdocs\u002Freference\u002Ffile-delete","删除文件","删除文件记录与资产引用；DELETE \u002Fv1\u002Ffiles\u002F{file_id}。",43,"DELETE",{"path":1058,"title":1059,"description":1060,"nav_group":928,"nav_order":1055,"method":1056,"nav_category":124},"\u002Fen\u002Fdocs\u002Freference\u002Ffile-delete","Delete File","Delete the file record and its asset reference; DELETE \u002Fv1\u002Ffiles\u002F{file_id}.",{"path":1062,"title":1063,"description":1064,"nav_group":919,"nav_order":1065,"method":240,"nav_category":240},"\u002Fdocs\u002Fgetting-started\u002Flegacy-migration","旧接口迁移","从旧 \u002Fapi\u002Fv1 任务模型迁移到当前 \u002Fv1 音频接口的路径与字段对照。",50,{"path":869,"title":239,"description":1067,"nav_group":928,"nav_order":1065,"method":1016,"nav_category":206},"文本转语音；POST \u002Fv1\u002Faudio\u002Fspeech，voice_id 只接受 voice id。",{"path":1069,"title":1070,"description":1071,"nav_group":919,"nav_order":1065,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fgetting-started\u002Flegacy-migration","Legacy Endpoint Migration","Path and field mapping for migrating from the legacy \u002Fapi\u002Fv1 task model to the current \u002Fv1 audio endpoints.",{"path":1073,"title":1074,"description":1075,"nav_group":928,"nav_order":1065,"method":1016,"nav_category":206},"\u002Fen\u002Fdocs\u002Freference\u002Fspeech","Single-speaker Speech","Text-to-speech; POST \u002Fv1\u002Faudio\u002Fspeech, voice_id accepts only a voice id.",{"path":1077,"title":1078,"description":1079,"nav_group":928,"nav_order":1080,"method":1016,"nav_category":165},"\u002Fdocs\u002Freference\u002Ftranscriptions","音频转写","语音识别；POST \u002Fv1\u002Faudio\u002Ftranscriptions，支持 moss-transcribe 同步转写与 moss-transcribe-diarize 说话人分离（非流式 \u002F 流式 SSE）。",60,{"path":1082,"title":1083,"description":1084,"nav_group":928,"nav_order":1080,"method":1016,"nav_category":165},"\u002Fen\u002Fdocs\u002Freference\u002Ftranscriptions","Create Transcription","Speech recognition; POST \u002Fv1\u002Faudio\u002Ftranscriptions, supports moss-transcribe synchronous transcription and moss-transcribe-diarize speaker separation (non-streaming \u002F streaming SSE).",{"path":1086,"title":1087,"description":1088,"nav_group":928,"nav_order":1089,"method":988,"nav_category":132},"\u002Fdocs\u002Freference\u002Fvoices-list","查询音色列表","查询当前租户可用音色；GET \u002Fv1\u002Faudio\u002Fvoices，返回 list 对象。",70,{"path":1091,"title":1078,"description":1092,"nav_group":902,"nav_order":1089,"method":240,"nav_category":240},"\u002Fdocs\u002Fscenarios\u002Ftranscribe","将音频转换为文本，适合会议、访谈、语音消息和媒体内容处理。",{"path":1094,"title":1095,"description":1096,"nav_group":928,"nav_order":1089,"method":988,"nav_category":132},"\u002Fen\u002Fdocs\u002Freference\u002Fvoices-list","List Voices","Query the voices available to the current tenant; GET \u002Fv1\u002Faudio\u002Fvoices returns a list object.",{"path":1098,"title":1099,"description":1100,"nav_group":902,"nav_order":1089,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fscenarios\u002Ftranscribe","Audio Transcription","Convert audio into text — ideal for meetings, interviews, voice messages, and media content processing.",{"path":1102,"title":1103,"description":1104,"nav_group":928,"nav_order":1105,"method":1016,"nav_category":132},"\u002Fdocs\u002Freference\u002Fvoices-create","创建音色","以音频样本创建\u002F克隆音色；POST \u002Fv1\u002Faudio\u002Fvoices，仅支持 multipart audio_sample。",71,{"path":1107,"title":1108,"description":1109,"nav_group":928,"nav_order":1105,"method":1016,"nav_category":132},"\u002Fen\u002Fdocs\u002Freference\u002Fvoices-create","Create Voice","Create\u002Fclone a voice from an audio sample; POST \u002Fv1\u002Faudio\u002Fvoices supports only multipart audio_sample.",{"path":1111,"title":1112,"description":1113,"nav_group":928,"nav_order":1114,"method":1016,"nav_category":206},"\u002Fdocs\u002Freference\u002Fspeakers","多人语音生成","多说话人 TTS；POST \u002Fv1\u002Faudio\u002Fspeech\u002Fspeakers，speakers 声明音色 + segments 分句。",80,{"path":1116,"title":1117,"description":1118,"nav_group":902,"nav_order":1114,"method":240,"nav_category":240},"\u002Fdocs\u002Fscenarios\u002Ftranscribe-diarization","多说话人转写","将多说话人音频转为带说话人信息的转写结果，适合会议、访谈和播客。",{"path":1120,"title":1121,"description":1122,"nav_group":928,"nav_order":1114,"method":1016,"nav_category":206},"\u002Fen\u002Fdocs\u002Freference\u002Fspeakers","Multi-speaker Speech","Multi-speaker TTS; POST \u002Fv1\u002Faudio\u002Fspeech\u002Fspeakers, speakers declares the voices and segments splits the lines.",{"path":1124,"title":1125,"description":1126,"nav_group":902,"nav_order":1114,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fscenarios\u002Ftranscribe-diarization","Multi-Speaker Transcription","Convert multi-speaker audio into transcription results with speaker information — ideal for meetings, interviews, and podcasts.",{"path":1128,"title":1129,"description":1130,"nav_group":928,"nav_order":1131,"method":1016,"nav_category":132},"\u002Fdocs\u002Freference\u002Fvoice-generations","音色生成","据文本与 instruction 生成音色\u002F语音预览；POST \u002Fv1\u002Faudio\u002Fvoice\u002Fgenerations。",90,{"path":1133,"title":1134,"description":1135,"nav_group":902,"nav_order":1131,"method":240,"nav_category":240},"\u002Fdocs\u002Fscenarios\u002Fasync-callback","异步回调","当任务耗时较长或不希望客户端阻塞等待时，传入 async=true 和 webhook_url 接收终态结果。",{"path":1137,"title":1138,"description":1139,"nav_group":928,"nav_order":1131,"method":1016,"nav_category":132},"\u002Fen\u002Fdocs\u002Freference\u002Fvoice-generations","Generate Voice","Generate a voice \u002F speech preview from text and an instruction; POST \u002Fv1\u002Faudio\u002Fvoice\u002Fgenerations.",{"path":1141,"title":1142,"description":1143,"nav_group":902,"nav_order":1131,"method":240,"nav_category":240},"\u002Fen\u002Fdocs\u002Fscenarios\u002Fasync-callback","Asynchronous Callbacks","When a task takes a long time or you don't want the client to block and wait, pass async=true and webhook_url to receive the terminal result.",{"path":1145,"title":1146,"description":1147,"nav_group":928,"nav_order":1148,"method":988,"nav_category":149},"\u002Fdocs\u002Freference\u002Faudio-task","查询任务","查询通用音频异步任务；GET \u002Fv1\u002Faudio\u002Ftasks\u002F{task_id}，成功结果展开在顶层，不包在 result 字段中。",120,{"path":1150,"title":1151,"description":1152,"nav_group":928,"nav_order":1148,"method":988,"nav_category":149},"\u002Fen\u002Fdocs\u002Freference\u002Faudio-task","Get Task","Query a general audio asynchronous task; GET \u002Fv1\u002Faudio\u002Ftasks\u002F{task_id}; successful results are expanded at the top level, not wrapped in a result field.",[1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211],{"path":976},{"path":911},{"path":951},{"path":886},{"path":956},{"path":1062},{"path":916},{"path":981},{"path":878},{"path":1145},{"path":1052},{"path":1043},{"path":1014},{"path":1034},{"path":925},{"path":985},{"path":1111},{"path":869},{"path":1077},{"path":1128},{"path":1102},{"path":1086},{"path":1133},{"path":960},{"path":903},{"path":1091},{"path":1116},{"path":1018},{"path":990},{"path":994},{"path":931},{"path":964},{"path":1022},{"path":968},{"path":1069},{"path":935},{"path":998},{"path":939},{"path":1150},{"path":1058},{"path":1048},{"path":1026},{"path":1039},{"path":943},{"path":1002},{"path":1120},{"path":1073},{"path":1082},{"path":1137},{"path":1107},{"path":1094},{"path":1141},{"path":972},{"path":947},{"path":1098},{"path":1124},{"path":1030},{"path":1006},1784807580063]