feat(v3): T29 token 级流式输出(SSE 流式解析 + delta 事件 + 打字机渲染,D10)
- OpenAICompatChat 默认 stream=True:httpx 流式解析 OpenAI chunk, tool_calls 碎片按 index 组装(不在正文展示),include_usage 计量; 失败自动回退非流式一次(已有部分增量输出则如实抛出); 补 raise_for_status(修复流式 4xx 误入回退的缺陷) - ToolLoop 增 on_delta(签名探测兼容 2/3 参 chat_fn);_loads_json_object 宽松解析 - DeltaThrottle >=48 字符节流落 delta 事件;单模型与两级模式(含规划者)接线 - 前端:streamText 打字机渲染 + 光标动画;工具/阶段事件到达时清空归档 - 配套修复:AgentView 闭包持有 push 前原始对象导致响应式丢失、过程事件不渲染 - 测试 +7(SSE 解析/碎片组装/回退/部分失败抛出/on_delta/节流/service delta 事件), 全量 296 passed
This commit is contained in:
@@ -360,8 +360,9 @@ async function send() {
|
||||
}
|
||||
|
||||
messages.value.push({ role: 'user', content: task })
|
||||
const aiMsg: ChatMsg = { role: 'assistant', content: '', liveEvents: [] }
|
||||
messages.value.push(aiMsg)
|
||||
messages.value.push({ role: 'assistant', content: '', liveEvents: [] })
|
||||
// 关键:取响应式代理对象(闭包持原始对象会丢失响应式,过程事件不渲染)
|
||||
const aiMsg = messages.value[messages.value.length - 1] as ChatMsg
|
||||
scrollToBottom()
|
||||
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user