Skip to content

2026-03-29 工作项目记录

kitchen-ai-demo 项目升级 ⭐ 今日重点

项目背景

厨房改造 AI 方案助手,原为单轮问答系统,升级为多轮对话 + 图片分析 + 方案生成系统。

服务架构

kitchen-ai-demo (Python FastAPI, 8000)
       ↓ 调用 /api/generate-image
content-center (Node.js Express, 3001)
       ↓ 根据配置选择即梦
jimeng-free-api-all (Node.js, 8001)

集成方案决策

方案说明优缺点
方案 AHTTP API 直接调用✅ 简单直接,改动最小
方案 B图片服务独立化解耦彻底,但需额外维护
方案 CPython 直接调用 GRS配置重复,能力分散

选择方案 A - 在 content-center 加专用 API,kitchen-ai-demo 直接调用。

图片生成服务选择

服务优点缺点
GRS已集成中文效果差,易被拦截
即梦中文友好,免费需要部署 jimeng-free-api-all

选择即梦作为主要图片生成服务

Phase 1 完成 ✅

功能说明
多轮对话系统支持上下文记忆,会话管理
图片上传功能用户可上传自家厨房照片
图片理解qwen-vl-plus 分析厨房布局、设施、问题
方案生成基于用户户型和 RAG 知识库
状态机管理IDLE → COLLECTING_INFO → CONFIRMING_PLAN → GENERATE_IMAGE

新增 API

接口方法说明
/api/chatPOST多轮对话主接口
/api/upload-imagePOST上传厨房图片
/api/sessions/newPOST创建新会话
/api/sessions/{id}GET获取会话状态
/api/sessions/{id}DELETE删除会话
/api/generate-imagePOST生成效果图

文件变更

kitchen-ai-demo:

  • demo_api.py - 重构,新增多轮对话、图片分析、会话管理
  • demo.html - 重构,改为聊天式交互界面
  • image_client.py - 新增,图片生成客户端
  • docs/decisions/ - 新增,设计决策记录目录

content-center:

  • backend/src/routes/image.ts - 新增,图片生成 API 路由
  • backend/src/server.ts - 注册新路由

jimeng-free-api-all:

  • configs/dev/service.yml - 端口从 8000 改为 8001
  • package.json - dev 脚本端口从 8000 改为 8001

Git 提交

  • 分支:feature/content-center-integration
  • 5e4c406 feat: 集成 content-center 图片生成能力
  • c93535e feat: 升级为多轮对话 + 图片分析 + 局部重绘
  • 891af0f docs: 添加设计决策记录

Phase 2 待做

  • [ ] 局部重绘精度优化(目前是整图重绘)
  • [ ] 考虑 Stable Diffusion Inpaint 方案
  • [ ] 扩充 RAG 知识库数据
  • [ ] 添加流式输出改善用户体验

晚间优化工作 (20:30-22:47)

前端交互优化

问题: 上传图片后直接触发对话,用户无法补充描述

解决方案:

  • 图片上传后显示预览,不自动发送
  • 用户可在输入框补充文字
  • 点击发送按钮一起发送(图片 + 文字)

文件变更:

  • demo.html - 重构输入区域,添加图片预览行

响应速度优化

问题: 每次对话需 20-30 秒,用户体验差

优化措施:

优化项方法节省时间
意图识别规则匹配代替 LLM2-3秒
RAG 查询跳过简单对话 + local 模式5-10秒
简单问候直接返回固定回复8-10秒
上下文缩减限制历史消息和 RAG 长度1-2秒

优化结果:

  • 简单问候:~20秒 → ~11秒
  • 带 RAG 查询:~25秒 → ~15秒

代码变更:

  • demo_api.py - 新增 quick_intent_detect()extract_entities() 函数
  • 简单问候直接返回固定回复,不调用 LLM

图片生成问题修复

问题 1: HTTP 413 请求体太大

  • 用户图片 1.4MB,base64 编码后超过限制

解决方案:

  • 新增 compress_image() 函数,压缩图片到 400KB 以下
  • 修改 content-center 请求限制到 50MB

问题 2: 即梦 sessionId 过期

  • 服务运行超过 3 小时,sessionId 失效

解决方案:

  • 更新 sessionId: a5bfc31b97abfb8ef3b7031a8b8d3250
  • 重启即梦服务

最终测试: ✅ 图片生成成功

  • taskId: jimeng-1774795633427
  • imageUrl: https://p26-dreamina-sign.byteimg.com/...

近期工作回顾

  • AI客服项目:完成 Excel 绩效数据校验工具开发,输出不一致结果高亮标注
  • AI营销项目:完成云服务选型对比(火山引擎、阿里云、腾讯云),域名服务商对比分析
  • Dify 工作流:解决异步处理问题,提供三种架构方案供选择

记录时间:2026-03-29 22:47