食刻推荐:基于LangChain+LangGraph的AI美食内容自动化发布系统

📖 项目简介

食刻推荐是一个基于LangChain和LangGraph构建的智能化美食内容自动化发布系统。该系统能够根据当前时间自动判断推荐餐次,生成相应菜谱,创作小红书风格的文案,进行内容审核,并自动生成配图,最终发布到小红书平台。

🚀 核心功能

1. 智能餐次判断

  • 根据当前时间自动判断适合的餐次(早餐/午餐/晚餐/小吃)
  • 考虑中国用户的饮食习惯和作息时间

2. AI菜谱生成

  • 使用Qwen大模型生成适合当前餐次的菜谱
  • 支持多 dish 组合菜谱
  • 可选集成HowToCook MCP工具获取更专业的菜谱数据

3. 平台化文案创作

  • 使用DeepSeek生成小红书风格的美食文案
  • 自动提取和补充话题标签
  • 保持平台特有的表达方式和emoji使用

4. 智能内容审核

  • 使用LongCat进行内容安全审核
  • 不通过时自动重写,避免违规内容
  • 防止重写循环的智能机制

5. 并行图片生成

  • 使用火山引擎Doubao模型生成美食图片
  • 与内容生成并行执行,提高效率
  • 失败时自动兜底处理

6. 一键发布

  • 通过小红书MCP直接发布内容
  • 自动处理标题、正文、标签格式
  • 发布失败时自动尝试重新登录和发布

🏗️ 技术架构

核心技术栈

  • LangChain 1.0.8+ - AI Agent框架
  • LangGraph 1.0.3+ - 工作流编排引擎
  • Python 3.12+ - 编程语言
  • Pydantic 2.12.4+ - 数据验证
  • UV - 现代Python包管理器

多模型架构

系统采用专业化模型分工策略:

模型 用途 优势
Qwen 菜谱生成 结构化输出,中文理解能力强
DeepSeek 文案创作 创意写作,小红书风格优化
LongCat 内容审核 安全检查,文化语境理解
Doubao 图片生成 高质量美食图片生成
GLM 发布协调 API调用,备用LLM能力

工作流设计

不通过
通过
开始
时间检测
菜谱生成
内容创作
图片生成
内容审核
内容重写
收集图片
格式化内容
发布到小红书
完成

📁 项目结构

today_eat_what/
├── main.py                    # 程序入口
├── run.py                     # 启动脚本
├── pyproject.toml            # 依赖配置
├── .env.example              # 环境变量模板
├── README.md                 # 项目文档
└── today_eat_what/           # 核心代码
    ├── __init__.py
    ├── workflow.py            # LangGraph工作流
    ├── config.py              # 配置管理
    ├── models.py              # 数据模型
    ├── clients.py             # API客户端
    ├── services.py            # 业务逻辑
    ├── utils.py               # 工具函数
    └── agents/                # AI Agent
        ├── recipe_agent.py    # 菜谱生成
        ├── content_agent.py   # 内容创作
        ├── audit_agent.py     # 内容审核
        ├── image_agent.py     # 图片生成
        └── publish_agent.py   # 内容发布

🛠️ 快速开始

环境准备

# 安装UV包管理器
pip install uv

# 克隆项目
git clone <repository-url>
cd today_eat_what

# 安装依赖
uv sync

# 配置环境变量
cp .env.example .env
# 编辑.env文件,填入各API密钥

环境配置

.env文件中配置以下API密钥:

# Qwen菜谱生成
QWEN_API_KEY=your_qwen_api_key
QWEN_BASE_URL=https://api.siliconflow.cn/v1
QWEN_MODEL=Qwen/Qwen3-8B

# DeepSeek文案创作
DEEPSEEK_API_KEY=your_deepseek_api_key
DEEPSEEK_BASE_URL=https://api.deepseek.com/v1
DEEPSEEK_MODEL=deepseek-chat

# LongCat内容审核
LONGCAT_API_KEY=your_longcat_api_key
LONGCAT_BASE_URL=https://api.longcat.chat/openai
LONGCAT_MODEL=LongCat-Flash-Chat

# Doubao图片生成
DOUBAO_API_KEY=your_doubao_api_key
DOUBAO_BASE_URL=https://ark.cn-beijing.volces.com/api/v3
DOUBAO_IMAGE_MODEL=doubao-seedream-4-0-250828

# GLM发布协调
GLM_API_KEY=your_glm_api_key
GLM_BASE_URL=https://api.siliconflow.cn/v1
GLM_MODEL=THUDM/GLM-4-9B-0414

# 小红书MCP(可选)
XIAOHONGSHU_MCP_URL=http://localhost:18060/mcp

运行项目

# 方式1:直接运行
python main.py

# 方式2:使用启动脚本
python run.py

# 方式3:使用UV运行
uv run python main.py

💡 核心特性

1. 并行处理优化

系统采用并行处理策略,图片生成与内容创作同时进行,显著提升效率:

# 启动并行图片生成
images_future = executor.submit(image_agent.generate_images, recipe_data)

# 同时处理内容创作
content = content_agent.generate(recipe_data)
audit_result = audit_agent.audit(content)

# 发布前收集图片结果
images = images_future.result(timeout=120)

2. 智能容错机制

  • API降级:当某个API不可用时,自动使用Mock响应继续流程
  • 超时处理:可配置的超时时间,避免长时间等待
  • 重试策略:指数退避重试机制处理临时故障
  • 循环防护:防止内容重写陷入无限循环

3. 成本监控

系统内置成本跟踪功能,实时监控各API调用成本:

cost_tracker = CostTracker()
final_state = run_workflow()
print(f"总成本: {final_state.get('cost'):.4f}")

4. MCP工具集成

支持Model Context Protocol动态工具集成:

# 动态获取工具
tools = await client.get_tools(server_name="howtocook")
agent = create_agent(model=qwen_llm, tools=tools)

🔍 工作流详解

1. 餐次判断节点

def node_determine_meal(state: WorkflowState) -> WorkflowState:
    now = datetime.now()
    meal_type = get_meal_type(now)
    return {
        **state,
        "current_time": now.isoformat(),
        "meal_type": meal_type,
        "cost": cost_tracker.total_cost,
    }

2. 菜谱生成节点

def node_recipe(state: WorkflowState) -> WorkflowState:
    recipe_data = recipe_agent.generate_recipe_tool.invoke({
        "meal_type": state["meal_type"]
    })
    # 并行启动图片生成
    images_future = image_executor.submit(
        lambda: image_agent.generate_images_tool.invoke({
            "recipe": recipe_data
        })
    )
    return {
        **state,
        "recipe_data": recipe_data,
        "images_future": images_future,
        "cost": cost_tracker.total_cost,
    }

3. 内容审核与重写

def audit_decision(state: WorkflowState) -> str:
    if state.get("audit_result"):
        return "publish"
    if state.get("rewrite_attempted"):
        # 已重写过一次仍未通过,直接发布避免死循环
        return "publish"
    return "rewrite_content"

📊 实际运行效果

运行项目时,可以看到完整的工作流程:

2025-11-23 22:23:59,880 [INFO] 当前时间 2025-11-23T22:23,推荐餐次:小吃
2025-11-23 22:24:47,001 [INFO] 生成菜谱:秋季小吃双拼组合
2025-11-23 22:24:47,401 [INFO] 文案生成完成
2025-11-23 22:24:54,041 [INFO] 图片生成完成
2025-11-23 22:24:56,949 [INFO] 内容审核通过
2025-11-23 22:25:01,234 [INFO] 发布到小红书平台

🎯 应用场景

1. 美食博主

  • 自动生成高质量美食内容
  • 保持稳定的更新频率
  • 减少内容创作的时间成本

2. 餐饮企业

  • 自动化社交媒体运营
  • 批量生成菜品推广内容
  • 统一的内容风格和质量

3. 生活方式品牌

  • 美食相关内容营销
  • 节日主题内容策划
  • 用户互动内容生成

🔮 未来扩展

1. 多平台支持

  • 扩展到抖音、微博、微信公众号等平台
  • 平台特定的内容格式优化

2. 个性化推荐

  • 基于用户偏好调整菜谱和内容
  • 学习历史数据优化推荐算法

3. 数据分析

  • 内容表现数据分析
  • 用户互动效果追踪
  • ROI计算和优化建议

📝 总结

食刻推荐项目展示了如何利用现代AI技术构建完整的自动化内容生产系统。通过LangChain和LangGraph的强大能力,结合多个专业化的AI模型,实现了从创意生成到内容发布的全流程自动化。

该项目的核心价值在于:

  • 效率提升:自动化处理繁琐的内容创作流程
  • 质量保证:专业化模型确保内容质量
  • 成本优化:并行处理和智能降级降低运营成本
  • 扩展性强:模块化设计便于功能扩展

通过这个项目,我们可以看到AI Agent在内容创作领域的巨大潜力,也为其他垂直领域的自动化内容生产提供了很好的参考范例。


项目地址食刻推荐
技术栈:LangChain + LangGraph + 多模型架构
适用场景:美食内容自动化、社交媒体运营、AI内容生成

如果你对AI Agent和自动化内容生成感兴趣,这个项目绝对值得深入研究和学习

🤝 交流

欢迎在评论区分享你的想法和建议,或者提出你在AI内容生成方面的经验和问题!

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐