AI系统性能监控平台架构设计与实践
2026/10/26 8:35:18
一句话总览(先给结论)
前端 AI 的本质不是“训练模型”,而是:
调用大模型 / 图像模型 API
处理流式数据(Streaming)
实时渲染结果(文本 / 图片)
前端 ↓ prompt 后端(BFF) ↓ AI 模型(文生图) ↓ 图片 URL / Base64 ↓ 前端展示📌前端不直接调用模型(安全 & Key)
| 模型 | 特点 |
|---|---|
| Stable Diffusion | 最常见 |
| SDXL | 高清 |
| DALL·E | 简单易用 |
| Midjourney | 效果好(非 API) |
{ "url": "https://xxx/image.png" }<img src={url} />✔ 省内存
✔ 易缓存
<img src={`data:image/png;base64,${base64}`} />📌 用于:
私有图片
临时生成
Skeleton / Spinnern = 4{ prompt, size, style, seed }前端负责 Prompt 构建、任务状态、图片展示和用户交互,
生成过程放在后端或云服务。
这是ChatGPT 那种“一个字一个字出来”效果。
HTTP 长连接 + 分段返回
Server-Sent Events(SSE)
或 Fetch Stream
或 WebSocket(少用)
data: 你 data: 好 data: , data: 世 data: 界const eventSource = new EventSource('/api/chat'); eventSource.onmessage = (e) => { setText(prev => prev + e.data); }; eventSource.onerror = () => { eventSource.close(); };✔ 简单
✔ 稳定
✔ ChatGPT 同款
const res = await fetch('/api/chat'); const reader = res.body.getReader(); const decoder = new TextDecoder(); while (true) { const { value, done } = await reader.read(); if (done) break; setText(prev => prev + decoder.decode(value)); }🔥 优点:
可控性强
易和业务结合
requestAnimationFrame
节流更新
scrollIntoView()controller.abort();用户输入 Prompt
文本 → 流式输出
检测到「生成图片意图」
触发文生图
图片异步插入
📌真实产品都这么做
React / Next.js Fetch Stream / SSE Markdown 渲染 代码高亮 图片懒加载 虚拟列表SSE / Fetch 更轻量,符合请求-响应模型。
会,需要节流、批量更新。
禁用按钮 + AbortController。
Key 全部在后端,前端只拿结果。
前端 AI 的核心是流式交互和用户体验,
图片生成和文本生成本质都是异步任务,
前端通过流式渲染让用户“感觉更快”。
你如果能在面试中说清楚:
Fetch Stream / SSE
文生图展示
中断、状态管理、体验优化