[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"docs-nav-zh":3,"docs-zh-models\u002Fvideo\u002Foverview":180,"$fqdccCToysgRM_ffq2QrjJjBdNl8gBU9qUk4wJmU5fYw":2093,"$fcGvkVCHtgtU-tTjIabSnKGk1hQa4iTsUnm3cQYnjCTk":2142,"$fd2fDQ0cuM20hcs_y29HhxCQevIIp3auSyBXu6CyO4vY":2178,"$fDylU-6-tv5kbQYmvs6zGzc6FAReS2oBCSurPIArY1sE":2235},[4,26,43,105,155,172,176],{"title":5,"path":6,"stem":7,"children":8,"page":25},"快速开始","\u002Fgetting-started","1.getting-started",[9,13,17,21],{"title":10,"path":11,"stem":12},"首次调用千木 API","\u002Fgetting-started\u002Fquick-start","1.getting-started\u002F1.quick-start",{"title":14,"path":15,"stem":16},"模型选择","\u002Fgetting-started\u002Fmodel-selection","1.getting-started\u002F2.model-selection",{"title":18,"path":19,"stem":20},"限流","\u002Fgetting-started\u002Frate-limits","1.getting-started\u002F3.rate-limits",{"title":22,"path":23,"stem":24},"常见问题","\u002Fgetting-started\u002Ffaq","1.getting-started\u002F4.faq",false,{"title":27,"path":28,"stem":29,"children":30,"page":25},"产品计费","\u002Fbilling","2.billing",[31,35,39],{"title":32,"path":33,"stem":34},"计费说明","\u002Fbilling\u002Foverview","2.billing\u002F1.overview",{"title":36,"path":37,"stem":38},"在线充值","\u002Fbilling\u002Frecharge","2.billing\u002F2.recharge",{"title":40,"path":41,"stem":42},"账单、用量与导出","\u002Fbilling\u002Fusage-export","2.billing\u002F3.usage-export",{"title":44,"path":45,"stem":46,"children":47,"page":25},"Coding Plan","\u002Fcoding-plan","3.coding-plan",[48,52,56,60,67,102],{"title":49,"path":50,"stem":51},"Coding Plan 概述","\u002Fcoding-plan\u002Foverview","3.coding-plan\u002F1.overview",{"title":53,"path":54,"stem":55},"快速接入","\u002Fcoding-plan\u002Fquick-start","3.coding-plan\u002F2.quick-start",{"title":57,"path":58,"stem":59},"使用须知","\u002Fcoding-plan\u002Fusage-notes","3.coding-plan\u002F3.usage-notes",{"title":61,"path":62,"stem":63,"children":64},"个人版","\u002Fcoding-plan\u002Fpersonal","3.coding-plan\u002F4.personal\u002Findex",[65],{"title":66,"path":62,"stem":63},"价格和权益",{"title":68,"path":69,"stem":70,"children":71,"page":-1},"开发指南","\u002Fcoding-plan\u002Fguide","3.coding-plan\u002F5.guide\u002Findex",[72,74,78,82,86,90,94,98],{"title":73,"path":69,"stem":70},"端点与协议",{"title":75,"path":76,"stem":77},"Claude Code","\u002Fcoding-plan\u002Fguide\u002Fclaude-code","3.coding-plan\u002F5.guide\u002F1.claude-code",{"title":79,"path":80,"stem":81},"OpenCode","\u002Fcoding-plan\u002Fguide\u002Fopencode","3.coding-plan\u002F5.guide\u002F2.opencode",{"title":83,"path":84,"stem":85},"Cursor","\u002Fcoding-plan\u002Fguide\u002Fcursor","3.coding-plan\u002F5.guide\u002F3.cursor",{"title":87,"path":88,"stem":89},"Codex","\u002Fcoding-plan\u002Fguide\u002Fcodex","3.coding-plan\u002F5.guide\u002F4.codex",{"title":91,"path":92,"stem":93},"ZCode","\u002Fcoding-plan\u002Fguide\u002Fzcode","3.coding-plan\u002F5.guide\u002F5.zcode",{"title":95,"path":96,"stem":97},"TRAE","\u002Fcoding-plan\u002Fguide\u002Ftrae","3.coding-plan\u002F5.guide\u002F6.trae",{"title":99,"path":100,"stem":101},"CodeBuddy","\u002Fcoding-plan\u002Fguide\u002Fcodebuddy","3.coding-plan\u002F5.guide\u002F7.codebuddy",{"title":22,"path":103,"stem":104},"\u002Fcoding-plan\u002Ffaq","3.coding-plan\u002F6.faq",{"title":106,"path":107,"stem":108,"children":109,"page":25},"模型接口","\u002Fmodels","4.models",[110,143],{"title":111,"path":112,"stem":113,"children":114,"page":25},"文本生成API","\u002Fmodels\u002Fchat","4.models\u002F1.chat",[115,119,123,127,131,135,139],{"title":116,"path":117,"stem":118},"概述","\u002Fmodels\u002Fchat\u002Foverview","4.models\u002F1.chat\u002F1.overview",{"title":120,"path":121,"stem":122},"OpenAI 兼容接口","\u002Fmodels\u002Fchat\u002Fopenai","4.models\u002F1.chat\u002F2.openai",{"title":124,"path":125,"stem":126},"Anthropic 兼容","\u002Fmodels\u002Fchat\u002Fanthropic","4.models\u002F1.chat\u002F3.anthropic",{"title":128,"path":129,"stem":130},"Volcengine 兼容","\u002Fmodels\u002Fchat\u002Fvolcengine","4.models\u002F1.chat\u002F4.volcengine",{"title":132,"path":133,"stem":134},"智谱兼容","\u002Fmodels\u002Fchat\u002Fzhipu","4.models\u002F1.chat\u002F5.zhipu",{"title":136,"path":137,"stem":138},"SilvaMux 统一入口","\u002Fmodels\u002Fchat\u002Funified","4.models\u002F1.chat\u002F6.unified",{"title":140,"path":141,"stem":142},"多模态输入","\u002Fmodels\u002Fchat\u002Fmultimodal","4.models\u002F1.chat\u002F7.multimodal",{"title":144,"path":145,"stem":146,"children":147,"page":25},"图片生成API","\u002Fmodels\u002Fimages","4.models\u002F2.images",[148,151],{"title":116,"path":149,"stem":150},"\u002Fmodels\u002Fimages\u002Foverview","4.models\u002F2.images\u002F1.overview",{"title":152,"path":153,"stem":154},"图片生成接口","\u002Fmodels\u002Fimages\u002Fgeneration","4.models\u002F2.images\u002F2.generation",{"title":156,"path":157,"stem":158,"children":159,"page":25},"用量与余额API","\u002Fusage-and-balance","5.usage-and-balance",[160,164,168],{"title":161,"path":162,"stem":163},"查询余额","\u002Fusage-and-balance\u002Fbalance","5.usage-and-balance\u002F1.balance",{"title":165,"path":166,"stem":167},"查询用量","\u002Fusage-and-balance\u002Fusage","5.usage-and-balance\u002F2.usage",{"title":169,"path":170,"stem":171},"查询单次请求消耗","\u002Fusage-and-balance\u002Frequest-usage","5.usage-and-balance\u002F3.request-usage",{"title":173,"path":174,"stem":175},"错误码参考","\u002Ferrors","6.errors",{"title":177,"path":178,"stem":179},"开始使用 SilvaMux","\u002F","index",{"id":181,"title":182,"body":183,"description":2084,"extension":2085,"meta":2086,"navigation":25,"path":2087,"rawbody":2088,"requiredFlags":2089,"seo":2090,"stem":2091,"__hash__":2092},"docs\u002F4.models\u002F3.video\u002F1.overview.md","视频生成 API",{"type":184,"value":185,"toc":2059},"minimark",[186,190,199,209,214,218,405,419,426,442,446,450,453,1011,1014,1017,1020,1091,1094,1167,1170,1178,1247,1252,1256,1260,1300,1304,1371,1374,1378,1430,1433,1437,1440,1491,1494,1497,1500,1564,1567,1574,1578,1847,1850,1902,1925,1928,1934,1936,1939,1945,1948,1954,1957,1960,1966,1969,1974,1981,1984,1991,2002,2005,2011,2014,2017,2055],[187,188,182],"h1",{"id":189},"视频生成-api",[191,192,193,194,198],"p",{},"视频生成采用异步任务模式：创建任务 → 轮询状态 → 取结果。视频与 3D 共用同一个任务接口，按 ",[195,196,197],"code",{},"model"," 字段分流。",[200,201,202],"blockquote",{},[191,203,204,205,208],{},"当前模型列表和模型广场暂无公开可发现的视频模型调用名。以下视频请求仅用于展示结构，不能直接执行；",[195,206,207],{},"\u003CMODEL_CALL_NAME>"," 必须替换为模型广场后续发布的真实调用名。",[200,210,211],{},[191,212,213],{},"视频生成走自有接口 + API Key，不是火山 AK\u002FSK 签名。火山兼容接口仅用于素材管理。",[215,216,217],"h2",{"id":217},"关键参数",[219,220,221,240],"table",{},[222,223,224],"thead",{},[225,226,227,231,234,237],"tr",{},[228,229,230],"th",{},"参数",[228,232,233],{},"类型",[228,235,236],{},"必填",[228,238,239],{},"说明",[241,242,243,259,287,313,344,359,376,391],"tbody",{},[225,244,245,250,253,256],{},[246,247,248],"td",{},[195,249,197],{},[246,251,252],{},"string",[246,254,255],{},"是",[246,257,258],{},"模型调用名，必须从模型广场或模型列表获取",[225,260,261,266,269,271],{},[246,262,263],{},[195,264,265],{},"content",[246,267,268],{},"array",[246,270,255],{},[246,272,273,274,277,278,277,281,277,284],{},"输入内容，支持 ",[195,275,276],{},"text","、",[195,279,280],{},"image_url",[195,282,283],{},"video_url",[195,285,286],{},"audio_url",[225,288,289,294,296,299],{},[246,290,291],{},[195,292,293],{},"resolution",[246,295,252],{},[246,297,298],{},"否",[246,300,301,302,305,306,305,309,312],{},"模型透传字段；常见值为 ",[195,303,304],{},"480p"," \u002F ",[195,307,308],{},"720p",[195,310,311],{},"1080p","，以模型详情为准",[225,314,315,320,322,324],{},[246,316,317],{},[195,318,319],{},"ratio",[246,321,252],{},[246,323,298],{},[246,325,301,326,305,329,305,332,305,335,305,338,305,341],{},[195,327,328],{},"16:9",[195,330,331],{},"9:16",[195,333,334],{},"4:3",[195,336,337],{},"3:4",[195,339,340],{},"1:1",[195,342,343],{},"21:9",[225,345,346,351,354,356],{},[246,347,348],{},[195,349,350],{},"duration",[246,352,353],{},"integer",[246,355,298],{},[246,357,358],{},"模型透传字段；时长范围以模型详情为准",[225,360,361,366,368,370],{},[246,362,363],{},[195,364,365],{},"frames",[246,367,353],{},[246,369,298],{},[246,371,372,373,375],{},"模型透传字段；是否可与 ",[195,374,350],{}," 互换以模型详情为准",[225,377,378,383,386,388],{},[246,379,380],{},[195,381,382],{},"generate_audio",[246,384,385],{},"boolean",[246,387,298],{},[246,389,390],{},"模型透传字段；是否支持配音以模型详情为准",[225,392,393,398,400,402],{},[246,394,395],{},[195,396,397],{},"tools",[246,399,268],{},[246,401,298],{},[246,403,404],{},"模型透传字段；支持的工具以模型详情为准",[191,406,407,411,412,415,416],{},[408,409,410],"strong",{},"创建任务认证："," ",[195,413,414],{},"Authorization: Bearer \u003CAPI_KEY>"," 或 ",[195,417,418],{},"x-api-key: \u003CAPI_KEY>",[191,420,421,411,424],{},[408,422,423],{},"查询和取消任务认证：",[195,425,414],{},[200,427,428],{},[191,429,430,433,434,437,438,441],{},[195,431,432],{},"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3"," 即接入域名下的 ",[195,435,436],{},"\u002Fapi\u002Fv3","，对应路由 ",[195,439,440],{},"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks","。",[443,444,445],"h3",{"id":445},"创建任务",[447,448],"api-endpoint",{"method":449,"path":440},"POST",[215,451,452],{"id":452},"文生视频",[454,455,456,571,696,815],"code-tabs",{},[457,458,460],"code-tab",{"label":459},"cURL",[461,462,467],"pre",{"className":463,"code":464,"language":465,"meta":466,"style":466},"language-bash shiki shiki-themes github-light github-dark","curl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [{\"type\": \"text\", \"text\": \"一只金毛犬在海滩上奔跑\"}],\n    \"resolution\": \"720p\",\n    \"ratio\": \"16:9\",\n    \"duration\": 5,\n    \"generate_audio\": true\n  }'\n","bash","",[195,468,469,492,510,520,529,535,541,547,553,559,565],{"__ignoreMap":466},[470,471,474,478,482,486,489],"span",{"class":472,"line":473},"line",1,[470,475,477],{"class":476},"sScJk","curl",[470,479,481],{"class":480},"sj4cs"," -X",[470,483,485],{"class":484},"sZZnC"," POST",[470,487,488],{"class":484}," https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks",[470,490,491],{"class":480}," \\\n",[470,493,495,498,501,505,508],{"class":472,"line":494},2,[470,496,497],{"class":480},"  -H",[470,499,500],{"class":484}," \"Authorization: Bearer ",[470,502,504],{"class":503},"sVt8B","$SILVAMUX_API_KEY",[470,506,507],{"class":484},"\"",[470,509,491],{"class":480},[470,511,513,515,518],{"class":472,"line":512},3,[470,514,497],{"class":480},[470,516,517],{"class":484}," \"Content-Type: application\u002Fjson\"",[470,519,491],{"class":480},[470,521,523,526],{"class":472,"line":522},4,[470,524,525],{"class":480},"  -d",[470,527,528],{"class":484}," '{\n",[470,530,532],{"class":472,"line":531},5,[470,533,534],{"class":484},"    \"model\": \"\u003CMODEL_CALL_NAME>\",\n",[470,536,538],{"class":472,"line":537},6,[470,539,540],{"class":484},"    \"content\": [{\"type\": \"text\", \"text\": \"一只金毛犬在海滩上奔跑\"}],\n",[470,542,544],{"class":472,"line":543},7,[470,545,546],{"class":484},"    \"resolution\": \"720p\",\n",[470,548,550],{"class":472,"line":549},8,[470,551,552],{"class":484},"    \"ratio\": \"16:9\",\n",[470,554,556],{"class":472,"line":555},9,[470,557,558],{"class":484},"    \"duration\": 5,\n",[470,560,562],{"class":472,"line":561},10,[470,563,564],{"class":484},"    \"generate_audio\": true\n",[470,566,568],{"class":472,"line":567},11,[470,569,570],{"class":484},"  }'\n",[457,572,574],{"label":573},"Python",[461,575,579],{"className":576,"code":577,"language":578,"meta":466,"style":466},"language-python shiki shiki-themes github-light github-dark","# pip install requests\nimport os\nimport requests\n\nresp = requests.post(\n    \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n    headers={\n        \"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\",\n        \"Content-Type\": \"application\u002Fjson\",\n    },\n    json={\n        \"model\": \"\u003CMODEL_CALL_NAME>\",\n        \"content\": [{\"type\": \"text\", \"text\": \"一只金毛犬在海滩上奔跑\"}],\n        \"resolution\": \"720p\",\n        \"ratio\": \"16:9\",\n        \"duration\": 5,\n        \"generate_audio\": True,\n    },\n)\nresp.raise_for_status()\nprint(resp.json())  # {\"id\": \"VTK-...\", \"status\": \"queued\", ...}\n","python",[195,580,581,586,591,596,602,607,612,617,622,627,632,637,643,649,655,661,667,673,678,684,690],{"__ignoreMap":466},[470,582,583],{"class":472,"line":473},[470,584,585],{},"# pip install requests\n",[470,587,588],{"class":472,"line":494},[470,589,590],{},"import os\n",[470,592,593],{"class":472,"line":512},[470,594,595],{},"import requests\n",[470,597,598],{"class":472,"line":522},[470,599,601],{"emptyLinePlaceholder":600},true,"\n",[470,603,604],{"class":472,"line":531},[470,605,606],{},"resp = requests.post(\n",[470,608,609],{"class":472,"line":537},[470,610,611],{},"    \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n",[470,613,614],{"class":472,"line":543},[470,615,616],{},"    headers={\n",[470,618,619],{"class":472,"line":549},[470,620,621],{},"        \"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\",\n",[470,623,624],{"class":472,"line":555},[470,625,626],{},"        \"Content-Type\": \"application\u002Fjson\",\n",[470,628,629],{"class":472,"line":561},[470,630,631],{},"    },\n",[470,633,634],{"class":472,"line":567},[470,635,636],{},"    json={\n",[470,638,640],{"class":472,"line":639},12,[470,641,642],{},"        \"model\": \"\u003CMODEL_CALL_NAME>\",\n",[470,644,646],{"class":472,"line":645},13,[470,647,648],{},"        \"content\": [{\"type\": \"text\", \"text\": \"一只金毛犬在海滩上奔跑\"}],\n",[470,650,652],{"class":472,"line":651},14,[470,653,654],{},"        \"resolution\": \"720p\",\n",[470,656,658],{"class":472,"line":657},15,[470,659,660],{},"        \"ratio\": \"16:9\",\n",[470,662,664],{"class":472,"line":663},16,[470,665,666],{},"        \"duration\": 5,\n",[470,668,670],{"class":472,"line":669},17,[470,671,672],{},"        \"generate_audio\": True,\n",[470,674,676],{"class":472,"line":675},18,[470,677,631],{},[470,679,681],{"class":472,"line":680},19,[470,682,683],{},")\n",[470,685,687],{"class":472,"line":686},20,[470,688,689],{},"resp.raise_for_status()\n",[470,691,693],{"class":472,"line":692},21,[470,694,695],{},"print(resp.json())  # {\"id\": \"VTK-...\", \"status\": \"queued\", ...}\n",[457,697,699],{"label":698},"JavaScript",[461,700,704],{"className":701,"code":702,"language":703,"meta":466,"style":466},"language-javascript shiki shiki-themes github-light github-dark","\u002F\u002F Node 18+（内置 fetch）\nconst resp = await fetch(\n  \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n  {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}`,\n      \"Content-Type\": \"application\u002Fjson\",\n    },\n    body: JSON.stringify({\n      model: \"\u003CMODEL_CALL_NAME>\",\n      content: [{ type: \"text\", text: \"一只金毛犬在海滩上奔跑\" }],\n      resolution: \"720p\",\n      ratio: \"16:9\",\n      duration: 5,\n      generate_audio: true,\n    }),\n  },\n);\n\nconst task = await resp.json();\nconsole.log(task); \u002F\u002F { id: \"VTK-...\", status: \"queued\", ... }\n","javascript",[195,705,706,711,716,721,726,731,736,741,746,750,755,760,765,770,775,780,785,790,795,800,804,809],{"__ignoreMap":466},[470,707,708],{"class":472,"line":473},[470,709,710],{},"\u002F\u002F Node 18+（内置 fetch）\n",[470,712,713],{"class":472,"line":494},[470,714,715],{},"const resp = await fetch(\n",[470,717,718],{"class":472,"line":512},[470,719,720],{},"  \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n",[470,722,723],{"class":472,"line":522},[470,724,725],{},"  {\n",[470,727,728],{"class":472,"line":531},[470,729,730],{},"    method: \"POST\",\n",[470,732,733],{"class":472,"line":537},[470,734,735],{},"    headers: {\n",[470,737,738],{"class":472,"line":543},[470,739,740],{},"      Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}`,\n",[470,742,743],{"class":472,"line":549},[470,744,745],{},"      \"Content-Type\": \"application\u002Fjson\",\n",[470,747,748],{"class":472,"line":555},[470,749,631],{},[470,751,752],{"class":472,"line":561},[470,753,754],{},"    body: JSON.stringify({\n",[470,756,757],{"class":472,"line":567},[470,758,759],{},"      model: \"\u003CMODEL_CALL_NAME>\",\n",[470,761,762],{"class":472,"line":639},[470,763,764],{},"      content: [{ type: \"text\", text: \"一只金毛犬在海滩上奔跑\" }],\n",[470,766,767],{"class":472,"line":645},[470,768,769],{},"      resolution: \"720p\",\n",[470,771,772],{"class":472,"line":651},[470,773,774],{},"      ratio: \"16:9\",\n",[470,776,777],{"class":472,"line":657},[470,778,779],{},"      duration: 5,\n",[470,781,782],{"class":472,"line":663},[470,783,784],{},"      generate_audio: true,\n",[470,786,787],{"class":472,"line":669},[470,788,789],{},"    }),\n",[470,791,792],{"class":472,"line":675},[470,793,794],{},"  },\n",[470,796,797],{"class":472,"line":680},[470,798,799],{},");\n",[470,801,802],{"class":472,"line":686},[470,803,601],{"emptyLinePlaceholder":600},[470,805,806],{"class":472,"line":692},[470,807,808],{},"const task = await resp.json();\n",[470,810,812],{"class":472,"line":811},22,[470,813,814],{},"console.log(task); \u002F\u002F { id: \"VTK-...\", status: \"queued\", ... }\n",[457,816,818],{"label":817},"Go",[461,819,823],{"className":820,"code":821,"language":822,"meta":466,"style":466},"language-go shiki shiki-themes github-light github-dark","\u002F\u002F 仅依赖标准库\npackage main\n\nimport (\n    \"bytes\"\n    \"fmt\"\n    \"io\"\n    \"net\u002Fhttp\"\n    \"os\"\n)\n\nfunc main() {\n    payload := []byte(`{\n        \"model\": \"\u003CMODEL_CALL_NAME>\",\n        \"content\": [{\"type\": \"text\", \"text\": \"一只金毛犬在海滩上奔跑\"}],\n        \"resolution\": \"720p\",\n        \"ratio\": \"16:9\",\n        \"duration\": 5,\n        \"generate_audio\": true\n    }`)\n\n    req, err := http.NewRequest(\"POST\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\", bytes.NewReader(payload))\n    if err != nil {\n        panic(err)\n    }\n    req.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n    req.Header.Set(\"Content-Type\", \"application\u002Fjson\")\n\n    resp, err := http.DefaultClient.Do(req)\n    if err != nil {\n        panic(err)\n    }\n    defer resp.Body.Close()\n\n    body, _ := io.ReadAll(resp.Body)\n    fmt.Println(string(body))\n}\n","go",[195,824,825,830,835,839,844,849,854,859,864,869,873,877,882,887,891,895,899,903,907,912,917,921,926,932,938,944,950,956,961,967,972,977,982,988,993,999,1005],{"__ignoreMap":466},[470,826,827],{"class":472,"line":473},[470,828,829],{},"\u002F\u002F 仅依赖标准库\n",[470,831,832],{"class":472,"line":494},[470,833,834],{},"package main\n",[470,836,837],{"class":472,"line":512},[470,838,601],{"emptyLinePlaceholder":600},[470,840,841],{"class":472,"line":522},[470,842,843],{},"import (\n",[470,845,846],{"class":472,"line":531},[470,847,848],{},"    \"bytes\"\n",[470,850,851],{"class":472,"line":537},[470,852,853],{},"    \"fmt\"\n",[470,855,856],{"class":472,"line":543},[470,857,858],{},"    \"io\"\n",[470,860,861],{"class":472,"line":549},[470,862,863],{},"    \"net\u002Fhttp\"\n",[470,865,866],{"class":472,"line":555},[470,867,868],{},"    \"os\"\n",[470,870,871],{"class":472,"line":561},[470,872,683],{},[470,874,875],{"class":472,"line":567},[470,876,601],{"emptyLinePlaceholder":600},[470,878,879],{"class":472,"line":639},[470,880,881],{},"func main() {\n",[470,883,884],{"class":472,"line":645},[470,885,886],{},"    payload := []byte(`{\n",[470,888,889],{"class":472,"line":651},[470,890,642],{},[470,892,893],{"class":472,"line":657},[470,894,648],{},[470,896,897],{"class":472,"line":663},[470,898,654],{},[470,900,901],{"class":472,"line":669},[470,902,660],{},[470,904,905],{"class":472,"line":675},[470,906,666],{},[470,908,909],{"class":472,"line":680},[470,910,911],{},"        \"generate_audio\": true\n",[470,913,914],{"class":472,"line":686},[470,915,916],{},"    }`)\n",[470,918,919],{"class":472,"line":692},[470,920,601],{"emptyLinePlaceholder":600},[470,922,923],{"class":472,"line":811},[470,924,925],{},"    req, err := http.NewRequest(\"POST\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\", bytes.NewReader(payload))\n",[470,927,929],{"class":472,"line":928},23,[470,930,931],{},"    if err != nil {\n",[470,933,935],{"class":472,"line":934},24,[470,936,937],{},"        panic(err)\n",[470,939,941],{"class":472,"line":940},25,[470,942,943],{},"    }\n",[470,945,947],{"class":472,"line":946},26,[470,948,949],{},"    req.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n",[470,951,953],{"class":472,"line":952},27,[470,954,955],{},"    req.Header.Set(\"Content-Type\", \"application\u002Fjson\")\n",[470,957,959],{"class":472,"line":958},28,[470,960,601],{"emptyLinePlaceholder":600},[470,962,964],{"class":472,"line":963},29,[470,965,966],{},"    resp, err := http.DefaultClient.Do(req)\n",[470,968,970],{"class":472,"line":969},30,[470,971,931],{},[470,973,975],{"class":472,"line":974},31,[470,976,937],{},[470,978,980],{"class":472,"line":979},32,[470,981,943],{},[470,983,985],{"class":472,"line":984},33,[470,986,987],{},"    defer resp.Body.Close()\n",[470,989,991],{"class":472,"line":990},34,[470,992,601],{"emptyLinePlaceholder":600},[470,994,996],{"class":472,"line":995},35,[470,997,998],{},"    body, _ := io.ReadAll(resp.Body)\n",[470,1000,1002],{"class":472,"line":1001},36,[470,1003,1004],{},"    fmt.Println(string(body))\n",[470,1006,1008],{"class":472,"line":1007},37,[470,1009,1010],{},"}\n",[215,1012,1013],{"id":1013},"图生视频",[191,1015,1016],{},"图生视频分首帧、首尾帧两种场景（互斥）。",[443,1018,1019],{"id":1019},"首帧",[461,1021,1023],{"className":463,"code":1022,"language":465,"meta":466,"style":466},"curl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n      {\"type\": \"text\", \"text\": \"镜头缓缓拉远\"}\n    ]\n  }'\n",[195,1024,1025,1037,1049,1057,1063,1067,1072,1077,1082,1087],{"__ignoreMap":466},[470,1026,1027,1029,1031,1033,1035],{"class":472,"line":473},[470,1028,477],{"class":476},[470,1030,481],{"class":480},[470,1032,485],{"class":484},[470,1034,488],{"class":484},[470,1036,491],{"class":480},[470,1038,1039,1041,1043,1045,1047],{"class":472,"line":494},[470,1040,497],{"class":480},[470,1042,500],{"class":484},[470,1044,504],{"class":503},[470,1046,507],{"class":484},[470,1048,491],{"class":480},[470,1050,1051,1053,1055],{"class":472,"line":512},[470,1052,497],{"class":480},[470,1054,517],{"class":484},[470,1056,491],{"class":480},[470,1058,1059,1061],{"class":472,"line":522},[470,1060,525],{"class":480},[470,1062,528],{"class":484},[470,1064,1065],{"class":472,"line":531},[470,1066,534],{"class":484},[470,1068,1069],{"class":472,"line":537},[470,1070,1071],{"class":484},"    \"content\": [\n",[470,1073,1074],{"class":472,"line":543},[470,1075,1076],{"class":484},"      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n",[470,1078,1079],{"class":472,"line":549},[470,1080,1081],{"class":484},"      {\"type\": \"text\", \"text\": \"镜头缓缓拉远\"}\n",[470,1083,1084],{"class":472,"line":555},[470,1085,1086],{"class":484},"    ]\n",[470,1088,1089],{"class":472,"line":561},[470,1090,570],{"class":484},[443,1092,1093],{"id":1093},"首尾帧",[461,1095,1097],{"className":463,"code":1096,"language":465,"meta":466,"style":466},"curl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Flast.jpg\"}, \"role\": \"last_frame\"},\n      {\"type\": \"text\", \"text\": \"镜头从白天过渡到夜晚\"}\n    ]\n  }'\n",[195,1098,1099,1111,1123,1131,1137,1141,1145,1149,1154,1159,1163],{"__ignoreMap":466},[470,1100,1101,1103,1105,1107,1109],{"class":472,"line":473},[470,1102,477],{"class":476},[470,1104,481],{"class":480},[470,1106,485],{"class":484},[470,1108,488],{"class":484},[470,1110,491],{"class":480},[470,1112,1113,1115,1117,1119,1121],{"class":472,"line":494},[470,1114,497],{"class":480},[470,1116,500],{"class":484},[470,1118,504],{"class":503},[470,1120,507],{"class":484},[470,1122,491],{"class":480},[470,1124,1125,1127,1129],{"class":472,"line":512},[470,1126,497],{"class":480},[470,1128,517],{"class":484},[470,1130,491],{"class":480},[470,1132,1133,1135],{"class":472,"line":522},[470,1134,525],{"class":480},[470,1136,528],{"class":484},[470,1138,1139],{"class":472,"line":531},[470,1140,534],{"class":484},[470,1142,1143],{"class":472,"line":537},[470,1144,1071],{"class":484},[470,1146,1147],{"class":472,"line":543},[470,1148,1076],{"class":484},[470,1150,1151],{"class":472,"line":549},[470,1152,1153],{"class":484},"      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Flast.jpg\"}, \"role\": \"last_frame\"},\n",[470,1155,1156],{"class":472,"line":555},[470,1157,1158],{"class":484},"      {\"type\": \"text\", \"text\": \"镜头从白天过渡到夜晚\"}\n",[470,1160,1161],{"class":472,"line":561},[470,1162,1086],{"class":484},[470,1164,1165],{"class":472,"line":567},[470,1166,570],{"class":484},[215,1168,1169],{"id":1169},"多模态参考生视频",[191,1171,1172,1173,1177],{},"参考图片（1",[1174,1175,1176],"del",{},"9）+ 参考视频（0","3）+ 参考音频（0~3）+ 文本提示词（可选）生成视频，支持全新生成、编辑、延长。",[461,1179,1181],{"className":463,"code":1180,"language":465,"meta":466,"style":466},"curl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"asset:\u002F\u002FAST-XXXX\"}, \"role\": \"reference_image\"},\n      {\"type\": \"text\", \"text\": \"让画面中的角色跳舞\"}\n    ]\n  }'\n",[195,1182,1183,1195,1207,1215,1221,1225,1229,1234,1239,1243],{"__ignoreMap":466},[470,1184,1185,1187,1189,1191,1193],{"class":472,"line":473},[470,1186,477],{"class":476},[470,1188,481],{"class":480},[470,1190,485],{"class":484},[470,1192,488],{"class":484},[470,1194,491],{"class":480},[470,1196,1197,1199,1201,1203,1205],{"class":472,"line":494},[470,1198,497],{"class":480},[470,1200,500],{"class":484},[470,1202,504],{"class":503},[470,1204,507],{"class":484},[470,1206,491],{"class":480},[470,1208,1209,1211,1213],{"class":472,"line":512},[470,1210,497],{"class":480},[470,1212,517],{"class":484},[470,1214,491],{"class":480},[470,1216,1217,1219],{"class":472,"line":522},[470,1218,525],{"class":480},[470,1220,528],{"class":484},[470,1222,1223],{"class":472,"line":531},[470,1224,534],{"class":484},[470,1226,1227],{"class":472,"line":537},[470,1228,1071],{"class":484},[470,1230,1231],{"class":472,"line":543},[470,1232,1233],{"class":484},"      {\"type\": \"image_url\", \"image_url\": {\"url\": \"asset:\u002F\u002FAST-XXXX\"}, \"role\": \"reference_image\"},\n",[470,1235,1236],{"class":472,"line":549},[470,1237,1238],{"class":484},"      {\"type\": \"text\", \"text\": \"让画面中的角色跳舞\"}\n",[470,1240,1241],{"class":472,"line":555},[470,1242,1086],{"class":484},[470,1244,1245],{"class":472,"line":561},[470,1246,570],{"class":484},[200,1248,1249],{},[191,1250,1251],{},"不可单独输入音频，应至少包含 1 个参考视频或图片。三种图生视频场景（首帧\u002F首尾帧\u002F多模态参考）互斥。",[215,1253,1255],{"id":1254},"content-字段","content 字段",[443,1257,1259],{"id":1258},"文本text","文本（text）",[219,1261,1262,1274],{},[222,1263,1264],{},[225,1265,1266,1269,1272],{},[228,1267,1268],{},"字段",[228,1270,1271],{},"必选",[228,1273,239],{},[241,1275,1276,1289],{},[225,1277,1278,1283,1285],{},[246,1279,1280],{},[195,1281,1282],{},"type",[246,1284,255],{},[246,1286,1287],{},[195,1288,276],{},[225,1290,1291,1295,1297],{},[246,1292,1293],{},[195,1294,276],{},[246,1296,255],{},[246,1298,1299],{},"提示词，支持中英文。建议中文 ≤500 字，英文 ≤1000 词",[443,1301,1303],{"id":1302},"图片image_url","图片（image_url）",[219,1305,1306,1316],{},[222,1307,1308],{},[225,1309,1310,1312,1314],{},[228,1311,1268],{},[228,1313,1271],{},[228,1315,239],{},[241,1317,1318,1330,1350],{},[225,1319,1320,1324,1326],{},[246,1321,1322],{},[195,1323,1282],{},[246,1325,255],{},[246,1327,1328],{},[195,1329,280],{},[225,1331,1332,1337,1339],{},[246,1333,1334],{},[195,1335,1336],{},"image_url.url",[246,1338,255],{},[246,1340,1341,1342,1345,1346,1349],{},"图片 URL、Base64 编码（",[195,1343,1344],{},"data:image\u002Fpng;base64,...","）或素材 ID（",[195,1347,1348],{},"asset:\u002F\u002F\u003CASSET_ID>","）",[225,1351,1352,1357,1360],{},[246,1353,1354],{},[195,1355,1356],{},"role",[246,1358,1359],{},"条件",[246,1361,1362,277,1365,277,1368],{},[195,1363,1364],{},"first_frame",[195,1366,1367],{},"last_frame",[195,1369,1370],{},"reference_image",[191,1372,1373],{},"图片要求：格式 jpeg\u002Fpng\u002Fwebp\u002Fbmp\u002Ftiff\u002Fgif；宽高比 (0.4, 2.5)；宽高 300–6000px；单张 ≤30MB。",[443,1375,1377],{"id":1376},"视频video_url","视频（video_url）",[219,1379,1380,1390],{},[222,1381,1382],{},[225,1383,1384,1386,1388],{},[228,1385,1268],{},[228,1387,1271],{},[228,1389,239],{},[241,1391,1392,1404,1416],{},[225,1393,1394,1398,1400],{},[246,1395,1396],{},[195,1397,1282],{},[246,1399,255],{},[246,1401,1402],{},[195,1403,283],{},[225,1405,1406,1411,1413],{},[246,1407,1408],{},[195,1409,1410],{},"video_url.url",[246,1412,255],{},[246,1414,1415],{},"视频 URL 或素材 ID",[225,1417,1418,1422,1424],{},[246,1419,1420],{},[195,1421,1356],{},[246,1423,1359],{},[246,1425,1426,1427],{},"当前仅支持 ",[195,1428,1429],{},"reference_video",[191,1431,1432],{},"视频要求：格式 mp4\u002Fmov；分辨率 480p\u002F720p\u002F1080p；时长 ≤15s，最多 3 个参考视频，总时长 ≤15s；单个 ≤50MB；帧率 4–60fps。",[443,1434,1436],{"id":1435},"音频audio_url","音频（audio_url）",[191,1438,1439],{},"不可单独输入音频。",[219,1441,1442,1452],{},[222,1443,1444],{},[225,1445,1446,1448,1450],{},[228,1447,1268],{},[228,1449,1271],{},[228,1451,239],{},[241,1453,1454,1466,1478],{},[225,1455,1456,1460,1462],{},[246,1457,1458],{},[195,1459,1282],{},[246,1461,255],{},[246,1463,1464],{},[195,1465,286],{},[225,1467,1468,1473,1475],{},[246,1469,1470],{},[195,1471,1472],{},"audio_url.url",[246,1474,255],{},[246,1476,1477],{},"音频 URL、Base64 编码或素材 ID",[225,1479,1480,1484,1486],{},[246,1481,1482],{},[195,1483,1356],{},[246,1485,1359],{},[246,1487,1426,1488],{},[195,1489,1490],{},"reference_audio",[191,1492,1493],{},"音频要求：格式 wav\u002Fmp3；时长 ≤15s，最多 3 段，总时长 ≤15s；单个 ≤15MB。",[215,1495,1496],{"id":1496},"响应",[191,1498,1499],{},"创建任务返回任务 ID：",[461,1501,1505],{"className":1502,"code":1503,"language":1504,"meta":466,"style":466},"language-json shiki shiki-themes github-light github-dark","{\n  \"id\": \"VTK-01JXXXXXXXXXXXXXX\",\n  \"model\": \"\u003CMODEL_CALL_NAME>\",\n  \"status\": \"queued\",\n  \"created_at\": \"2026-03-31T12:00:00Z\"\n}\n","json",[195,1506,1507,1512,1526,1538,1550,1560],{"__ignoreMap":466},[470,1508,1509],{"class":472,"line":473},[470,1510,1511],{"class":503},"{\n",[470,1513,1514,1517,1520,1523],{"class":472,"line":494},[470,1515,1516],{"class":480},"  \"id\"",[470,1518,1519],{"class":503},": ",[470,1521,1522],{"class":484},"\"VTK-01JXXXXXXXXXXXXXX\"",[470,1524,1525],{"class":503},",\n",[470,1527,1528,1531,1533,1536],{"class":472,"line":512},[470,1529,1530],{"class":480},"  \"model\"",[470,1532,1519],{"class":503},[470,1534,1535],{"class":484},"\"\u003CMODEL_CALL_NAME>\"",[470,1537,1525],{"class":503},[470,1539,1540,1543,1545,1548],{"class":472,"line":522},[470,1541,1542],{"class":480},"  \"status\"",[470,1544,1519],{"class":503},[470,1546,1547],{"class":484},"\"queued\"",[470,1549,1525],{"class":503},[470,1551,1552,1555,1557],{"class":472,"line":531},[470,1553,1554],{"class":480},"  \"created_at\"",[470,1556,1519],{"class":503},[470,1558,1559],{"class":484},"\"2026-03-31T12:00:00Z\"\n",[470,1561,1562],{"class":472,"line":537},[470,1563,1010],{"class":503},[215,1565,1566],{"id":1566},"查询任务",[461,1568,1572],{"className":1569,"code":1571,"language":276},[1570],"language-text","GET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id\n",[195,1573,1571],{"__ignoreMap":466},[447,1575],{"method":1576,"path":1577},"GET","\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{id}",[454,1579,1580,1607,1667,1726],{},[457,1581,1582],{"label":459},[461,1583,1585],{"className":463,"code":1584,"language":465,"meta":466,"style":466},"curl https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002FVTK-01JXXXXXXXXXXXXXX \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\"\n",[195,1586,1587,1596],{"__ignoreMap":466},[470,1588,1589,1591,1594],{"class":472,"line":473},[470,1590,477],{"class":476},[470,1592,1593],{"class":484}," https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002FVTK-01JXXXXXXXXXXXXXX",[470,1595,491],{"class":480},[470,1597,1598,1600,1602,1604],{"class":472,"line":494},[470,1599,497],{"class":480},[470,1601,500],{"class":484},[470,1603,504],{"class":503},[470,1605,1606],{"class":484},"\"\n",[457,1608,1609],{"label":573},[461,1610,1612],{"className":576,"code":1611,"language":578,"meta":466,"style":466},"# pip install requests\nimport os\nimport requests\n\ntask_id = \"VTK-01JXXXXXXXXXXXXXX\"\n\nresp = requests.get(\n    f\"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{task_id}\",\n    headers={\"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\"},\n)\nresp.raise_for_status()\nprint(resp.json())  # {\"id\": \"...\", \"status\": \"succeed\", \"result\": {...}}\n",[195,1613,1614,1618,1622,1626,1630,1635,1639,1644,1649,1654,1658,1662],{"__ignoreMap":466},[470,1615,1616],{"class":472,"line":473},[470,1617,585],{},[470,1619,1620],{"class":472,"line":494},[470,1621,590],{},[470,1623,1624],{"class":472,"line":512},[470,1625,595],{},[470,1627,1628],{"class":472,"line":522},[470,1629,601],{"emptyLinePlaceholder":600},[470,1631,1632],{"class":472,"line":531},[470,1633,1634],{},"task_id = \"VTK-01JXXXXXXXXXXXXXX\"\n",[470,1636,1637],{"class":472,"line":537},[470,1638,601],{"emptyLinePlaceholder":600},[470,1640,1641],{"class":472,"line":543},[470,1642,1643],{},"resp = requests.get(\n",[470,1645,1646],{"class":472,"line":549},[470,1647,1648],{},"    f\"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{task_id}\",\n",[470,1650,1651],{"class":472,"line":555},[470,1652,1653],{},"    headers={\"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\"},\n",[470,1655,1656],{"class":472,"line":561},[470,1657,683],{},[470,1659,1660],{"class":472,"line":567},[470,1661,689],{},[470,1663,1664],{"class":472,"line":639},[470,1665,1666],{},"print(resp.json())  # {\"id\": \"...\", \"status\": \"succeed\", \"result\": {...}}\n",[457,1668,1669],{"label":698},[461,1670,1672],{"className":701,"code":1671,"language":703,"meta":466,"style":466},"\u002F\u002F Node 18+（内置 fetch）\nconst taskId = \"VTK-01JXXXXXXXXXXXXXX\";\n\nconst resp = await fetch(\n  `https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F${taskId}`,\n  {\n    headers: { Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}` },\n  },\n);\n\nconst task = await resp.json();\nconsole.log(task); \u002F\u002F { id: \"...\", status: \"succeed\", result: {...} }\n",[195,1673,1674,1678,1683,1687,1691,1696,1700,1705,1709,1713,1717,1721],{"__ignoreMap":466},[470,1675,1676],{"class":472,"line":473},[470,1677,710],{},[470,1679,1680],{"class":472,"line":494},[470,1681,1682],{},"const taskId = \"VTK-01JXXXXXXXXXXXXXX\";\n",[470,1684,1685],{"class":472,"line":512},[470,1686,601],{"emptyLinePlaceholder":600},[470,1688,1689],{"class":472,"line":522},[470,1690,715],{},[470,1692,1693],{"class":472,"line":531},[470,1694,1695],{},"  `https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F${taskId}`,\n",[470,1697,1698],{"class":472,"line":537},[470,1699,725],{},[470,1701,1702],{"class":472,"line":543},[470,1703,1704],{},"    headers: { Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}` },\n",[470,1706,1707],{"class":472,"line":549},[470,1708,794],{},[470,1710,1711],{"class":472,"line":555},[470,1712,799],{},[470,1714,1715],{"class":472,"line":561},[470,1716,601],{"emptyLinePlaceholder":600},[470,1718,1719],{"class":472,"line":567},[470,1720,808],{},[470,1722,1723],{"class":472,"line":639},[470,1724,1725],{},"console.log(task); \u002F\u002F { id: \"...\", status: \"succeed\", result: {...} }\n",[457,1727,1728],{"label":817},[461,1729,1731],{"className":820,"code":1730,"language":822,"meta":466,"style":466},"\u002F\u002F 仅依赖标准库\npackage main\n\nimport (\n    \"fmt\"\n    \"io\"\n    \"net\u002Fhttp\"\n    \"os\"\n)\n\nfunc main() {\n    taskID := \"VTK-01JXXXXXXXXXXXXXX\"\n\n    req, err := http.NewRequest(\"GET\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F\"+taskID, nil)\n    if err != nil {\n        panic(err)\n    }\n    req.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n\n    resp, err := http.DefaultClient.Do(req)\n    if err != nil {\n        panic(err)\n    }\n    defer resp.Body.Close()\n\n    body, _ := io.ReadAll(resp.Body)\n    fmt.Println(string(body))\n}\n",[195,1732,1733,1737,1741,1745,1749,1753,1757,1761,1765,1769,1773,1777,1782,1786,1791,1795,1799,1803,1807,1811,1815,1819,1823,1827,1831,1835,1839,1843],{"__ignoreMap":466},[470,1734,1735],{"class":472,"line":473},[470,1736,829],{},[470,1738,1739],{"class":472,"line":494},[470,1740,834],{},[470,1742,1743],{"class":472,"line":512},[470,1744,601],{"emptyLinePlaceholder":600},[470,1746,1747],{"class":472,"line":522},[470,1748,843],{},[470,1750,1751],{"class":472,"line":531},[470,1752,853],{},[470,1754,1755],{"class":472,"line":537},[470,1756,858],{},[470,1758,1759],{"class":472,"line":543},[470,1760,863],{},[470,1762,1763],{"class":472,"line":549},[470,1764,868],{},[470,1766,1767],{"class":472,"line":555},[470,1768,683],{},[470,1770,1771],{"class":472,"line":561},[470,1772,601],{"emptyLinePlaceholder":600},[470,1774,1775],{"class":472,"line":567},[470,1776,881],{},[470,1778,1779],{"class":472,"line":639},[470,1780,1781],{},"    taskID := \"VTK-01JXXXXXXXXXXXXXX\"\n",[470,1783,1784],{"class":472,"line":645},[470,1785,601],{"emptyLinePlaceholder":600},[470,1787,1788],{"class":472,"line":651},[470,1789,1790],{},"    req, err := http.NewRequest(\"GET\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F\"+taskID, nil)\n",[470,1792,1793],{"class":472,"line":657},[470,1794,931],{},[470,1796,1797],{"class":472,"line":663},[470,1798,937],{},[470,1800,1801],{"class":472,"line":669},[470,1802,943],{},[470,1804,1805],{"class":472,"line":675},[470,1806,949],{},[470,1808,1809],{"class":472,"line":680},[470,1810,601],{"emptyLinePlaceholder":600},[470,1812,1813],{"class":472,"line":686},[470,1814,966],{},[470,1816,1817],{"class":472,"line":692},[470,1818,931],{},[470,1820,1821],{"class":472,"line":811},[470,1822,937],{},[470,1824,1825],{"class":472,"line":928},[470,1826,943],{},[470,1828,1829],{"class":472,"line":934},[470,1830,987],{},[470,1832,1833],{"class":472,"line":940},[470,1834,601],{"emptyLinePlaceholder":600},[470,1836,1837],{"class":472,"line":946},[470,1838,998],{},[470,1840,1841],{"class":472,"line":952},[470,1842,1004],{},[470,1844,1845],{"class":472,"line":958},[470,1846,1010],{},[191,1848,1849],{},"成功响应：",[461,1851,1853],{"className":1502,"code":1852,"language":1504,"meta":466,"style":466},"{\n  \"id\": \"VTK-01JXXXXXXXXXXXXXX\",\n  \"status\": \"succeed\",\n  \"result\": {\"video_url\": \"https:\u002F\u002F...\"}\n}\n",[195,1854,1855,1859,1869,1880,1898],{"__ignoreMap":466},[470,1856,1857],{"class":472,"line":473},[470,1858,1511],{"class":503},[470,1860,1861,1863,1865,1867],{"class":472,"line":494},[470,1862,1516],{"class":480},[470,1864,1519],{"class":503},[470,1866,1522],{"class":484},[470,1868,1525],{"class":503},[470,1870,1871,1873,1875,1878],{"class":472,"line":512},[470,1872,1542],{"class":480},[470,1874,1519],{"class":503},[470,1876,1877],{"class":484},"\"succeed\"",[470,1879,1525],{"class":503},[470,1881,1882,1885,1888,1891,1893,1896],{"class":472,"line":522},[470,1883,1884],{"class":480},"  \"result\"",[470,1886,1887],{"class":503},": {",[470,1889,1890],{"class":480},"\"video_url\"",[470,1892,1519],{"class":503},[470,1894,1895],{"class":484},"\"https:\u002F\u002F...\"",[470,1897,1010],{"class":503},[470,1899,1900],{"class":472,"line":531},[470,1901,1010],{"class":503},[191,1903,1904,1905,1908,1909,1912,1913,305,1916,305,1919,305,1922,441],{},"任务状态：",[195,1906,1907],{},"queued","（排队）→ ",[195,1910,1911],{},"running","（生成中）→ ",[195,1914,1915],{},"succeed",[195,1917,1918],{},"failed",[195,1920,1921],{},"cancelled",[195,1923,1924],{},"expired",[215,1926,1927],{"id":1927},"任务列表",[461,1929,1932],{"className":1930,"code":1931,"language":276},[1570],"GET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\n",[195,1933,1931],{"__ignoreMap":466},[447,1935],{"method":1576,"path":440},[215,1937,1938],{"id":1938},"取消任务",[461,1940,1943],{"className":1941,"code":1942,"language":276},[1570],"DELETE \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id\n",[195,1944,1942],{"__ignoreMap":466},[447,1946],{"method":1947,"path":1577},"DELETE",[191,1949,1950,1951,1953],{},"仅 ",[195,1952,1907],{}," 状态可取消。",[215,1955,1956],{"id":1956},"生成样例",[191,1958,1959],{},"多模态参考生视频（背景图 + 妆造三视图 + 面部特写图 + 提示词）：",[191,1961,1962],{},[1963,1964],"img",{"alt":466,"src":1965},"https:\u002F\u002Fsilvamux-docs.tingyutech.com\u002Fcases\u002F1a.webp",[191,1967,1968],{},"提示词：",[200,1970,1971],{},[191,1972,1973],{},"背景参考图片 1，月白虚影闪过，公子（妆造参考图片 2；人物形象严格参考图片 3）旋身开合折扇，鎏金扇刃弹出，墨竹扇面翻飞，慢鼓重响 1 声；特写：折扇刃格挡反派长刀，扇骨与刀身相击，公子唇角勾轻佻笑意，眼神却冷冽，指腹轻转扇柄。慢镜：公子侧身贴地滑步，折扇刃贴反派腿侧划过，带起一道浅痕，锦袍下摆扫过地面，玉簪轻晃。快切：公子旋身抬手，折扇刃飞射而出，擦过反派脖颈，钉入身后木柱，反派僵立不敢动。反转：身后突然传来掌风，公子旋身接掌，指尖相触时借力后跳，折扇刃从木柱飞回手中，眼神警惕。慢镜高光：公子折扇半开，扇刃抵唇侧，抬眸望向身后，碎发被风吹起，眉梢微扬，带一丝桀骜。拉镜：公子立于庭院石台上，折扇轻摇，镜头拉远，庭院四角同时浮现戴面具的黑影（持弯刀，呈合围之势）。定格：公子折扇合起一半，扇刃露鎏金锋芒，抬步向前，画面压暗，只留他的侧影和扇刃光，音效骤停。音效：折扇开合脆响 + 刃风切割声 + 慢鼓卡点（偏沉稳）。",[191,1975,1976],{},[1977,1978],"video",{"style":1979,"src":1980,"controls":600},"max-width: 480px; margin: 0 auto;","https:\u002F\u002Fsilvamux-docs.tingyutech.com\u002Fcases\u002F1a-h265.mp4",[215,1982,1983],{"id":1983},"可用模型",[191,1985,1986,1987,1990],{},"当前可在模型广场发现的 3D 样例模型：",[195,1988,1989],{},"doubao-seed3d-2.0","。视频模型暂无公开可发现的调用名。",[200,1992,1993],{},[191,1994,1995,1996,2001],{},"完整模型清单见",[1997,1998,2000],"a",{"href":1999},"\u002Fzh-cn\u002Fmodels","模型广场","。部分模型需要权限标志，由管理员配置。",[215,2003,2004],{"id":2004},"计费",[191,2006,2007,2008,2010],{},"视频生成按模型与视频参数（分辨率、时长、是否配音）计费，当前单价请在",[1997,2009,2000],{"href":1999},"打开对应模型详情查看。",[215,2012,2013],{"id":2013},"与火山官方接口的差异",[191,2015,2016],{},"SilvaMux 的 Seedance 接口与火山官方接口字段相似（同款模型），但：",[2018,2019,2020,2031,2040,2045],"ul",{},[2021,2022,2023,2026,2027,2030],"li",{},[408,2024,2025],{},"鉴权","：用平台 API Key（",[195,2028,2029],{},"sk_live_","），不是火山 AK\u002FSK。",[2021,2032,2033,2036,2037,2039],{},[408,2034,2035],{},"Base URL","：",[195,2038,432],{},"（平台域名），不是火山方舟域名。",[2021,2041,2042,2044],{},[408,2043,197],{},"：使用模型广场或模型列表展示的真实调用名，不是火山 endpoint ID。",[2021,2046,2047,2050,2051,2054],{},[408,2048,2049],{},"任务查询","：通过轮询 ",[195,2052,2053],{},"GET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id"," 查询任务状态。",[2056,2057,2058],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}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);}",{"title":466,"searchDepth":494,"depth":494,"links":2060},[2061,2064,2065,2069,2070,2076,2077,2078,2079,2080,2081,2082,2083],{"id":217,"depth":494,"text":217,"children":2062},[2063],{"id":445,"depth":512,"text":445},{"id":452,"depth":494,"text":452},{"id":1013,"depth":494,"text":1013,"children":2066},[2067,2068],{"id":1019,"depth":512,"text":1019},{"id":1093,"depth":512,"text":1093},{"id":1169,"depth":494,"text":1169},{"id":1254,"depth":494,"text":1255,"children":2071},[2072,2073,2074,2075],{"id":1258,"depth":512,"text":1259},{"id":1302,"depth":512,"text":1303},{"id":1376,"depth":512,"text":1377},{"id":1435,"depth":512,"text":1436},{"id":1496,"depth":494,"text":1496},{"id":1566,"depth":494,"text":1566},{"id":1927,"depth":494,"text":1927},{"id":1938,"depth":494,"text":1938},{"id":1956,"depth":494,"text":1956},{"id":1983,"depth":494,"text":1983},{"id":2004,"depth":494,"text":2004},{"id":2013,"depth":494,"text":2013},"创建、查询和管理视频或 3D 异步生成任务。","md",{},"\u002Fmodels\u002Fvideo\u002Foverview","---\ntitle: 视频生成 API\ndescription: 创建、查询和管理视频或 3D 异步生成任务。\nnavigation: false\n---\n\n# 视频生成 API\n\n视频生成采用异步任务模式：创建任务 → 轮询状态 → 取结果。视频与 3D 共用同一个任务接口，按 `model` 字段分流。\n\n> 当前模型列表和模型广场暂无公开可发现的视频模型调用名。以下视频请求仅用于展示结构，不能直接执行；`\u003CMODEL_CALL_NAME>` 必须替换为模型广场后续发布的真实调用名。\n\n> 视频生成走自有接口 + API Key，不是火山 AK\u002FSK 签名。火山兼容接口仅用于素材管理。\n\n## 关键参数\n\n| 参数 | 类型 | 必填 | 说明 |\n| --- | --- | --- | --- |\n| `model` | string | 是 | 模型调用名，必须从模型广场或模型列表获取 |\n| `content` | array | 是 | 输入内容，支持 `text`、`image_url`、`video_url`、`audio_url` |\n| `resolution` | string | 否 | 模型透传字段；常见值为 `480p` \u002F `720p` \u002F `1080p`，以模型详情为准 |\n| `ratio` | string | 否 | 模型透传字段；常见值为 `16:9` \u002F `9:16` \u002F `4:3` \u002F `3:4` \u002F `1:1` \u002F `21:9` |\n| `duration` | integer | 否 | 模型透传字段；时长范围以模型详情为准 |\n| `frames` | integer | 否 | 模型透传字段；是否可与 `duration` 互换以模型详情为准 |\n| `generate_audio` | boolean | 否 | 模型透传字段；是否支持配音以模型详情为准 |\n| `tools` | array | 否 | 模型透传字段；支持的工具以模型详情为准 |\n\n**创建任务认证：** `Authorization: Bearer \u003CAPI_KEY>` 或 `x-api-key: \u003CAPI_KEY>`\n\n**查询和取消任务认证：** `Authorization: Bearer \u003CAPI_KEY>`\n\n> `https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3` 即接入域名下的 `\u002Fapi\u002Fv3`，对应路由 `\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks`。\n\n### 创建任务\n\n::api-endpoint{path=\"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\" method=\"POST\"}\n::\n\n## 文生视频\n\n::code-tabs\n:::code-tab{label=\"cURL\"}\n```bash\ncurl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [{\"type\": \"text\", \"text\": \"一只金毛犬在海滩上奔跑\"}],\n    \"resolution\": \"720p\",\n    \"ratio\": \"16:9\",\n    \"duration\": 5,\n    \"generate_audio\": true\n  }'\n```\n:::\n:::code-tab{label=\"Python\"}\n```python\n# pip install requests\nimport os\nimport requests\n\nresp = requests.post(\n    \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n    headers={\n        \"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\",\n        \"Content-Type\": \"application\u002Fjson\",\n    },\n    json={\n        \"model\": \"\u003CMODEL_CALL_NAME>\",\n        \"content\": [{\"type\": \"text\", \"text\": \"一只金毛犬在海滩上奔跑\"}],\n        \"resolution\": \"720p\",\n        \"ratio\": \"16:9\",\n        \"duration\": 5,\n        \"generate_audio\": True,\n    },\n)\nresp.raise_for_status()\nprint(resp.json())  # {\"id\": \"VTK-...\", \"status\": \"queued\", ...}\n```\n:::\n:::code-tab{label=\"JavaScript\"}\n```javascript\n\u002F\u002F Node 18+（内置 fetch）\nconst resp = await fetch(\n  \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\",\n  {\n    method: \"POST\",\n    headers: {\n      Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}`,\n      \"Content-Type\": \"application\u002Fjson\",\n    },\n    body: JSON.stringify({\n      model: \"\u003CMODEL_CALL_NAME>\",\n      content: [{ type: \"text\", text: \"一只金毛犬在海滩上奔跑\" }],\n      resolution: \"720p\",\n      ratio: \"16:9\",\n      duration: 5,\n      generate_audio: true,\n    }),\n  },\n);\n\nconst task = await resp.json();\nconsole.log(task); \u002F\u002F { id: \"VTK-...\", status: \"queued\", ... }\n```\n:::\n:::code-tab{label=\"Go\"}\n```go\n\u002F\u002F 仅依赖标准库\npackage main\n\nimport (\n\t\"bytes\"\n\t\"fmt\"\n\t\"io\"\n\t\"net\u002Fhttp\"\n\t\"os\"\n)\n\nfunc main() {\n\tpayload := []byte(`{\n\t\t\"model\": \"\u003CMODEL_CALL_NAME>\",\n\t\t\"content\": [{\"type\": \"text\", \"text\": \"一只金毛犬在海滩上奔跑\"}],\n\t\t\"resolution\": \"720p\",\n\t\t\"ratio\": \"16:9\",\n\t\t\"duration\": 5,\n\t\t\"generate_audio\": true\n\t}`)\n\n\treq, err := http.NewRequest(\"POST\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\", bytes.NewReader(payload))\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treq.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n\treq.Header.Set(\"Content-Type\", \"application\u002Fjson\")\n\n\tresp, err := http.DefaultClient.Do(req)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tdefer resp.Body.Close()\n\n\tbody, _ := io.ReadAll(resp.Body)\n\tfmt.Println(string(body))\n}\n```\n:::\n::\n\n## 图生视频\n\n图生视频分首帧、首尾帧两种场景（互斥）。\n\n### 首帧\n\n```bash\ncurl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n      {\"type\": \"text\", \"text\": \"镜头缓缓拉远\"}\n    ]\n  }'\n```\n\n### 首尾帧\n\n```bash\ncurl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Ffirst.jpg\"}, \"role\": \"first_frame\"},\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"https:\u002F\u002Fexample.com\u002Flast.jpg\"}, \"role\": \"last_frame\"},\n      {\"type\": \"text\", \"text\": \"镜头从白天过渡到夜晚\"}\n    ]\n  }'\n```\n\n## 多模态参考生视频\n\n参考图片（1~9）+ 参考视频（0~3）+ 参考音频（0~3）+ 文本提示词（可选）生成视频，支持全新生成、编辑、延长。\n\n```bash\ncurl -X POST https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"\u003CMODEL_CALL_NAME>\",\n    \"content\": [\n      {\"type\": \"image_url\", \"image_url\": {\"url\": \"asset:\u002F\u002FAST-XXXX\"}, \"role\": \"reference_image\"},\n      {\"type\": \"text\", \"text\": \"让画面中的角色跳舞\"}\n    ]\n  }'\n```\n\n> 不可单独输入音频，应至少包含 1 个参考视频或图片。三种图生视频场景（首帧\u002F首尾帧\u002F多模态参考）互斥。\n\n## content 字段\n\n### 文本（text）\n\n| 字段 | 必选 | 说明 |\n| --- | --- | --- |\n| `type` | 是 | `text` |\n| `text` | 是 | 提示词，支持中英文。建议中文 ≤500 字，英文 ≤1000 词 |\n\n### 图片（image_url）\n\n| 字段 | 必选 | 说明 |\n| --- | --- | --- |\n| `type` | 是 | `image_url` |\n| `image_url.url` | 是 | 图片 URL、Base64 编码（`data:image\u002Fpng;base64,...`）或素材 ID（`asset:\u002F\u002F\u003CASSET_ID>`） |\n| `role` | 条件 | `first_frame`、`last_frame`、`reference_image` |\n\n图片要求：格式 jpeg\u002Fpng\u002Fwebp\u002Fbmp\u002Ftiff\u002Fgif；宽高比 (0.4, 2.5)；宽高 300–6000px；单张 ≤30MB。\n\n### 视频（video_url）\n\n| 字段 | 必选 | 说明 |\n| --- | --- | --- |\n| `type` | 是 | `video_url` |\n| `video_url.url` | 是 | 视频 URL 或素材 ID |\n| `role` | 条件 | 当前仅支持 `reference_video` |\n\n视频要求：格式 mp4\u002Fmov；分辨率 480p\u002F720p\u002F1080p；时长 ≤15s，最多 3 个参考视频，总时长 ≤15s；单个 ≤50MB；帧率 4–60fps。\n\n### 音频（audio_url）\n\n不可单独输入音频。\n\n| 字段 | 必选 | 说明 |\n| --- | --- | --- |\n| `type` | 是 | `audio_url` |\n| `audio_url.url` | 是 | 音频 URL、Base64 编码或素材 ID |\n| `role` | 条件 | 当前仅支持 `reference_audio` |\n\n音频要求：格式 wav\u002Fmp3；时长 ≤15s，最多 3 段，总时长 ≤15s；单个 ≤15MB。\n\n## 响应\n\n创建任务返回任务 ID：\n\n```json\n{\n  \"id\": \"VTK-01JXXXXXXXXXXXXXX\",\n  \"model\": \"\u003CMODEL_CALL_NAME>\",\n  \"status\": \"queued\",\n  \"created_at\": \"2026-03-31T12:00:00Z\"\n}\n```\n\n## 查询任务\n\n```\nGET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id\n```\n\n::api-endpoint{path=\"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{id}\" method=\"GET\"}\n::\n\n::code-tabs\n:::code-tab{label=\"cURL\"}\n```bash\ncurl https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002FVTK-01JXXXXXXXXXXXXXX \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\"\n```\n:::\n:::code-tab{label=\"Python\"}\n```python\n# pip install requests\nimport os\nimport requests\n\ntask_id = \"VTK-01JXXXXXXXXXXXXXX\"\n\nresp = requests.get(\n    f\"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{task_id}\",\n    headers={\"Authorization\": f\"Bearer {os.environ['SILVAMUX_API_KEY']}\"},\n)\nresp.raise_for_status()\nprint(resp.json())  # {\"id\": \"...\", \"status\": \"succeed\", \"result\": {...}}\n```\n:::\n:::code-tab{label=\"JavaScript\"}\n```javascript\n\u002F\u002F Node 18+（内置 fetch）\nconst taskId = \"VTK-01JXXXXXXXXXXXXXX\";\n\nconst resp = await fetch(\n  `https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F${taskId}`,\n  {\n    headers: { Authorization: `Bearer ${process.env.SILVAMUX_API_KEY}` },\n  },\n);\n\nconst task = await resp.json();\nconsole.log(task); \u002F\u002F { id: \"...\", status: \"succeed\", result: {...} }\n```\n:::\n:::code-tab{label=\"Go\"}\n```go\n\u002F\u002F 仅依赖标准库\npackage main\n\nimport (\n\t\"fmt\"\n\t\"io\"\n\t\"net\u002Fhttp\"\n\t\"os\"\n)\n\nfunc main() {\n\ttaskID := \"VTK-01JXXXXXXXXXXXXXX\"\n\n\treq, err := http.NewRequest(\"GET\", \"https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F\"+taskID, nil)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\treq.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n\n\tresp, err := http.DefaultClient.Do(req)\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tdefer resp.Body.Close()\n\n\tbody, _ := io.ReadAll(resp.Body)\n\tfmt.Println(string(body))\n}\n```\n:::\n::\n\n成功响应：\n\n```json\n{\n  \"id\": \"VTK-01JXXXXXXXXXXXXXX\",\n  \"status\": \"succeed\",\n  \"result\": {\"video_url\": \"https:\u002F\u002F...\"}\n}\n```\n\n任务状态：`queued`（排队）→ `running`（生成中）→ `succeed` \u002F `failed` \u002F `cancelled` \u002F `expired`。\n\n## 任务列表\n\n```\nGET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\n```\n\n::api-endpoint{path=\"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\" method=\"GET\"}\n::\n\n## 取消任务\n\n```\nDELETE \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id\n```\n\n::api-endpoint{path=\"\u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F{id}\" method=\"DELETE\"}\n::\n\n仅 `queued` 状态可取消。\n\n## 生成样例\n\n多模态参考生视频（背景图 + 妆造三视图 + 面部特写图 + 提示词）：\n\n![](https:\u002F\u002Fsilvamux-docs.tingyutech.com\u002Fcases\u002F1a.webp)\n\n提示词：\n\n> 背景参考图片 1，月白虚影闪过，公子（妆造参考图片 2；人物形象严格参考图片 3）旋身开合折扇，鎏金扇刃弹出，墨竹扇面翻飞，慢鼓重响 1 声；特写：折扇刃格挡反派长刀，扇骨与刀身相击，公子唇角勾轻佻笑意，眼神却冷冽，指腹轻转扇柄。慢镜：公子侧身贴地滑步，折扇刃贴反派腿侧划过，带起一道浅痕，锦袍下摆扫过地面，玉簪轻晃。快切：公子旋身抬手，折扇刃飞射而出，擦过反派脖颈，钉入身后木柱，反派僵立不敢动。反转：身后突然传来掌风，公子旋身接掌，指尖相触时借力后跳，折扇刃从木柱飞回手中，眼神警惕。慢镜高光：公子折扇半开，扇刃抵唇侧，抬眸望向身后，碎发被风吹起，眉梢微扬，带一丝桀骜。拉镜：公子立于庭院石台上，折扇轻摇，镜头拉远，庭院四角同时浮现戴面具的黑影（持弯刀，呈合围之势）。定格：公子折扇合起一半，扇刃露鎏金锋芒，抬步向前，画面压暗，只留他的侧影和扇刃光，音效骤停。音效：折扇开合脆响 + 刃风切割声 + 慢鼓卡点（偏沉稳）。\n\n\u003Cvideo style=\"max-width: 480px; margin: 0 auto;\" src=\"https:\u002F\u002Fsilvamux-docs.tingyutech.com\u002Fcases\u002F1a-h265.mp4\" controls>\u003C\u002Fvideo>\n\n## 可用模型\n\n当前可在模型广场发现的 3D 样例模型：`doubao-seed3d-2.0`。视频模型暂无公开可发现的调用名。\n\n> 完整模型清单见[模型广场](\u002Fzh-cn\u002Fmodels)。部分模型需要权限标志，由管理员配置。\n\n## 计费\n\n视频生成按模型与视频参数（分辨率、时长、是否配音）计费，当前单价请在[模型广场](\u002Fzh-cn\u002Fmodels)打开对应模型详情查看。\n\n## 与火山官方接口的差异\n\nSilvaMux 的 Seedance 接口与火山官方接口字段相似（同款模型），但：\n\n- **鉴权**：用平台 API Key（`sk_live_`），不是火山 AK\u002FSK。\n- **Base URL**：`https:\u002F\u002Fwww.silvamux.com\u002Fapi\u002Fv3`（平台域名），不是火山方舟域名。\n- **model**：使用模型广场或模型列表展示的真实调用名，不是火山 endpoint ID。\n- **任务查询**：通过轮询 `GET \u002Fapi\u002Fv3\u002Fcontents\u002Fgenerations\u002Ftasks\u002F:id` 查询任务状态。\n",[],{"title":182,"description":2084},"4.models\u002F3.video\u002F1.overview","jU8F88QhS-iAIhVvWh6ToIV-ka2EHOmun-WfnE5b0ks",{"found":600,"operationId":2094,"summary":445,"description":466,"method":449,"path":440,"publiclyDiscoverable":600,"security":2095,"parameters":2099,"requestBody":2100,"responses":2111},"createContentGenerationTask",{"schemes":2096,"optional":25},[2097,2098],"BearerAuth","ApiKeyAuth",[],{"present":600,"required":600,"description":466,"contentType":2101,"type":2102,"fields":2103,"variants":2110},"application\u002Fjson","ContentTaskRequest",[2104,2107,2109],{"name":2105,"type":2106,"required":25,"description":466},"callback_url","string (uri)",{"name":265,"type":2108,"required":25,"description":466},"array\u003CFreeFormObject>",{"name":197,"type":252,"required":600,"description":466},[],[2112,2136],{"status":2113,"description":2114,"contentType":2101,"type":2115,"fields":2116},"200","任务创建成功。","ContentTask",[2117,2119,2123,2125,2127,2130,2131,2134],{"name":265,"type":2118,"required":25,"description":466},"FreeFormObject",{"name":2120,"type":2121,"required":25,"description":2122},"created_at","string (date-time) | integer (int64)","API 版本 2026-01-01 返回 RFC3339；2026-06-01 返回 Unix 秒。",{"name":2124,"type":2118,"required":25,"description":466},"error",{"name":2126,"type":252,"required":600,"description":466},"id",{"name":2128,"type":2129,"required":25,"description":466},"kind","string (video | 3d)",{"name":197,"type":252,"required":25,"description":466},{"name":2132,"type":2133,"required":600,"description":466},"status","ContentTaskStatus",{"name":2135,"type":2121,"required":25,"description":2122},"updated_at",{"status":2137,"description":2138,"contentType":2101,"type":2139,"fields":2140},"default","Volcengine 兼容错误。","VolcengineError",[2141],{"name":2124,"type":2118,"required":25,"description":466},{"found":600,"operationId":2143,"summary":1566,"description":466,"method":1576,"path":1577,"publiclyDiscoverable":600,"security":2144,"parameters":2146,"requestBody":2149,"responses":2153},"getContentGenerationTask",{"schemes":2145,"optional":25},[2097],[2147],{"name":2126,"type":2148,"required":600,"description":466},"string · path",{"present":25,"required":25,"description":466,"contentType":466,"type":2150,"fields":2151,"variants":2152},"any",[],[],[2154,2165],{"status":2113,"description":2155,"contentType":2101,"type":2115,"fields":2156},"任务详情。",[2157,2158,2159,2160,2161,2162,2163,2164],{"name":265,"type":2118,"required":25,"description":466},{"name":2120,"type":2121,"required":25,"description":2122},{"name":2124,"type":2118,"required":25,"description":466},{"name":2126,"type":252,"required":600,"description":466},{"name":2128,"type":2129,"required":25,"description":466},{"name":197,"type":252,"required":25,"description":466},{"name":2132,"type":2133,"required":600,"description":466},{"name":2135,"type":2121,"required":25,"description":2122},{"status":2137,"description":2166,"contentType":2101,"type":2167,"fields":2168},"OpenAI 兼容错误。","OpenAIError",[2169,2171,2174,2176],{"name":2124,"type":2170,"required":600,"description":466},"object",{"name":2172,"type":2173,"required":25,"description":466},"error.code","string | integer",{"name":2175,"type":252,"required":600,"description":466},"error.message",{"name":2177,"type":252,"required":25,"description":466},"error.type",{"found":600,"operationId":2179,"summary":1927,"description":466,"method":1576,"path":440,"publiclyDiscoverable":600,"security":2180,"parameters":2182,"requestBody":2200,"responses":2203},"listContentGenerationTasks",{"schemes":2181,"optional":25},[2097],[2183,2186,2188,2191,2194,2197],{"name":2184,"type":2185,"required":25,"description":466},"page_num","integer · query",{"name":2187,"type":2185,"required":25,"description":466},"page_size",{"name":2189,"type":2190,"required":25,"description":466},"filter.status","ContentTaskStatus · query",{"name":2192,"type":2193,"required":25,"description":466},"filter.model","string · query",{"name":2195,"type":2196,"required":25,"description":466},"filter.kind","string (video | 3d) · query",{"name":2198,"type":2199,"required":25,"description":466},"filter.task_ids","array\u003Cstring> · query",{"present":25,"required":25,"description":466,"contentType":466,"type":2150,"fields":2201,"variants":2202},[],[],[2204,2229],{"status":2113,"description":2205,"contentType":2101,"type":2170,"fields":2206},"任务列表。",[2207,2210,2212,2214,2216,2218,2220,2222,2224,2226],{"name":2208,"type":2209,"required":600,"description":466},"items","array\u003CContentTask>",{"name":2211,"type":2118,"required":25,"description":466},"items.content",{"name":2213,"type":2121,"required":25,"description":2122},"items.created_at",{"name":2215,"type":2118,"required":25,"description":466},"items.error",{"name":2217,"type":252,"required":600,"description":466},"items.id",{"name":2219,"type":2129,"required":25,"description":466},"items.kind",{"name":2221,"type":252,"required":25,"description":466},"items.model",{"name":2223,"type":2133,"required":600,"description":466},"items.status",{"name":2225,"type":2121,"required":25,"description":2122},"items.updated_at",{"name":2227,"type":2228,"required":600,"description":466},"total","integer (int64)",{"status":2137,"description":2166,"contentType":2101,"type":2167,"fields":2230},[2231,2232,2233,2234],{"name":2124,"type":2170,"required":600,"description":466},{"name":2172,"type":2173,"required":25,"description":466},{"name":2175,"type":252,"required":600,"description":466},{"name":2177,"type":252,"required":25,"description":466},{"found":600,"operationId":2236,"summary":1938,"description":466,"method":1947,"path":1577,"publiclyDiscoverable":600,"security":2237,"parameters":2239,"requestBody":2241,"responses":2244},"cancelContentGenerationTask",{"schemes":2238,"optional":25},[2097],[2240],{"name":2126,"type":2148,"required":600,"description":466},{"present":25,"required":25,"description":466,"contentType":466,"type":2150,"fields":2242,"variants":2243},[],[],[2245,2251,2258],{"status":2113,"description":2246,"contentType":2101,"type":2170,"fields":2247},"任务已取消。",[2248,2249],{"name":2126,"type":252,"required":600,"description":466},{"name":2132,"type":2250,"required":600,"description":466},"string (cancelled)",{"status":2252,"description":2166,"contentType":2101,"type":2167,"fields":2253},"409",[2254,2255,2256,2257],{"name":2124,"type":2170,"required":600,"description":466},{"name":2172,"type":2173,"required":25,"description":466},{"name":2175,"type":252,"required":600,"description":466},{"name":2177,"type":252,"required":25,"description":466},{"status":2137,"description":2166,"contentType":2101,"type":2167,"fields":2259},[2260,2261,2262,2263],{"name":2124,"type":2170,"required":600,"description":466},{"name":2172,"type":2173,"required":25,"description":466},{"name":2175,"type":252,"required":600,"description":466},{"name":2177,"type":252,"required":25,"description":466}]