# 展会策划 AI 多智能体演示系统项目总结 ## 项目概述 - **项目名称**: 展会策划 AI 多智能体协作演示系统 - **开发时间**: 2025-09-08 - **项目路径**: `/Users/xiaoqi/Documents/Dev/Project/2025-09-08_n8nDEMO演示/web_frontend/exhibition-demo` - **技术栈**: React 18 + TypeScript + Tailwind CSS + Framer Motion + Zustand + Vite - **部署端口**: 4173 ## 核心功能实现 ### 1. 多智能体架构 系统包含 7 个专业 AI Agent: - **信息检索专家** (DeepSeek Chat Model5): 市场调研、数据收集、竞品分析 - **设计专家** (Google Gemini Chat Model2): 视觉设计、空间布局、品牌形象 - **财务预算专家** (DeepSeek Chat Model2): 成本核算、预算规划、ROI分析 - **格式编辑专家** (DeepSeek Chat Model4): 文档格式化、内容结构优化 - **活动执行专家** (DeepSeek Chat Model1): 执行计划、时间线管理、任务分配 - **营销宣传专家** (DeepSeek Chat Model3): 推广策略、媒体规划、品牌传播 - **会展策划专家** (Chat Models + Memories): 中央协调、方案整合、决策支持 ### 2. 终端模拟系统 - **打字机效果**: 30-40字/秒的输出速度 - **进度条系统**: 实现了真实的卡顿效果(在15%, 40%, 68%, 90%位置) - **内容类型**: 支持文本、图片、进度条、结构化数据等多种输出 - **滚动控制**: 自动滚动到最新内容,支持手动滚动查看历史 ### 3. 用户交互流程 1. **需求输入模态框** (`RequirementModal.tsx`) - 预设新能源汽车展模板 - 支持自定义需求输入 2. **执行过程展示** (`WorkflowPageV4.tsx`) - 左侧嵌入 n8n 工作流可视化 - 右侧终端实时输出 - Agent 头像和状态显示 3. **结果展示模态框** (`ResultModal.tsx`) - 显示生成统计(68页文档、3分钟生成、30% ROI) - 章节完成状态 - 查看详情和下载选项 ### 4. 图片加载优化 - **骨架屏加载**: 简单的灰色渐变动画 - **同步加载**: 后续内容等待图片加载完成 - **图片来源**: 使用实际展会策划文档中的图片 ## 关键技术实现 ### 状态管理 (Zustand) ```typescript // store/demoStore.ts export interface Agent { id: string; name: string; icon: string; avatar?: string; model: string; role: string; status: 'waiting' | 'thinking' | 'generating' | 'done'; } ``` ### 进度条卡顿效果 ```typescript const stutters = [15, 40, 68, 90]; if (stutters.includes(progress)) { await new Promise(resolve => setTimeout(resolve, getRandomDelay(1000, 3000))); } ``` ### 图片加载控制 ```typescript const handleImageLoad = (lineId: string) => { setImageLoadingStates(prev => ({ ...prev, [lineId]: false })); // 图片加载完成后才继续执行 setImageLoadComplete(true); }; ``` ## 项目文件结构 ``` exhibition-demo/ ├── src/ │ ├── pages/ │ │ └── WorkflowPageV4.tsx # 主演示页面(最终版本) │ ├── components/ │ │ ├── RequirementModal.tsx # 需求输入 │ │ └── ResultModal.tsx # 结果展示 │ ├── store/ │ │ └── demoStore.ts # 状态管理 │ └── App.tsx ├── public/ │ ├── agents/ # Agent 头像 │ └── images/ # 展会图片资源 └── vite.config.ts # 端口配置 4173 ``` ## 开发过程中的关键优化 ### 迭代历史 - **V1**: 基础框架,缺少完整演示流程 - **V2**: 添加嵌入式 n8n 工作流,终端风格执行 - **V3**: 修复滚动问题,添加进度条和 Agent 头像 - **V4**: 实现真实进度条效果,添加需求/结果模态框(最终版本) ### 解决的问题 1. **滚动条问题**: 添加 `max-height: calc(100vh - 200px)` 和自定义滚动条样式 2. **进度条真实性**: 改为覆盖式更新(updateProgressLine)而非追加 3. **图片加载闪烁**: 添加骨架屏和同步等待机制 4. **模态框触发**: 修正 useEffect 条件判断(currentAgentIndex >= 0) 5. **TypeScript 类型错误**: 修正 NodeJS.Timeout 为 number 类型 ## 部署和运行 ```bash # 安装依赖 cd web_frontend/exhibition-demo pnpm install # 开发模式 pnpm dev # 生产构建 pnpm build # 预览(端口 4173) pnpm preview ``` ## 项目亮点 1. **完整的多智能体协作演示**: 真实模拟 AI 团队协作过程 2. **优秀的用户体验**: 流畅的动画、真实的执行效果 3. **现代化技术栈**: React 18 最新特性、TypeScript 类型安全 4. **可扩展架构**: 易于添加新的 Agent 或修改执行流程 5. **视觉效果**: 干净现代的设计,避免丑陋的渐变色 ## 相关资源 - n8n 工作流地址: http://localhost:5678/workflow/XbfF8iRI4a69hmYS - 展会策划文档: `/web_frontend/data/会展策划/汽车展会展策划案_DEMO.md` - Git 分支: Web_Create - 最新提交: c0644d4b (2025-09-08) ## 重要配置 - Vite 配置使用端口 4173 - n8n 服务运行在端口 5678 - 图片资源路径: public/images/ - Agent 头像路径: public/agents/ ## 未来优化建议 1. 可以添加更多的 Agent 类型 2. 支持自定义执行流程 3. 添加导出功能(PDF、Word) 4. 集成真实的 AI API 调用 5. 支持多语言界面