Whatsapp-Langgraph-Agent-Integration
基于 LangGraph + Groq 的 WhatsApp AI 心理咨询师,支持文字和语音多模态对话
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
基于 LangGraph + Groq 的 WhatsApp AI 心理咨询师,支持文字和语音多模态对话
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
凌晨两点,阿德里亚诺失眠了。他拿起手机,打开 WhatsApp,给一个叫"Dr. Sofia"的心理咨询师发了一条消息:"我又睡不着了,感觉自己对什么都提不起兴趣。"
几秒钟后,Dr. Sofia 回复了——语气温暖,像一位真实的朋友。她没有给出千篇一律的建议,而是耐心地引导阿德里亚诺说出自己的感受,帮他梳理近期的生活压力。
这不是一位真正的人类咨询师。Dr. Sofia 是一个基于 LangGraph + Groq LLM 构建的 WhatsApp AI Agent,由巴西独立开发者 lucasboscatti 于 2025 年 2 月发布——118 颗 GitHub Stars,32 个 Fork,Topic 覆盖 langgraph、fastapi、groq、whatsapp-bot 等多个技术领域。

Dr. Sofia 的"大脑"是一个用 LangGraph 构建的极简状态机。LangGraph 是 LangChain 团队推出的一个框架,专门用于构建有状态、多步骤的 AI Agent 工作流。相比 LangChain 的线性链式调用,LangGraph 支持节点(Node)和边(Edge)的图结构定义,可以更灵活地处理复杂对话逻辑和分支场景。
在这个项目中,状态机只有两个节点:START → assistant → END。看起来简单,但背后有几个关键设计:
PostgreSQL Checkpointing(状态持久化)
LangGraph 自带内存 checkpoint 机制,但生产环境用的是 AsyncPostgresSaver——所有对话状态(包括历史消息、thread_id)全部持久化到 PostgreSQL。这意味着用户和 Dr. Sofia 的对话不会因为服务重启而丢失,可以实现跨 session 的上下文连续性。
消息聚合缓冲
WhatsApp 用户可能短时间内连续发多条消息。项目通过 asyncio.sleep(WAIT_TIME) 实现消息聚合:将一段时间内的多条消息合并处理,减少 LLM 调用次数,节省 Groq API 费用。
流式响应 + 实时推送
LangGraph 支持 astream() 流式输出,Agent 生成的每个响应块都会通过 process_chunks() 实时推送到 WhatsApp 用户端——用户看到的是"逐字出现"的效果,而非等待完整回答。
Dr. Sofia 的技术架构可以用四个模块来概括:
对话引擎:LangGraph 0.2.74,状态机编排、多轮对话管理 LLM 后端:Groq Llama-3.3-70b-specdec,自然语言理解和生成 语音处理:OpenAI Whisper Large v3 + gTTS,语音转文字、文字转语音 WhatsApp 集成:WPPConnect Server + FastAPI,消息收发、Webhook 接收 数据持久化:PostgreSQL + psycopg3,对话历史、checkpoint
Groq 是一个专注于 LLM 推理加速的云平台,提供 Llama、Mistral 等开源大模型。其 LPU(Language Processing Unit)推理引擎在某些任务上比 H100 GPU 快 10 倍以上,且提供免费 Tier(每分钟 30 次请求)。Whisper Large v3 则由 Groq 的 Whisper API 驱动,将用户发送的语音消息转录为文字。
Dr. Sofia 不是一个"一键部署"的项目。根据 README,你需要同时启动两套服务:
Node.js WPPConnect Server(端口 21465):处理 WhatsApp 协议,接收/发送消息,需要 npm 安装并通过 Swagger UI 配置 Python FastAPI 服务(端口 8000):接收 WPPConnect 转发的 Webhook,运行 LangGraph Agent
此外还需要 PostgreSQL 数据库(首次运行需手动执行 checkpointer.setup() 建表)、Groq API Key(免费申请),以及扫码绑定一个 WhatsApp 账号。
README 的安装步骤写得相当详细,涵盖了从 npm 依赖安装到扫码绑定的全流程。但对于非 Node.js 开发者来说,"启动 WPPConnect Server"这一步可能略显陌生。
将 AI Agent 落地到 WhatsApp 平台是个聪明的选择。WhatsApp 在拉美、中东、东南亚拥有超过 20 亿月活用户,是许多国家最主流的通讯工具。用户不需要安装任何额外 App,直接用自己习惯的聊天软件就能接触 AI 服务。
心理咨询是一个典型的"高频、低门槛、隐私敏感"场景:用户可能随时需要倾诉,不需要预约等待,也不希望面对面交流的心理压力。而 AI 可以 24 小时在线,语气始终温和,不会评判。
当然,这不是专业的心理治疗工具。README 明确提示:Dr. Sofia 提供的是"初步情感支持"(initial emotional support and guidance),而非正式的临床心理咨询。对于严重心理健康问题,用户仍需寻求专业帮助。
Dr. Sofia 也面临着几个现实挑战:
部署门槛高:无 Dockerfile、无 Docker Compose,WPPConnect 需要 Node.js 环境,WhatsApp 扫码需要真实手机。对于没有技术背景的用户来说,"同时启动两个服务"本身就是一道门槛。
Groq API 依赖:所有对话处理都依赖 Groq 的云端 API。虽然 Groq 有免费额度,但生产环境大规模使用需要付费。对话中的语音转写(Whisper)也消耗 API 额度。
WhatsApp 封号风险:WPPConnect 属于非官方 WhatsApp 协议实现,存在被封号的风险。项目明确提示需要单独申请一个 WhatsApp 账号作为"机器人账号",不建议使用个人主号。
缺乏测试和 CI/CD:代码库中没有任何测试文件,也没有 GitHub Actions 等 CI/CD 配置。这意味着代码更新后没有自动化验证,存在一定风险。
Dr. Sofia 是一个将前沿 AI 技术(LangGraph + Groq + Whisper)落地的真实案例,聚焦在心理健康陪聊这一温暖的应用场景。代码架构清晰,但部署复杂度限制了它的普及速度。如果你想学习如何用 LangGraph 构建有状态的对话 Agent,或探索 WhatsApp 平台上的 AI 应用,这个项目值得一探。
技术维度上,该项目架构类型为事件驱动 + 状态机工作流,采用分层架构(webhook 接收层 → 消息聚合缓冲层 → LangGraph 状态机执行层 → WhatsApp 响应层),主力技术栈为 Python + FastAPI + LangGraph + Groq API + PostgreSQL + WPPConnect。代码质量评分 7/10(满分10分),无测试文件无 CI/CD,文档质量中等。AI 模型使用 Groq Llama-3.3-70b-specdec 和 OpenAI Whisper Large v3,均为云端 API。