afd153195979cf57979d5cbc1099f2e84e4832af
实现了 AI 对话、图片识别与营养分析、健康数据管理三大核心功能: - AI 对话:集成豆包大语言模型,支持流式输出和多轮对话 - 图片识别:使用视觉模型识别食物,自动分析卡路里和营养成分 - 健康档案:支持饮食记录、运动记录和数据统计,数据持久化存储 - UI 优化:使用 shadcn/ui 组件库,现代化响应式设计 所有功能已完成开发并通过类型检查。
智能健康管家
基于 AI 驱动的健康管理平台,提供智能对话、图片识别、卡路里计算和健康数据管理功能。
功能特性
1. AI 智能对话
- 基于 LLM 大语言模型的智能对话系统
- 提供专业的健康咨询和建议
- 支持多轮对话,记住上下文
- 流式输出,实时响应
2. 图片识别与营养分析
- 上传食物图片,AI 智能识别食物
- 自动分析营养成分:
- 卡路里
- 蛋白质
- 碳水化合物
- 脂肪
- 膳食纤维
- 使用先进的视觉模型,识别准确
3. 健康数据管理
- 饮食记录:记录每日摄入的食物和营养数据
- 运动记录:记录运动项目和消耗的卡路里
- 数据统计:
- 总摄入卡路里
- 总消耗卡路里
- 净卡路里计算
- 营养成分统计
- 运动时长统计
- 数据持久化存储(localStorage)
4. 用户界面
- 现代化、响应式设计
- 支持深色模式
- 直观的操作界面
- 流畅的交互体验
技术栈
- 框架:Next.js 16 (App Router)
- 语言:TypeScript
- UI 组件:shadcn/ui (Radix UI)
- 样式:Tailwind CSS 4
- 图标:Lucide React
- AI 集成:coze-coding-dev-sdk
- 大语言模型:doubao-seed-1-8-251228
- 视觉模型:doubao-seed-1-6-vision-250815
项目结构
src/
├── app/
│ ├── api/
│ │ ├── chat/ # AI 对话 API
│ │ └── analyze-food/ # 食物分析 API
│ ├── chat/ # AI 对话页面
│ ├── recognition/ # 图片识别页面
│ ├── health/ # 健康档案页面
│ ├── layout.tsx # 根布局
│ └── page.tsx # 首页
└── components/ui/ # shadcn/ui 组件
使用说明
启动开发环境
# 安装依赖(首次运行)
pnpm install
# 启动开发服务器
coze dev
功能使用
1. AI 健康助手
- 点击导航栏的 "AI 对话"
- 输入健康相关问题
- AI 会提供专业的建议和解答
2. 图片识别与营养分析
- 点击导航栏的 "图片识别"
- 上传食物图片
- 点击 "开始分析"
- 查看详细的营养成分信息
3. 健康档案
- 点击导航栏的 "健康档案"
- 在 "饮食记录" 标签页添加饮食数据
- 在 "运动记录" 标签页添加运动数据
- 在 "数据统计" 标签页查看统计信息
API 接口
POST /api/chat
AI 对话接口,支持流式输出
请求体:
{
"message": "用户消息",
"history": [
{
"role": "user",
"content": "历史消息"
}
]
}
响应: SSE 流式输出
POST /api/analyze-food
食物图片分析接口
请求体:
{
"image": "base64 图片数据"
}
响应:
{
"foodName": "食物名称",
"calories": 100,
"protein": 10,
"carbs": 20,
"fat": 5,
"fiber": 2,
"description": "食物描述"
}
数据存储
健康数据使用浏览器的 localStorage 进行本地存储:
dietRecords: 饮食记录exerciseRecords: 运动记录
注意事项
- 图片上传限制:最大 5MB
- 支持格式:JPG、PNG、WebP
- 图片质量:建议使用清晰、光线充足的图片
- 数据安全:所有数据存储在本地浏览器中,不会上传到服务器
开发
类型检查
npx tsc --noEmit
构建生产版本
coze build
启动生产环境
coze start
License
MIT
贡献
欢迎提交 Issue 和 Pull Request!
智能健康管家 - 让 AI 帮助您管理健康生活 🏥💪
Description
Languages
TypeScript
97.1%
CSS
1.9%
Shell
0.8%
JavaScript
0.2%