Skip to content

CookHero

CookHero是一个基于 LLM + RAG + Agent + 多模态的智能饮食与烹饪管理平台,支持智能菜谱查询、个性化饮食计划、AI 饮食记录、营养分析、Web 搜索增强,以及可扩展的 ReAct Agent / Subagent 工具体系,帮助厨房新手轻松成为“烹饪英雄”。

Install

$git clone https://github.com/Decade-qiu/CookHero

Install command taken from the project's README or registry entry. Always review code before running it.

智能烹饪与饮食管理助手 · 你的个性化饮食英雄

简体中文 | English



📖 项目简介

CookHero(烹饪英雄)是一个融合 LLM、RAG、Agent、多模态与营养数据分析的个性化饮食管理平台。它不仅是菜谱库,更是一位能陪你做计划、做记录、看数据、给建议的“饮食管理英雄助手”,帮助你把烹饪与健康目标变成可执行的日常。

  • 🔍 智能问答:解答烹饪技巧、食材搭配、营养知识等问题
  • 🍽️ 个性化推荐:根据口味、目标和限制提供更贴合的菜品选择
  • 🗓️ 饮食计划:按周规划三餐与加餐,形成可执行的饮食节奏
  • 🧾 AI 记录:文字/图片一键记录,自动估算热量与宏量营养
  • 📊 营养分析:每日/每周统计与计划偏差分析,持续优化习惯
  • 🧠 深度理解:多轮对话理解用户意图,输出精准行动建议
  • 🌐 实时搜索:结合 Web 搜索获取最新烹饪资讯和趋势

CookHero 面向厨房新手、健身/减脂/控糖人群、健康饮食倡导者、过敏体质用户及家庭场景,致力于让烹饪更专业、更智能、更可持续。

内部自带的食谱来源于Anduin2017/HowToCook,感谢该项目的贡献者!


⚡ 技术亮点

  • LLM + RAG 混合检索:向量 + BM25 + Reranker 组合,配合多级缓存提速
  • Agent ToolHub:ReAct 推理 + 工具调用,支持 MCP 动态扩展
  • Subagent 专家体系:内置 + 用户自定义子代理,按需启用与编排
  • 多模态解析:图片识别与饮食记录联动,覆盖烹饪与记录场景
  • 评估与可观测性:RAGAS 质量评估 + LLM 使用统计 + 可视化看板
  • 安全与合规:提示词注入防护、速率限制、结构化审计日志
  • 现代化全栈:FastAPI + React + PostgreSQL + Milvus + Redis + MinIO

✨ 核心功能

1. Agent 智能饮食管家

  • ReAct 模式:实现推理 + 行动循环,支持自主决策和工具调用
  • 多模态支持:支持上传图片,图片自动上传到 imgbb 持久化存储
  • 用户画像集成:自动读取用户画像和长期指令,提供个性化饮食管理服务
  • Subagent 子代理:内置/自定义专家可作为工具被调用,独立 system prompt 与工具集
  • Subagent 管理:个人中心创建/启用/禁用,工具选择器支持 Agents 面板
  • 内置工具:
    • 饮食工具:计划管理、饮食记录、营养分析
    • 知识库检索:调用内置 RAG 检索并返回可引用来源
    • Web 搜索:集成 Tavily 搜索引擎,联网查询实时信息
    • AI 图片生成:基于 DALL-E 3 等模型生成图片,自动上传到 imgbb 持久化
    • 计算器:数学计算
    • 日期时间:获取当前时间、时区转换
  • MCP 协议支持:支持用户自定义 MCP 服务器并配置鉴权头
  • 可扩展架构:通过 AgentHub 统一管理 Agent、Tool 和 Provider
  • 上下文压缩:自动压缩长对话历史,减少 Token 消耗
  • 实时反馈:SSE 事件流,实时展示工具调用过程和结果
  • 执行追踪:主 Agent 与 Subagent 轨迹分层展示,支持调试分析
  • 工具选择:前端可动态选择工具与子代理

2. 饮食计划与记录

  • 周视图管理早餐/午餐/晚餐/加餐,形成可执行的饮食计划
  • 计划餐次自动汇总热量与宏量营养
  • 一键标记已吃,计划自动转化为真实记录
  • AI 解析文字/图片饮食描述,自动估算营养信息
  • 支持餐次更新、复制与备注管理

3. 营养分析与目标追踪

  • 每日/每周营养总览(热量、蛋白、脂肪、碳水)
  • 计划 vs 实际偏差分析,识别饮食习惯波动
  • 目标管理:卡路里/蛋白/脂肪/碳水目标
  • 数据来源标记:手动、AI 文本、AI 图片

4. 智能对话式菜谱查询

  • 自然语言理解用户需求(如"我想做一道低脂高蛋白的晚餐")
  • 支持多轮对话,记录上下文历史
  • 自动识别用户意图(查询、推荐、闲聊等)
  • 流式响应,支持实时显示生成内容

5. 个性化知识库

  • 用户可上传私人食谱,系统自动分析并索引
  • 全局食谱库(来自 HowToCook)与个人食谱融合查询
  • 支持 Markdown 格式食谱的智能解析

6. 混合检索与重排序

  • 向量检索:语义相似度匹配(基于 Milvus)
  • BM25 检索:关键词精确匹配
  • 元数据过滤:根据烹饪时间、难度、营养成分等筛选
  • 智能重排序:使用 Reranker 模型(如 Qwen3-Reranker)对结果二次精排
  • 多级缓存:Redis + Milvus 双层缓存,提升响应速度

7. 多模态支持

  • 图片识别:支持上传食材/菜品/饮食图片进行智能识别
  • 意图理解:结合图片和文字理解用户完整意图
  • 多种场景:菜品识别、食材识别、烹饪指导、饮食记录、食谱查询
  • 灵活接入:支持 OpenAI 兼容的视觉模型 API
  • 图片限制:最多 4 张、单张 10MB(Agent/饮食记录场景)

8. RAG 评估系统

  • 质量监控:基于 RAGAS 框架的自动化评估
  • 核心指标:忠实度(Faithfulness)、答案相关性(Answer Relevancy)
  • 异步评估:后台异步执行,不影响响应速度
  • 趋势分析:支持评估趋势查看和质量告警
  • 数据持久化:评估结果存储于 PostgreSQL

9. LLM 使用统计

  • 实时监控:跟踪每个请求的 Token 使用量
  • 性能指标:记录响应时间、思考时间、生成时间
  • 统计分析:按用户、会话、模块统计使用情况
  • 工具追踪:记录 Agent 工具调用名称
  • 可视化展示:前端提供 LLM 统计数据页面

10. 安全防护体系

  • 多层防护:输入验证 → 模式检测 → LLM 深度检测
  • 提示词注入防护:基于规则和 AI 的双重检测机制
  • 速率限制:Redis 滑动窗口算法,按端点类型区分限制
  • 账户安全:登录失败锁定、JWT 过期策略、安全响应头
  • 敏感数据保护:日志脱敏、API Key 过滤
  • 安全审计:结构化 JSON 审计日志,支持 SIEM 系统对接

📖 详细安全架构请参阅 安全策略文档


🚀 快速开始

前置要求

  • Python:>= 3.12
  • Node.js:>= 18
  • Docker 和 Docker Compose(推荐)

方法一:Docker 一键部署(推荐)

  1. 克隆项目

    git clone https://github.com/Decade-qiu/CookHero.git
    cd CookHero
    
  2. 配置环境变量

    cp .env.example .env
    # 编辑 .env 文件,填入必要的 API Key
    

Similar plugs

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

Java 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发

Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype…

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io