Assistant Sessions
助手会话、执行与工具调用(草案)
保存 AI 助手的会话历史,以及来源提供的执行、工具调用和输出。会话中的文字和执行的证据分开记下。这个来源还没有适配器,也没有登记 EntitySchema;接入前要先确定支持的来源版本。
实体
| 实体 | 含义 | 身份 | 要保留的信息 |
|---|---|---|---|
| 助手会话 | 来源定义的一段逻辑会话 | 来源的 session_id。真正的分叉有自己的会话身份;复制会话文件只是副本 | 标识的范围;分叉的来源和已知的分叉时间 |
| 会话条目 | 会话中的一条消息或一个条目 | 按来源的条目身份;文本相同的条目也可能是不同的条目 | 所属会话;条目种类;来源中的顺序;事实时间 |
| 助手执行 | 来源能证明的一次执行 | 按来源的执行标识或 trace/span 标识;并发的执行分别识别 | 父执行;输入和输出;执行的边界 |
| 工具调用 | 一次逻辑上的工具调用 | 来源的调用标识;传输重试仍是同一次调用 | 父执行;工具名称;参数和输出 |
| 执行尝试 | 一次工具调用的一次实际执行 | 来源的 attempt 标识;重新执行是新的尝试 | 所属调用;状态;执行的边界 |
| 输出项 | 流式协议中标识的一项输出 | 来源的 item_id | output_index 和内容位置;完整的输出 |
| 流式增量 | 输出逐步形成时的一段增量 | 流的实例和 sequence_number | 所属输出项;content_index;增量的内容 |
读取与时间
- 只读取写完整的条目;文件末尾没写完的行留到下次读取。
- 历史消息和分叉使用来源记下的时间,来源没有时间时为
null。 - 流式增量的先后用序号表达,序号不换算成时刻。