AgentHarness 课程
Hermes 专题/课程概述

第十九课:流式响应与推理链

Responses APIreasoning处理流式输出机制

学习目标

  • 理解 Responses API 的流式响应机制
  • 掌握推理链的处理方式
  • 了解流式输出到 TUI 的过程
  • 学会利用推理链调试问题

一、Responses API

Codex 使用 OpenAI 的 Responses API,这是一个比 Chat Completions API 更强大的接口:

response = client.responses.create(
    model="codex-mini-latest",
    input=messages,
    tools=tools,
    stream=True  # 启用流式
)

与 Chat Completions API 的区别

特性Chat CompletionsResponses
Function Calling
流式响应
Reasoning
多轮对话
结构化输出有限完整

二、流式响应

2.1 响应类型

流式响应包含多种事件类型:

  • message.delta:文本增量,实时显示助手回复
  • function_call.delta:工具调用增量,收集工具请求
  • reasoning.delta:推理过程增量,展示思考过程

2.2 处理流程

Codex 的 TUI 实时处理这些事件:

  1. 收到 message.delta → 立即显示文本
  2. 收到 function_call.delta → 收集完整的工具调用
  3. 收到 reasoning.delta → 显示思考过程

三、推理链

3.1 什么是推理链

推理链是模型的思考过程,展示了模型如何分析问题、制定计划、做出决策。它类似于人类的内心独白。

3.2 推理链的价值

  • 透明度:用户可以看到模型的思考过程
  • 调试:帮助理解模型为什么做出某个决策
  • 学习:从模型的思考方式中学习编程思维
  • 信任:增加对模型决策的信任

3.3 推理链的展示

在 TUI 中,推理链以特殊样式显示:

  • 折叠显示,可展开查看
  • 灰色文字,与正式回复区分
  • 支持搜索和复制

四、流式输出到 TUI

4.1 渲染流程

  1. 收到流式事件
  2. 解析事件类型
  3. 渲染到终端
  4. 更新进度指示器

4.2 代码高亮

代码块在流式输出时实时高亮,使用 rehype-highlight 库。

五、本课小结

要点说明
Responses API支持流式 + reasoning
流式事件message/function_call/reasoning
推理链模型的思考过程
TUI 渲染实时显示 + 代码高亮

下一步

下一课我们将了解安全与沙盒机制。