运行步骤

Beta

表示在运行期间采取的步骤(模型和工具调用)。

相关指南: 助理

列出运行步骤

Beta

GET https://api.openai.com/v1/threads/{thread_id}/runs/{run_id}/steps

返回属于一个运行的运行步骤列表。

路径参数

参数名类型必需描述
thread_idstring必需运行和运行步骤所属的线程的ID。
run_idstring必需运行步骤所属运行的ID。

查询参数

参数名类型可选默认值描述
limitinteger可选20返回对象的数量限制。限制范围为1到100,默认值为20。
orderstring可选desc根据对象的 created_at 时间戳排序。asc 表示升序,desc 表示降序。
afterstring可选用于分页的游标。after 是定义列表中位置的对象ID。例如,如果您进行列表请求并接收100个对象,结束为obj_foo,后续调用可以包含after=obj_foo以获取列表的下一页。
beforestring可选用于分页的游标。before 是定义列表中位置的对象ID。例如,如果您进行列表请求并接收100个对象,结束为obj_foo,后续调用可以包含before=obj_foo以获取列表的上一页。

返回

返回一个运行步骤对象列表。


示例请求

curl https://api.openai.com/v1/threads/thread_abc123/runs/run_abc123/steps \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -H "OpenAI-Beta: assistants=v2"

响应

{
  "object": "list",
  "data": [
    {
      "id": "step_abc123",
      "object": "thread.run.step",
      "created_at": 1699063291,
      "run_id": "run_abc123",
      "assistant_id": "asst_abc123",
      "thread_id": "thread_abc123",
      "type": "message_creation",
      "status": "completed",
      "cancelled_at": null,
      "completed_at": 1699063291,
      "expired_at": null,
      "failed_at": null,
      "last_error": null,
      "step_details": {
        "type": "message_creation",
        "message_creation": {
          "message_id": "msg_abc123"
        }
      },
      "usage": {
        "prompt_tokens": 123,
        "completion_tokens": 456,
        "total_tokens": 579
      }
    }
  ],
  "first_id": "step_abc123",
  "last_id": "step_abc456",
  "has_more": false
}

获取运行步骤

Beta

GET https://api.openai.com/v1/threads/{thread_id}/runs/{run_id}/steps/{step_id}

检索一个运行步骤。

路径参数

参数名类型必需描述
thread_idstring必需运行和运行步骤所属的线程的ID。
run_idstring必需运行步骤所属运行的ID。
step_idstring必需要检索的运行步骤的ID。

返回

返回与指定ID匹配的运行步骤对象。


示例请求

curl https://api.openai.com/v1/threads/thread_abc123/runs/run_abc123/steps/step_abc123 \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -H "OpenAI-Beta: assistants=v2"

响应

{
  "id": "step_abc123",
  "object": "thread.run.step",
  "created_at": 1699063291,
  "run_id": "run_abc123",
  "assistant_id": "asst_abc123",
  "thread_id": "thread_abc123",
  "type": "message_creation",
  "status": "completed",
  "cancelled_at": null,
  "completed_at": 1699063291,
  "expired_at": null,
  "failed_at": null,
  "last_error": null,
  "step_details": {
    "type": "message_creation",
    "message_creation": {
      "message_id": "msg_abc123"
    }
  },
  "usage": {
    "prompt_tokens": 123,
    "completion_tokens": 456,
    "total_tokens": 579
  }
}

运行步骤对象

Beta

表示运行执行中的一步。

参数

参数名类型描述
idstring运行步骤的标识符,可以在API端点中引用。
objectstring对象类型,总是 thread.run.step
created_atinteger运行步骤创建时的Unix时间戳(秒)。
assistant_idstring与运行步骤关联的 assistant 的ID。
thread_idstring运行的 thread 的ID。
run_idstring该运行步骤所属的 run 的ID。
typestring运行步骤的类型,可以是 message_creationtool_calls
statusstring运行步骤的状态,可以是 in_progresscancelledfailedcompletedexpired
step_detailsobject运行步骤的详细信息。
last_errorobject 或 null该运行步骤关联的最后一个错误。如果没有错误,则为 null
expired_atinteger 或 null运行步骤过期时的Unix时间戳(秒)。如果父运行已过期,则认为步骤已过期。
cancelled_atinteger 或 null运行步骤被取消时的Unix时间戳(秒)。
failed_atinteger 或 null运行步骤失败时的Unix时间戳(秒)。
completed_atinteger 或 null运行步骤完成时的Unix时间戳(秒)。
metadatamap可以附加到对象的一组16个键值对。这对于以结构化格式存储对象的附加信息非常有用。键的最大长度为64个字符,值的最大长度为512个字符。
usageobject 或 null与运行步骤相关的使用统计信息。在运行步骤的状态为 in_progress 时,该值为 null

示例对象

{
  "id": "step_abc123",
  "object": "thread.run.step",
  "created_at": 1699063291,
  "run_id": "run_abc123",
  "assistant_id": "asst_abc123",
  "thread_id": "thread_abc123",
  "type": "message_creation",
  "status": "completed",
  "cancelled_at": null,
  "completed_at": 1699063291,
  "expired_at": null,
  "failed_at": null,
  "last_error": null,
  "step_details": {
    "type": "message_creation",
    "message_creation": {
      "message_id": "msg_abc123"
    }
  },
  "usage": {
    "prompt_tokens": 123,
    "completion_tokens": 456,
    "total_tokens": 579
  }
}

Was this page helpful?