LangGraph实战训练营-打造 WhatsApp 全自动消息收发AI智能助手
文章目录
- 1. 项目概述
- 1.1 项目背景
- 1.2 核心功能
- 1.3 技术栈选型
- 1.4 应用场景
- 2. 环境搭建
- 2.1 系统要求
- 硬件要求
- 软件依赖
- 2.2 安装步骤
- 步骤一:安装基础工具
- 步骤二:安装 Docker
- 步骤三:安装 Node.js 和 npm
- 步骤四:安装 Python 和 uv
- 2.3 获取项目源码
- 2.4 环境变量配置
- 复制并编辑环境变量模板
- 环境变量详解(`.env` 文件)
- WhatsApp 暴露模式详解
- 2.5 创建工作区目录
- 3. 项目结构解析
- 3.1 目录结构总览
- 3.2 关键文件详解
- 📄 `AGENTS.md` — Agent 人格与指令定义
- 📄 `docker-compose.yml` — 容器编排配置
- 📄 `Dockerfile` — 镜像构建脚本
- 📄 `.env.example` — 环境变量参考模板
- 📄 `package.json` — WhatsApp Bridge 依赖
- 📄 `pyproject.toml` — Talon Python 包配置
- 4. 核心原理讲解
- 4.1 架构设计概览
- 4.2 核心组件原理
- 4.2.1 WhatsApp Bridge 机制
- 4.2.2 语音转录 (ASR) 管线
- 4.2.3 Cron 定时任务机制
- 4.2.4 Agent Harness 架构(LangGraph)
- 5. 基础使用指南
- 5.1 方式一:Docker 部署(推荐新手)
- 完整操作流程
- 启动后的日志输出示例
- 扫码配对步骤(图文说明)
- 发送第一条消息
- 5.2 方式二:本地运行(无 Docker)
- 完整操作流程
- 本地运行的注意事项
- 5.3 停止服务
- 5.4 重新构建镜像
- 6. 功能模块示例
- 6.1 基础对话示例
- 示例 1:简单问答
- 6.2 文件操作示例
- 6.3 语音消息处理示例
- 6.4 Cron 定时任务示例
- 6.5 自定义 AGENTS.md 示例
- 6.6 LangSmith 追踪配置示例
- 7. 最佳实践
- 7.1 安全最佳实践
- ✅ 推荐做法
- ❌ 避免的做法
- 7.2 性能优化建议
- ASR(语音转录)优化
- Docker 优化
- 模型选择建议
- 7.3 运维最佳实践
- 数据备份
- 日志管理
- 健康检查
- 7.4 开发调试技巧
- 8. 常见问题解答
- Q1: QR 码扫描失败怎么办?
- Q2: 出现 "Session expired" 错误
- Q3: Agent 没有回复我的消息
- Q4: 语音消息没有被转录
- Q5: Docker 构建失败
- Q6: 如何更换 AI 模型?
- Q7: 如何查看 Agent 的思考过程?
- Q8: 如何让多人都能与 Agent 交互?
- Q9: 如何更新到最新版本?
- Q10: Token 用量过高怎么办?
- 附录
- A. 快速命令参考卡
- B. 环境变量速查表
1. 项目概述
1.1 项目背景
项目展示了如何将AI 智能体(Agent)与WhatsApp 即时通讯平台进行深度集成,实现一个可以自动接收、处理和回复 WhatsApp 消息的智能助手系统。
⚠️ 实验性声明:Talon 是一个实验性运行时(Experimental Runtime),其 API 和功能可能随时发生变化或被移除。请关注官方更新。
1.2 核心功能
| 功能模块 | 描述 |
|---|---|
| WhatsApp 桥接 | 通过whatsapp-web.js库连接 WhatsApp Web,实现消息收发 |
| AI 对话引擎 | 基于 Deep Agents 框架,支持多轮对话、工具调用、子代理委托 |
| 语音转文字 (ASR) | 集成 NVIDIA Parakeet 模型,支持 WhatsApp 语音消息的本地转录 |
