Skip to main content
Relyt AI Open API 支持将流式响应发送给客户端,从而为特定请求提供部分结果。此功能通过 服务器推送事件(SSE) 标准实现。

如何理解流式响应

每个请求的响应由一系列响应块组成。当为请求启用流式传输模式时,Relyt AI 将实时向客户端发送更新,持续传送响应块,直到所有数据完全返回。 响应块的结构如下:
每个流式响应块包含以下字段:
  • idgroup_id:响应块所属组的 ID。 流式响应中的组是响应块的集合。例如,在一个常规任务中,Analyze 阶段的每个步骤都是一个组,而整个 Respond 阶段是另一个组。
  • content:响应块的内容,具体内容会根据块的类型有所不同。有关详细信息,请参阅 内容说明
  • created:表示内容创建时间的时间戳。
  • group_id:响应块所属组的 ID。
  • group_name:组的名称,例如 Conclusions
  • stage:响应块所属的阶段。共有两个阶段:AnalyzeRespond

内容说明

每个响应块中 content 的值根据块的内容类型不同而有所变化:
  • 当块的内容类型为 MESSAGE 时: 内容为一段文本。
  • 当块的内容类型为 CODE 时: 内容为一个 Markdown 格式的代码片段。
  • 当块的内容类型为 TABLE 时: 内容表示一个表格,包含以下内容:
    • name.csv 文件名。
    • url:文件的 S3 键或 URL。
    • expired_aturl 的过期时间。为了将表格保留供以后使用,请确保在其过期之前下载它。
  • 当块的内容类型为 IMAGE 时: 内容表示一张图片,包含以下内容:
    • name:图片名称。
    • url:图片的 S3 键或 URL。
    • expired_aturl 的过期时间。为了将图片保留供以后使用,请确保在其过期之前下载它。
  • 当块的内容类型为 SOURCES 时: 内容表示响应块的来源,包含以下内容:
    • source:数据源的文件名。
    • datasource_id:数据源的 ID。
    • dataset_id:数据集的 ID。
    • file_type:数据源文件的扩展名。
  • 当块的内容类型为 QUESTIONS 时: 内容表示 Relyt AI 提示的后续问题。
让我们来看一个示例。
有关 POST /v2/jobs 端点的详细信息,请参阅 创建任务
Python request
The response is simlilar to this:
如果不启用流式传输,Relyt AI 仅在整个响应准备好后才返回响应。 我们以相同的请求为例进行清晰的对比。唯一的不同是将 stream 设置为 False
如下为响应示例:
Example response