前面我们干了很多事情来完善一个有温度、有记忆、会倾听的情感聊天机器人 —— ”kaguya“。它可以理解用户情绪、记住对话历史、基于提示词工程展现一个稳定的人格,通过上下文管理实现自然连贯的交互体验。

但是,我们还有一个问题要思考: 它真的能主动关心我吗? 这答案,可能是否定的。

当前的”kaguya“ 本质上还是一个”反应系统“ —— 它在等待用户输入,然后生成回应。它不会在你连续三天情绪低迷的时候,提醒你注意心理健康,不会在你生日当天送上祝福,无法根据你的生活习惯建议冥想时间或者直接推送舒缓音乐。

这只不过是一台对话机器,不是一位陪伴伙伴。

要实现真正的智能,需要进行一次范式跃迁: 被动响应 走向 主动服务,从语言模型调用者变为 智能体设计者

我们来引入 Agent 架构,赋予 AI “思考-决策-行动”的闭环能力,让“kaguya”从一个会说话的模型,成长为一个能感知、会规划、可执行的数字生命!(图恒宇!)

先抛出三个问题:

  1. 什么是Agent?它和普通聊天机器人有什么本质上的区别?
  2. 如何基于Agent架构重构“kaguya”? 让它拥有主动关怀、任务执行和长期陪伴的能力?
  3. Agent 技术如何与已有模块(Prompt、RAG、记忆系统)协同,构建更加强大的情感支持系统?

Agent的本质:不只是工具调用,“自主性”的觉醒

什么样的系统才算“智能“? 传统软件是固定的:

输入 A,执行逻辑B,得到结果C

大模型带来了概率性生成的能力,让系统可以”说人话“

真正让AI接近”智能体“的,则是至关重要的一步: 自主性

1.1 什么是Agent?

Agent就是”智能体“或者说”代理“,指的就是一种可以感知环境、自主决策、采取行动并且达成目标的软件实体。

与传统程序或者简单聊天机器人相比,Agent具备下面四个关键的能力:

  • 感知:获取用户输入、系统状态、外部数据等信息
  • 规划:根据目标定制执行路径,拆解任务步骤
  • 行动:调用工具、访问数据库、发送消息等等
  • 反思:评估结果,调整策略,持续优化行为。
Agent 不等于 调用API的脚本。真正的Agent 拥有 “目标驱动“的行为逻辑,能够在复杂环境中动态调整策略

在很多人心里,Agent实际上就是高级牛逼的ChatGPT进化版,实则不然,OpenAI在他们的白皮书有专门定义过Agent是什么:

agents是那种能够代表用户自主执行多步任务的系统。它不仅理解指令,还可以决定流程、调用工具、纠错,甚至在必要的时候把控制权还给用户。

也就是说,一个Agent需要具备下面的特点:

  • 利用LLM来管理工作流、做决策。
  • 能判定工作流是否完成。
  • 能够遇错中断或者说回退,然后邀请人工进行干预。
  • 拥有访问外部工具(APIs、数据库、服务)的能力。

相比之下,传统的chatbot或者说单一模型的应用,只不过是得到一个回答而已,没有流程感,没有行动力。

1.2 Agent vs 普通聊天机器人: 从应答到行动

OpenAI的白皮书明确指出:只有在以下场景,Agent才有被选择的意义:

类型特征示例
复杂判断/决策需要权衡条件、判断标准审批退款、风险评估
规则难以穷尽规则繁多、不断变化供应商管理、合规审查
处理非结构化数据文本、图像、语音OCR票据处理、合同解析

作为对比,我们来看看哪些不适合用Agent:

  • 纯粹的简单操作(定时发邮件)
  • 完全确定性、可写死判断的流程
  • 对资源敏感、成本极度考究的场景

首先问问自己:这个流程,是否”超出了传统自动化的范畴“。如果你说Yes,那才是值得用Agent的。就用我们的聊天场景来举例子:

维度普通聊天机器人Agent
响应模式被动响应用户输入主动感知 + 目标驱动
决策机制基于Prompt生成回复规划任务路径,选择最优策略
工具使用无或者固定流程调用动态判断是否调用什么工具
记忆利用仅用于上下文延续用于长期行为建模和个性化服务
用户关系单次交互持续陪伴和关系演进

举例来说,当你说“我最近睡不好”,普通机器人可能会回复:“你可以试一试冥想”

但是一个Agent化的“kaguya”他会主动服务你:

  • 感知:识别出是睡眠问题 + 持续 + 情绪低落
  • 规划:判断是否需要获取历史记录睡眠信息、是否建议专业咨询、是否设置提醒
  • 行动:查询用户日志、调用冥想音频接口、发送每日晚安提醒
  • 反思:一周之后进行回访,询问“你最近是否睡的还好?需要调整建议吗?”

Agent 核心架构解析:构造“kaguya”的智能大脑

为了让“kaguya”具备上述的能力,我们需要对其设计一套完整的Agent架构。如图:包含了四个核心组件:记忆中枢,规划模块,工具调用模块以及反思模块。

2.1 记忆中枢:长期关系的基石

Agent的记忆不仅仅是对话历史,更是行为日志 + 情感画像 + 反思记录的综合体。我们把原有记忆系统升级成三层结构,就像这样:

层级内容用途
短期记忆最近五次对话上下文感知
长期记忆用户偏好、人格标签、关键事件个性化服务
行为记忆工具调用记录、反思日志、目标进度智能规划和优化

这三层记忆,“kaguya”不仅仅可以记住你说的话,还可以记住它为你做过的事情,哪些做的好,哪些还要改进

哪些做的好,哪些做的需要改进要怎么判断呢?

“系统化的反思机制+记忆系统+用户反馈信号”三者协同的结果。

这是一个“感知->行动->反思->优化”的逻辑闭环

就像这样👇🏻

2.2 规划模块:让AI想清楚了再做

这个模块就是Agent的战略层。负责把模糊目标转换为可以执行的任务序列。

比如说,我们的目的是“帮助用户改善睡眠”,planner的流程就是:

  1. 目标解析。比如用户说:“我最近总是失眠。” 解析为:“改善睡眠质量”。
  2. 任务拆解。根据目标拆解成具体任务:

    • 是否有睡眠日志? -> 查询记忆系统
    • 最近有没有压力事件? -> 分析情感趋势
    • 是否需要专业建议? -> 分析严重程度
    • 是否提供放松资源? -> 调用冥想库
  3. 路径选择。 根据用户性格(内向)、历史偏好(点赞过轻音乐),决定优先推荐“白噪音+呼吸练习”
实现方式:可以使用思维链(Chain-of-Thought)或者任务分解提示(Task Decomposition Prompt)引导大模型自主生成计划。

示例Prompt:

你是一位心理健康陪伴Agent,请根据用户描述制定改善睡眠的行动计划。  
请按以下步骤思考:  
1. 明确用户核心诉求;  
2. 检查已有信息(情绪趋势、生活习惯);  
3. 列出可能的干预措施;  
4. 按优先级排序并给出理由;  
5. 输出最终执行方案。

2.3 工具调用模块(Tool Use):赋予动手能力

没有工具的Agent,就像有脑无手。工具调用是Agent实现闭环服务的关键。“kaguya”届时会考虑集成以下的工具:

工具名称功能说明调用场景
get_user_mood_trend()获取最近一周的情绪变化曲线判断是否需要干预
play_meditation_audio(genre)播放冥想音乐缓解焦虑
set_daily_reminder(time, message)设置每日提醒养成作息习惯
search_mental_health_resources(query)检索专业心理文章提供知识支持
send_follow_up_message(user_id)发送回访消息验证效果
最佳实践:使用结构化输出格式(JSON)规范工具调用需求,便于程序解析。
{
  "action": "tool_call",
  "tool": "set_daily_reminder",
  "parameters": {
    "time": "21:00",
    "message": "该冥想啦,今晚试试‘星空呼吸’吧 🌌"
  }
}

现代模型已经原生支持函数调用(function Calling),开发者只需要定义工具Schema,模型就会自动判断什时候调用什么工具。

2.4 通信协议:引入MCP实现模块协同标准化

在复杂的Agent系统中,模块之间的高效、可靠通信是系统稳定运行的关键。仅依赖自由文本或者内部对象传递状态,容易导致上下文丢失、调试困难以及拓展性受限。

为此,我将引入MCP(Model Context Protocol,模型上下文协议) —— 这是一种专门为大模型智能体设计的结构化通信协议。MCP以json格式封装每一轮交互的核心要素,主要包含:

  • content:自然语言内容(用户输入或者AI输出)
  • context:结构化上下文(用户画像,情感状态,任务目标,记忆摘要等等)
  • tool_calls / tool_responses:工具调用指令与执行结果

简而言之,MCP就是一种更加标准化的方式,让大语言模型安全、一致地使用各种外部工具,核心思想就是构建一个“中间协议层“,如图:

这里回顾一下MCP的知识:

它本质上就是提示词工程发展到高级阶段的必然产物。向模型提供更具体、结构化的上下文信息(例如本地文件、数据库记录、实时网络数据),能够显著提升推理精确性和任务完成度。

在没有MCP的年代,开发者往往需要手动从数据库筛选信息,将其拼接到提示词中。随着任务复杂度的提升,”手工喂料“的方式不仅效率低下,还容易出错。为了解决这个问题,LLM主流平台,OpenAI,google等,退出了function Calling(函数调用)功能,允许模型在推理过程中动态调用预定义函数,从而实现一定程度的自动化。

但是,这个功能也有明显的局限性:

  • 平台绑定太强:不同厂商的函数调用接口不兼容,切换模型需要重写大量的代码;
  • 扩展性差:难以支持复杂的多工具协作或者自定义数据流;
  • 安全性和可控性不足:敏感数据可能被无意识暴露给模型;

所以,MCP来了,MCP就是针对于这些痛点提出的通用解决方案。如图所示,他就是一个万能转接头。让LLM能够灵活、安全访问本地或者远程的工具,同时保持对数据流的完全控制。

MCP的核心优势体现在三个方面:

  1. 生态丰富:社区已提供大量现成的插件(日历,音频播放器,心理知识库),即插即用
  2. 模型无关:不依赖LLM平台,任何支持MCP的模型都可以无缝切换
  3. 数据可控:敏感信息不用传到云端,开发者可以通过自定义接口精准决定传输内容,保障隐私和安全。

而在“Kaguya”的未来设想里,MCP的引入会带来质的飞跃:

  • 规划器: 可以明确输出结构化的行动指令
  • 工具调用:能精准解析并且执行工具调用
  • 反馈器:基于完整的交互链进行反思和优化
    所有的模块只需要遵循同一套协议,即可实现低耦合、高内聚的协同工作。

MCP协议的引入为“Kaguya”Agent系统带来了:

  • 标准化的模块通信
  • 完整的上下文传递
  • 可追溯的交互链
  • 更好的可维护性和拓展性
  • 为未来多智能体协作奠定基础

嘛,可以说,MCP不仅仅是一种通信格式,更是构建下一代智能体系统的基础设施。每一次对话,都会成为一份结构清晰、语义完整、可审计可复现的“数字记忆”

最后修改:2026 年 03 月 25 日
收款不要了,给孩子补充点点赞数吧