請求側(base_url、鑑權、換模型)見 相容模式呼叫。本頁只講響應側:拿到響應後怎麼解析。
兩種模式,同一端點
同一個/v1/chat/completions,只由 stream 引數決定返回形態:
非流式響應
結構穩定,取choices[0].message.content 即可:
流式響應(SSE)
流式以 Server-Sent Events 逐塊推送,每行形如data: {...},以 data: [DONE] 收尾:
delta.content:
接入要點:少數差異,統一處理
不同模型的流式細節略有出入,但只要遵守下面幾條,就能用同一套程式碼相容全部模型。健壯解析參考實現
不依賴 SDK、直接處理原始 SSE 時,按下面的寫法可覆蓋上述全部差異:推理模型(grok、qwen、glm 等)流式時會先推送
delta.reasoning_content(思考鏈),再推送 delta.content(正文)。上面的解析只取了 content,因此思考鏈被自動跳過。需要展示思考過程時的處理見 推理模型輸出。usage 與計費
usage在非流式響應裡隨結果一起返回;流式則在尾部某一塊裡返回(位置見上表,建議「讀到即覆蓋」)。- 各家欄位細分不同:OpenAI 繫有
completion_tokens_details,Gemini/Claude 額外帶input_tokens/output_tokens,推理模型帶reasoning_tokens。統一以prompt_tokens/completion_tokens/total_tokens三個標準欄位為準。