Skip to content

feat(ai): AI Chat 进度反馈优化 - 消除等待焦虑 #89

@hrygo

Description

@hrygo

问题描述

用户发送 AI 聊天消息后,存在 5-10 秒的空白等待期,期间没有任何视觉反馈,导致"等待焦虑":

  • 死寂感:发送后完全没反应,不知道系统是否收到
  • 无进度感:长任务(如模糊查询、复杂任务)看不到进度,不知道还要等多久

解决方案

在 AI 响应的空白期主动推送进度事件,前端实时显示处理状态。

核心改进

  1. 即时确认:200ms 内确认消息已接收
  2. 进度可视化:显示路由、检索、生成各阶段进度
  3. 状态反馈:明确告知当前正在做什么

新增事件类型

事件 数据 用途
received timestamp 确认收到
routing_start layer 路由开始
routing_end agent, duration_ms 路由完成
tool_progress name, current, total 工具进度

前端 UI

  • 状态徽章:发送中 → 已接收 → 理解中 → 思考中
  • 进度条:显示路由/检索/生成各阶段
  • 工具卡片:显示工具执行进度

实现阶段

  • Phase 1: 后端进度事件 (2-3小时)
  • Phase 2: 前端进度组件 (3-4小时)
  • Phase 3: 优化与降级 (1-2小时)

相关文档

  • 设计文档: docs/plans/2026-02-07-ai-chat-progress-design.md
  • 实现计划: docs/plans/2026-02-07-ai-chat-progress-impl.md

预期效果

时间轴:
0ms    用户发送 → 消息上屏 + "发送中"
50ms   服务器确认 → "已接收"
100ms  路由开始 → "理解中..."
200ms  路由完成 → "已路由到 灰灰"
500ms  工具调用 → "正在搜索笔记..."
1000ms LLM 开始流式输出

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions