首页/文本能力/流式输出

流式输出

所有具有文本输出能力的模型都支持流式输出。不支持具有图像输出能力的模型(如图像生成)。

流式输出使用 Server-Sent Events (SSE), 让服务器以事件流的形式返回内容增量。流式响有利于提供实时反馈,通过允许文本在生成时显示来增强用户交互。

要启用流式输出,你必须在请求中设置 "stream": true

提示:在推理模型上使用流式输出时,你可能需要手动覆盖请求超时,以避免过早关闭连接。

流式输出示例

Python (xAI SDK)
import os
from xai_sdk import Client
from xai_sdk.chat import user, system

client = Client(api_key=os.getenv('XAI_API_KEY'), timeout=3600)

chat = client.chat.create(model="grok-4.5")
chat.append(system("You are Grok, a helpful AI built by xAI."))
chat.append(user("Explain how neural networks learn in two sentences."))

for response, chunk in chat.stream():
    print(chunk.content, end="", flush=True)  # 每个块的内容
    print(response.content, end="", flush=True)  # 自动累积的完整响应

print(response.content)  # 完整响应

你将收到如下事件流:

data: {
    "id":"<completion_id>",
    "object":"chat.completion.chunk",
    "created":<creation_time>,
    "model":"grok-4.5",
    "choices":[{"index":0,"delta":{"content":"Ah","role":"assistant"}}],
    "usage":{"prompt_tokens":41,"completion_tokens":1,"total_tokens":42}
}

data: {
    "id":"<completion_id>",
    "object":"chat.completion.chunk",
    "created":<creation_time>,
    "model":"grok-4.5",
    "choices":[{"index":0,"delta":{"content":" neural"}}]
}

data: [DONE]

推理模型的流式输出

对于推理模型(如 grok-4.5),流式输出还会包含推理摘要的增量。 你可以在最终响应之前看到模型的推理过程摘要。

接下来