[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"docs-nav-en":3,"docs-en-models\u002Fchat\u002Fzhipu":180,"$fEvjjM-UoN7ZjyyoXI7SvM6hCEzOu_G0np1UxFmH19KA":676},[4,26,43,105,155,172,176],{"title":5,"path":6,"stem":7,"children":8,"page":25},"Getting Started","\u002Fgetting-started","1.getting-started",[9,13,17,21],{"title":10,"path":11,"stem":12},"Your First SilvaMux API Call","\u002Fgetting-started\u002Fquick-start","1.getting-started\u002F1.quick-start",{"title":14,"path":15,"stem":16},"Model Selection","\u002Fgetting-started\u002Fmodel-selection","1.getting-started\u002F2.model-selection",{"title":18,"path":19,"stem":20},"Rate Limits","\u002Fgetting-started\u002Frate-limits","1.getting-started\u002F3.rate-limits",{"title":22,"path":23,"stem":24},"FAQ","\u002Fgetting-started\u002Ffaq","1.getting-started\u002F4.faq",false,{"title":27,"path":28,"stem":29,"children":30,"page":25},"Billing","\u002Fbilling","2.billing",[31,35,39],{"title":32,"path":33,"stem":34},"Billing Overview","\u002Fbilling\u002Foverview","2.billing\u002F1.overview",{"title":36,"path":37,"stem":38},"Online Top-up","\u002Fbilling\u002Frecharge","2.billing\u002F2.recharge",{"title":40,"path":41,"stem":42},"Bills, Usage & Exports","\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 Overview","\u002Fcoding-plan\u002Foverview","3.coding-plan\u002F1.overview",{"title":53,"path":54,"stem":55},"Quick Start","\u002Fcoding-plan\u002Fquick-start","3.coding-plan\u002F2.quick-start",{"title":57,"path":58,"stem":59},"Usage Notes","\u002Fcoding-plan\u002Fusage-notes","3.coding-plan\u002F3.usage-notes",{"title":61,"path":62,"stem":63,"children":64},"Personal","\u002Fcoding-plan\u002Fpersonal","3.coding-plan\u002F4.personal\u002Findex",[65],{"title":66,"path":62,"stem":63},"Pricing & Benefits",{"title":68,"path":69,"stem":70,"children":71,"page":-1},"Developer Guide","\u002Fcoding-plan\u002Fguide","3.coding-plan\u002F5.guide\u002Findex",[72,74,78,82,86,90,94,98],{"title":73,"path":69,"stem":70},"Endpoints & Protocols",{"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},"Model APIs","\u002Fmodels","4.models",[110,143],{"title":111,"path":112,"stem":113,"children":114,"page":25},"Text Generation Model API","\u002Fmodels\u002Fchat","4.models\u002F1.chat",[115,119,123,127,131,135,139],{"title":116,"path":117,"stem":118},"Overview","\u002Fmodels\u002Fchat\u002Foverview","4.models\u002F1.chat\u002F1.overview",{"title":120,"path":121,"stem":122},"OpenAI Compatible API","\u002Fmodels\u002Fchat\u002Fopenai","4.models\u002F1.chat\u002F2.openai",{"title":124,"path":125,"stem":126},"Anthropic Compatible","\u002Fmodels\u002Fchat\u002Fanthropic","4.models\u002F1.chat\u002F3.anthropic",{"title":128,"path":129,"stem":130},"Volcengine Compatible","\u002Fmodels\u002Fchat\u002Fvolcengine","4.models\u002F1.chat\u002F4.volcengine",{"title":132,"path":133,"stem":134},"Zhipu Compatible","\u002Fmodels\u002Fchat\u002Fzhipu","4.models\u002F1.chat\u002F5.zhipu",{"title":136,"path":137,"stem":138},"SilvaMux Unified Entry","\u002Fmodels\u002Fchat\u002Funified","4.models\u002F1.chat\u002F6.unified",{"title":140,"path":141,"stem":142},"Multimodal Input","\u002Fmodels\u002Fchat\u002Fmultimodal","4.models\u002F1.chat\u002F7.multimodal",{"title":144,"path":145,"stem":146,"children":147,"page":25},"Image Generation Model 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},"Image Generation API","\u002Fmodels\u002Fimages\u002Fgeneration","4.models\u002F2.images\u002F2.generation",{"title":156,"path":157,"stem":158,"children":159,"page":25},"Usage & Balance","\u002Fusage-and-balance","5.usage-and-balance",[160,164,168],{"title":161,"path":162,"stem":163},"Query Balance","\u002Fusage-and-balance\u002Fbalance","5.usage-and-balance\u002F1.balance",{"title":165,"path":166,"stem":167},"Query Usage","\u002Fusage-and-balance\u002Fusage","5.usage-and-balance\u002F2.usage",{"title":169,"path":170,"stem":171},"Query Request Usage","\u002Fusage-and-balance\u002Frequest-usage","5.usage-and-balance\u002F3.request-usage",{"title":173,"path":174,"stem":175},"Error Codes","\u002Ferrors","6.errors",{"title":177,"path":178,"stem":179},"Getting Started with SilvaMux","\u002F","index",{"id":181,"title":132,"body":182,"description":669,"extension":670,"meta":671,"navigation":340,"path":133,"rawbody":672,"requiredFlags":673,"seo":674,"stem":134,"__hash__":675},"docs_en\u002F4.models\u002F1.chat\u002F5.zhipu.md",{"type":183,"value":184,"toc":666},"minimark",[185,189,206,211,216,223,662],[186,187,132],"h1",{"id":188},"zhipu-compatible",[190,191,192,193,197,198,201,202,205],"p",{},"Reuses the unified entry with ",[194,195,196],"code",{},"model","-based routing and stays compatible with the Zhipu official SDK: set ",[194,199,200],{},"base_url=\"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\""," and you can migrate without code changes, using Zhipu official model names (e.g. ",[194,203,204],{},"glm-5",").",[207,208],"api-endpoint",{"method":209,"path":210},"POST","\u002Fapi\u002Fpaas\u002Fv4\u002Fchat\u002Fcompletions",[212,213,215],"h2",{"id":214},"examples","Examples",[190,217,218,219,222],{},"The Zhipu entry's request format is OpenAI Chat compatible, so you can also point the OpenAI SDK at it directly (the Zhipu official SDK works too after configuring ",[194,220,221],{},"base_url","):",[224,225,226,311,402,478],"code-tabs",{},[227,228,230],"code-tab",{"label":229},"cURL",[231,232,237],"pre",{"className":233,"code":234,"language":235,"meta":236,"style":236},"language-bash shiki shiki-themes github-light github-dark","curl https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\u002Fchat\u002Fcompletions \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"glm-5\",\n    \"messages\": [{\"role\": \"user\", \"content\": \"Hello\"}]\n  }'\n","bash","",[194,238,239,256,274,284,293,299,305],{"__ignoreMap":236},[240,241,244,248,252],"span",{"class":242,"line":243},"line",1,[240,245,247],{"class":246},"sScJk","curl",[240,249,251],{"class":250},"sZZnC"," https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\u002Fchat\u002Fcompletions",[240,253,255],{"class":254},"sj4cs"," \\\n",[240,257,259,262,265,269,272],{"class":242,"line":258},2,[240,260,261],{"class":254},"  -H",[240,263,264],{"class":250}," \"Authorization: Bearer ",[240,266,268],{"class":267},"sVt8B","$SILVAMUX_API_KEY",[240,270,271],{"class":250},"\"",[240,273,255],{"class":254},[240,275,277,279,282],{"class":242,"line":276},3,[240,278,261],{"class":254},[240,280,281],{"class":250}," \"Content-Type: application\u002Fjson\"",[240,283,255],{"class":254},[240,285,287,290],{"class":242,"line":286},4,[240,288,289],{"class":254},"  -d",[240,291,292],{"class":250}," '{\n",[240,294,296],{"class":242,"line":295},5,[240,297,298],{"class":250},"    \"model\": \"glm-5\",\n",[240,300,302],{"class":242,"line":301},6,[240,303,304],{"class":250},"    \"messages\": [{\"role\": \"user\", \"content\": \"Hello\"}]\n",[240,306,308],{"class":242,"line":307},7,[240,309,310],{"class":250},"  }'\n",[227,312,314],{"label":313},"Python",[231,315,319],{"className":316,"code":317,"language":318,"meta":236,"style":236},"language-python shiki shiki-themes github-light github-dark","# pip install openai\nimport os\nfrom openai import OpenAI\n\nclient = OpenAI(\n    api_key=os.environ[\"SILVAMUX_API_KEY\"],\n    base_url=\"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\",\n)\n\nresponse = client.chat.completions.create(\n    model=\"glm-5\",\n    messages=[{\"role\": \"user\", \"content\": \"Hello\"}],\n)\n\nprint(response.choices[0].message.content)\n","python",[194,320,321,326,331,336,342,347,352,357,363,368,374,380,386,391,396],{"__ignoreMap":236},[240,322,323],{"class":242,"line":243},[240,324,325],{},"# pip install openai\n",[240,327,328],{"class":242,"line":258},[240,329,330],{},"import os\n",[240,332,333],{"class":242,"line":276},[240,334,335],{},"from openai import OpenAI\n",[240,337,338],{"class":242,"line":286},[240,339,341],{"emptyLinePlaceholder":340},true,"\n",[240,343,344],{"class":242,"line":295},[240,345,346],{},"client = OpenAI(\n",[240,348,349],{"class":242,"line":301},[240,350,351],{},"    api_key=os.environ[\"SILVAMUX_API_KEY\"],\n",[240,353,354],{"class":242,"line":307},[240,355,356],{},"    base_url=\"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\",\n",[240,358,360],{"class":242,"line":359},8,[240,361,362],{},")\n",[240,364,366],{"class":242,"line":365},9,[240,367,341],{"emptyLinePlaceholder":340},[240,369,371],{"class":242,"line":370},10,[240,372,373],{},"response = client.chat.completions.create(\n",[240,375,377],{"class":242,"line":376},11,[240,378,379],{},"    model=\"glm-5\",\n",[240,381,383],{"class":242,"line":382},12,[240,384,385],{},"    messages=[{\"role\": \"user\", \"content\": \"Hello\"}],\n",[240,387,389],{"class":242,"line":388},13,[240,390,362],{},[240,392,394],{"class":242,"line":393},14,[240,395,341],{"emptyLinePlaceholder":340},[240,397,399],{"class":242,"line":398},15,[240,400,401],{},"print(response.choices[0].message.content)\n",[227,403,405],{"label":404},"JavaScript",[231,406,410],{"className":407,"code":408,"language":409,"meta":236,"style":236},"language-javascript shiki shiki-themes github-light github-dark","\u002F\u002F npm install openai\nimport OpenAI from \"openai\";\n\nconst client = new OpenAI({\n  apiKey: process.env.SILVAMUX_API_KEY,\n  baseURL: \"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\",\n});\n\nconst response = await client.chat.completions.create({\n  model: \"glm-5\",\n  messages: [{ role: \"user\", content: \"Hello\" }],\n});\n\nconsole.log(response.choices[0].message.content);\n","javascript",[194,411,412,417,422,426,431,436,441,446,450,455,460,465,469,473],{"__ignoreMap":236},[240,413,414],{"class":242,"line":243},[240,415,416],{},"\u002F\u002F npm install openai\n",[240,418,419],{"class":242,"line":258},[240,420,421],{},"import OpenAI from \"openai\";\n",[240,423,424],{"class":242,"line":276},[240,425,341],{"emptyLinePlaceholder":340},[240,427,428],{"class":242,"line":286},[240,429,430],{},"const client = new OpenAI({\n",[240,432,433],{"class":242,"line":295},[240,434,435],{},"  apiKey: process.env.SILVAMUX_API_KEY,\n",[240,437,438],{"class":242,"line":301},[240,439,440],{},"  baseURL: \"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\",\n",[240,442,443],{"class":242,"line":307},[240,444,445],{},"});\n",[240,447,448],{"class":242,"line":359},[240,449,341],{"emptyLinePlaceholder":340},[240,451,452],{"class":242,"line":365},[240,453,454],{},"const response = await client.chat.completions.create({\n",[240,456,457],{"class":242,"line":370},[240,458,459],{},"  model: \"glm-5\",\n",[240,461,462],{"class":242,"line":376},[240,463,464],{},"  messages: [{ role: \"user\", content: \"Hello\" }],\n",[240,466,467],{"class":242,"line":382},[240,468,445],{},[240,470,471],{"class":242,"line":388},[240,472,341],{"emptyLinePlaceholder":340},[240,474,475],{"class":242,"line":393},[240,476,477],{},"console.log(response.choices[0].message.content);\n",[227,479,481],{"label":480},"Go",[231,482,486],{"className":483,"code":484,"language":485,"meta":236,"style":236},"language-go shiki shiki-themes github-light github-dark","\u002F\u002F Standard library only\npackage main\n\nimport (\n    \"bytes\"\n    \"fmt\"\n    \"io\"\n    \"net\u002Fhttp\"\n    \"os\"\n)\n\nfunc main() {\n    payload := []byte(`{\n        \"model\": \"glm-5\",\n        \"messages\": [{\"role\": \"user\", \"content\": \"Hello\"}]\n    }`)\n\n    req, err := http.NewRequest(\"POST\", \"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\u002Fchat\u002Fcompletions\", 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",[194,487,488,493,498,502,507,512,517,522,527,532,536,540,545,550,555,560,566,571,577,583,589,595,601,607,612,618,623,628,633,639,644,650,656],{"__ignoreMap":236},[240,489,490],{"class":242,"line":243},[240,491,492],{},"\u002F\u002F Standard library only\n",[240,494,495],{"class":242,"line":258},[240,496,497],{},"package main\n",[240,499,500],{"class":242,"line":276},[240,501,341],{"emptyLinePlaceholder":340},[240,503,504],{"class":242,"line":286},[240,505,506],{},"import (\n",[240,508,509],{"class":242,"line":295},[240,510,511],{},"    \"bytes\"\n",[240,513,514],{"class":242,"line":301},[240,515,516],{},"    \"fmt\"\n",[240,518,519],{"class":242,"line":307},[240,520,521],{},"    \"io\"\n",[240,523,524],{"class":242,"line":359},[240,525,526],{},"    \"net\u002Fhttp\"\n",[240,528,529],{"class":242,"line":365},[240,530,531],{},"    \"os\"\n",[240,533,534],{"class":242,"line":370},[240,535,362],{},[240,537,538],{"class":242,"line":376},[240,539,341],{"emptyLinePlaceholder":340},[240,541,542],{"class":242,"line":382},[240,543,544],{},"func main() {\n",[240,546,547],{"class":242,"line":388},[240,548,549],{},"    payload := []byte(`{\n",[240,551,552],{"class":242,"line":393},[240,553,554],{},"        \"model\": \"glm-5\",\n",[240,556,557],{"class":242,"line":398},[240,558,559],{},"        \"messages\": [{\"role\": \"user\", \"content\": \"Hello\"}]\n",[240,561,563],{"class":242,"line":562},16,[240,564,565],{},"    }`)\n",[240,567,569],{"class":242,"line":568},17,[240,570,341],{"emptyLinePlaceholder":340},[240,572,574],{"class":242,"line":573},18,[240,575,576],{},"    req, err := http.NewRequest(\"POST\", \"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\u002Fchat\u002Fcompletions\", bytes.NewReader(payload))\n",[240,578,580],{"class":242,"line":579},19,[240,581,582],{},"    if err != nil {\n",[240,584,586],{"class":242,"line":585},20,[240,587,588],{},"        panic(err)\n",[240,590,592],{"class":242,"line":591},21,[240,593,594],{},"    }\n",[240,596,598],{"class":242,"line":597},22,[240,599,600],{},"    req.Header.Set(\"Authorization\", \"Bearer \"+os.Getenv(\"SILVAMUX_API_KEY\"))\n",[240,602,604],{"class":242,"line":603},23,[240,605,606],{},"    req.Header.Set(\"Content-Type\", \"application\u002Fjson\")\n",[240,608,610],{"class":242,"line":609},24,[240,611,341],{"emptyLinePlaceholder":340},[240,613,615],{"class":242,"line":614},25,[240,616,617],{},"    resp, err := http.DefaultClient.Do(req)\n",[240,619,621],{"class":242,"line":620},26,[240,622,582],{},[240,624,626],{"class":242,"line":625},27,[240,627,588],{},[240,629,631],{"class":242,"line":630},28,[240,632,594],{},[240,634,636],{"class":242,"line":635},29,[240,637,638],{},"    defer resp.Body.Close()\n",[240,640,642],{"class":242,"line":641},30,[240,643,341],{"emptyLinePlaceholder":340},[240,645,647],{"class":242,"line":646},31,[240,648,649],{},"    body, _ := io.ReadAll(resp.Body)\n",[240,651,653],{"class":242,"line":652},32,[240,654,655],{},"    fmt.Println(string(body))\n",[240,657,659],{"class":242,"line":658},33,[240,660,661],{},"}\n",[663,664,665],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}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":236,"searchDepth":258,"depth":258,"links":667},[668],{"id":214,"depth":258,"text":215},"Zhipu official SDK compatible entry — migrate without code changes.","md",{},"---\ntitle: Zhipu Compatible\ndescription: Zhipu official SDK compatible entry — migrate without code changes.\n---\n\n# Zhipu Compatible\n\nReuses the unified entry with `model`-based routing and stays compatible with the Zhipu official SDK: set `base_url=\"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\"` and you can migrate without code changes, using Zhipu official model names (e.g. `glm-5`).\n\n::api-endpoint{path=\"\u002Fapi\u002Fpaas\u002Fv4\u002Fchat\u002Fcompletions\" method=\"POST\"}\n::\n\n## Examples\n\nThe Zhipu entry's request format is OpenAI Chat compatible, so you can also point the OpenAI SDK at it directly (the Zhipu official SDK works too after configuring `base_url`):\n\n::code-tabs\n:::code-tab{label=\"cURL\"}\n```bash\ncurl https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\u002Fchat\u002Fcompletions \\\n  -H \"Authorization: Bearer $SILVAMUX_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"model\": \"glm-5\",\n    \"messages\": [{\"role\": \"user\", \"content\": \"Hello\"}]\n  }'\n```\n:::\n:::code-tab{label=\"Python\"}\n```python\n# pip install openai\nimport os\nfrom openai import OpenAI\n\nclient = OpenAI(\n    api_key=os.environ[\"SILVAMUX_API_KEY\"],\n    base_url=\"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\",\n)\n\nresponse = client.chat.completions.create(\n    model=\"glm-5\",\n    messages=[{\"role\": \"user\", \"content\": \"Hello\"}],\n)\n\nprint(response.choices[0].message.content)\n```\n:::\n:::code-tab{label=\"JavaScript\"}\n```javascript\n\u002F\u002F npm install openai\nimport OpenAI from \"openai\";\n\nconst client = new OpenAI({\n  apiKey: process.env.SILVAMUX_API_KEY,\n  baseURL: \"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\",\n});\n\nconst response = await client.chat.completions.create({\n  model: \"glm-5\",\n  messages: [{ role: \"user\", content: \"Hello\" }],\n});\n\nconsole.log(response.choices[0].message.content);\n```\n:::\n:::code-tab{label=\"Go\"}\n```go\n\u002F\u002F Standard library only\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\": \"glm-5\",\n\t\t\"messages\": [{\"role\": \"user\", \"content\": \"Hello\"}]\n\t}`)\n\n\treq, err := http.NewRequest(\"POST\", \"https:\u002F\u002Fsilvamux.io\u002Fapi\u002Fpaas\u002Fv4\u002Fchat\u002Fcompletions\", 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",[],{"title":132,"description":669},"f5u-jqPI2mEQjxcQudY1PB8UWyZNeXVlqI1jJVQc2_M",{"found":340,"operationId":677,"summary":678,"description":679,"method":209,"path":210,"publiclyDiscoverable":340,"security":680,"parameters":684,"requestBody":685,"responses":779},"createZhipuChatCompletion","智谱兼容","复用统一入口按 model 选路。",{"schemes":681,"optional":25},[682,683],"BearerAuth","ApiKeyAuth",[],{"present":340,"required":340,"description":236,"contentType":686,"type":687,"fields":688,"variants":778},"application\u002Fjson","OpenAIChatRequest",[689,693,697,701,705,709,712,716,719,722,725,728,731,733,736,739,743,748,752,756,760,762,765,767,770,772,775],{"name":690,"type":691,"required":25,"description":692},"max_tokens","integer","生成的最大 token 数；达到限制时输出可能被截断。",{"name":694,"type":695,"required":340,"description":696},"messages","array\u003CMessage>","对话消息列表（按时间顺序，至少一条），提供完整上下文。",{"name":698,"type":699,"required":340,"description":700},"messages.content","string | array\u003CContentPart>","消息内容：纯文本字符串或多模态分段数组（图片 \u002F 音频）。不能只包含 system 或 assistant 消息。",{"name":702,"type":703,"required":25,"description":704},"messages.name","string","参与者名称（可选）。",{"name":706,"type":707,"required":340,"description":708},"messages.role","string (system | user | assistant | tool)","消息角色：system 设定行为与人设，user 用户输入，assistant 模型回复，tool 工具执行结果。",{"name":710,"type":703,"required":25,"description":711},"messages.tool_call_id","role=tool 时对应的工具调用 ID。",{"name":713,"type":714,"required":25,"description":715},"messages.tool_calls","array\u003CToolCall>","模型发起的工具调用（出现在 assistant 历史消息中）。",{"name":717,"type":718,"required":340,"description":236},"messages.tool_calls.function","object",{"name":720,"type":703,"required":340,"description":721},"messages.tool_calls.function.arguments","JSON 编码的函数参数。",{"name":723,"type":703,"required":340,"description":724},"messages.tool_calls.function.name","函数名。",{"name":726,"type":703,"required":340,"description":727},"messages.tool_calls.id","工具调用 ID。",{"name":729,"type":730,"required":340,"description":236},"messages.tool_calls.type","string (function)",{"name":196,"type":703,"required":340,"description":732},"SilvaMux 模型调用名（id 或 alias）。从模型广场模型详情页复制；账号最终可用范围还受组织权限影响。",{"name":734,"type":718,"required":25,"description":735},"response_format","输出格式：text（默认，普通文本）或 json_object（JSON 模式）。",{"name":737,"type":738,"required":25,"description":236},"response_format.type","string (text | json_object)",{"name":740,"type":741,"required":25,"description":742},"stop","string | array\u003Cstring>","停止词：生成文本出现这些字符串时立即停止，最多 4 个。",{"name":744,"type":745,"required":25,"description":746,"defaultValue":747},"stream","boolean","是否启用流式输出（SSE）。false：完整生成后一次性返回；true：实时返回生成内容，结束时以 data: [DONE] 标记（客户端不应仅依赖该标记判断完成）。","false",{"name":749,"type":750,"required":25,"description":751},"temperature","number","采样温度，控制输出随机性：值越高越发散，越低越稳定。建议只调整 temperature 或 top_p 之一。",{"name":753,"type":754,"required":25,"description":755},"tool_choice","string (auto | none) | object","工具选择策略：auto（默认，模型自行决定）\u002F none（禁用）\u002F 指定函数对象。",{"name":757,"type":758,"required":25,"description":759},"tools","array\u003CTool>","可供模型调用的函数定义列表（Function Calling）。",{"name":761,"type":718,"required":340,"description":236},"tools.function",{"name":763,"type":703,"required":25,"description":764},"tools.function.description","函数用途描述，帮助模型决定是否调用。",{"name":766,"type":703,"required":340,"description":724},"tools.function.name",{"name":768,"type":718,"required":25,"description":769},"tools.function.parameters","函数参数的 JSON Schema。",{"name":771,"type":730,"required":340,"description":236},"tools.type",{"name":773,"type":750,"required":25,"description":774},"top_p","核采样参数，temperature 的替代方案。",{"name":776,"type":703,"required":25,"description":777},"user","终端用户标识符，用于滥用检测。",[],[780,840],{"status":781,"description":782,"contentType":686,"type":783,"fields":784},"200","OpenAI Chat JSON 或 SSE 响应。","OpenAIChatResponse",[785,789,793,796,799,802,805,808,811,813,815,817,820,823,825,827,831,834,837],{"name":786,"type":787,"required":340,"description":788},"choices","array\u003COpenAIChatChoice>","候选响应列表。",{"name":790,"type":791,"required":340,"description":792},"choices.finish_reason","string (stop | length | tool_calls | content_filter)","结束原因：stop 自然结束；length 达到 max_tokens；tool_calls 需执行工具；content_filter 触发内容过滤。",{"name":794,"type":691,"required":340,"description":795},"choices.index","候选序号。",{"name":797,"type":718,"required":340,"description":798},"choices.message","助手消息。",{"name":800,"type":703,"required":340,"description":801},"choices.message.content","生成的文本内容；仅工具调用时可为空。",{"name":803,"type":703,"required":25,"description":804},"choices.message.reasoning_content","思考过程内容（支持思考模式的模型返回）。",{"name":806,"type":807,"required":340,"description":236},"choices.message.role","string (assistant | tool)",{"name":809,"type":714,"required":25,"description":810},"choices.message.tool_calls","模型发起的工具调用。",{"name":812,"type":718,"required":340,"description":236},"choices.message.tool_calls.function",{"name":814,"type":703,"required":340,"description":727},"choices.message.tool_calls.id",{"name":816,"type":730,"required":340,"description":236},"choices.message.tool_calls.type",{"name":818,"type":691,"required":25,"description":819},"created","创建时间（Unix 秒）。",{"name":821,"type":703,"required":340,"description":822},"id","请求 ID。",{"name":196,"type":703,"required":25,"description":824},"实际使用的模型名。",{"name":718,"type":703,"required":25,"description":826},"对象类型（如 chat.completion）。",{"name":828,"type":829,"required":25,"description":830},"usage","Usage","Token 用量统计；兼容入口可能透传厂商扩展字段。",{"name":832,"type":691,"required":340,"description":833},"usage.completion_tokens","输出 token 数。",{"name":835,"type":691,"required":340,"description":836},"usage.prompt_tokens","输入 token 数。",{"name":838,"type":691,"required":340,"description":839},"usage.total_tokens","总 token 数。",{"status":841,"description":842,"contentType":686,"type":843,"fields":844},"default","OpenAI 兼容错误。","OpenAIError",[845,847,850,852],{"name":846,"type":718,"required":340,"description":236},"error",{"name":848,"type":849,"required":25,"description":236},"error.code","string | integer",{"name":851,"type":703,"required":340,"description":236},"error.message",{"name":853,"type":703,"required":25,"description":236},"error.type"]