Thriving Thriving Python PY TypeScript TS
↑ 36 ?
zhishan-ai-cooking-agent Wangdake00/zhishan-ai-cooking-agent

智膳 AI is a multimodal conversational Agent application for everyday cooking. Users can upload photos of ingredients or type text requests. The system automatically recognizes intent and calls the matching tools (recipe knowledge base retrieval, nutrition calculation, shopping list generation, web search, recipe favoriting), and returns results in a streaming fashion. What sets this project apart from an ordinary demo is that it does not use `create_react_agent` as a one-line shortcut. Instead, it hand-builds a **three-path explicit workflow** on LangGraph `StateGraph`, with intent routing, toolsets, and System Prompts isolated per node. It also implements engineering designs such as **closure-level user identity binding**, **full-chain RAG degradation**, and **two-layer anti-hallucination for tool parameters**, so the Agent stays controllable, usable, and within its permissions during open-ended conversation.

Translated from Chinese by Claude · original on GitHub ↗

HEALTH ? 75 / Stable
// solo builder// hidden gem ?

// readme

智膳 AI|Multimodal Intelligent Cooking Conversational Agent

An intelligent cooking assistant that combines multimodal large models, six-stage RAG retrieval, an explicit LangGraph Agent Workflow, deterministic Grounding for anti-hallucination, and tool-calling capabilities. It supports recognizing ingredients from images, voice input, recipe recommendations, nutrition calculation, shopping list generation, one-click favoriting, and cross-session dietary preference memory.

Project Overview

智膳 AI is a multimodal conversational Agent application for everyday cooking. Users can upload photos of ingredients, speak by voice, or type text requests. The system automatically recognizes intent and calls the matching tools (recipe knowledge base retrieval, nutrition calculation, shopping list generation, web search, recipe favoriting). It remembers users’ long-term preferences such as dietary restrictions and allergies across multiple conversation turns, and returns results in a streaming fashion.

What sets this project apart from an ordinary demo is that it does not use create_react_agent as a one-line shortcut. Instead, it hand-builds a three-path explicit workflow on…