流式传输 (v1)

旧版

流式传输执行运行或在提交工具输出后恢复运行的结果。

你可以通过在创建会话和运行创建运行提交工具输出端点传递 "stream": true 来流式传输事件。响应将是一个服务器发送事件流。

我们的 Node 和 Python SDK 提供了有用的实用工具,使流式传输变得简单。参考 Assistants API 快速入门了解更多信息。

消息增量对象 (v1)

旧版

表示一个消息增量,即在流式传输期间消息上任何更改的字段。

参数名类型描述
idstring消息的标识符,可在 API 端点中引用。
objectstring对象类型,始终为 thread.message.delta
deltaobject包含消息上已更改字段的增量。

消息增量对象示例

{
  "id": "msg_123",
  "object": "thread.message.delta",
  "delta": {
    "content": [
      {
        "index": 0,
        "type": "text",
        "text": { "value": "Hello", "annotations": [] }
      }
    ]
  }
}

运行步骤增量对象 (v1)

旧版

表示一个运行步骤增量,即在流式传输期间运行步骤上任何更改的字段。

参数名类型描述
idstring运行步骤的标识符,可在 API 端点中引用。
objectstring对象类型,始终为 thread.run.step.delta
deltaobject包含运行步骤上已更改字段的增量。

运行步骤增量对象示例

{
  "id": "step_123",
  "object": "thread.run.step.delta",
  "delta": {
    "step_details": {
      "type": "tool_calls",
      "tool_calls": [
        {
          "index": 0,
          "id": "call_123",
          "type": "code_interpreter",
          "code_interpreter": { "input": "", "outputs": [] }
        }
      ]
    }
  }
}

(助手流事件 v1)

表示流式运行时发出的事件。

每个服务器发送的事件流中的事件都有一个 eventdata 属性:

event: thread.created
data: {"id": "thread_123", "object": "thread", ...}

当创建新对象、转换到新状态或部分流式传输(增量)时,我们会发出事件。例如,当创建新的运行时,我们会发出 thread.run.created,当运行完成时发出 thread.run.completed,以此类推。当助手在运行过程中选择创建消息时,我们会发出一个 thread.message.created 事件、一个 thread.message.in_progress 事件、多个 thread.message.delta 事件,最后是一个 thread.message.completed 事件。

我们可能会随着时间添加其他事件,因此我们建议在代码中优雅地处理未知事件。请参阅Assistants API quickstart,了解如何将 Assistants API 与流式传输集成。

事件名称数据描述
thread.createddata 是一个 thread当创建新的 thread 时发生
thread.run.createddata 是一个 run当创建新的 run 时发生
thread.run.queueddata 是一个 runrun 移至 queued 状态时发生
thread.run.in_progressdata 是一个 runrun 移至 in_progress 状态时发生
thread.run.requires_actiondata 是一个 runrun 移至 requires_action 状态时发生
thread.run.completeddata 是一个 runrun 完成时发生
thread.run.faileddata 是一个 runrun 失败时发生
thread.run.cancellingdata 是一个 runrun 移至 cancelling 状态时发生
thread.run.cancelleddata 是一个 runrun 被取消时发生
thread.run.expireddata 是一个 runrun 过期时发生
thread.run.step.createddata 是一个 run step当创建 run step 时发生
thread.run.step.in_progressdata 是一个 run steprun step 进入 in_progress 状态时发生
thread.run.step.deltadata 是一个 run step deltarun step 的部分内容被流式传输时发生
thread.run.step.completeddata 是一个 run steprun step 完成时发生
thread.run.step.faileddata 是一个 run steprun step 失败时发生
thread.run.step.cancelleddata 是一个 run steprun step 被取消时发生
thread.run.step.expireddata 是一个 run steprun step 过期时发生
thread.message.createddata 是一个 message当创建 message 时发生
thread.message.in_progressdata 是一个 messagemessage 进入 in_progress 状态时发生
thread.message.deltadata 是一个 message deltamessage 的部分内容被流式传输时发生
thread.message.completeddata 是一个 messagemessage 完成时发生
thread.message.incompletedata 是一个 messagemessage 在完成之前结束时发生
errordata 是一个 error当发生 error 时发生。这可能是由于内部服务器错误或超时导致的
donedata[DONE]当流结束时发生

Was this page helpful?