面试:如果让你设计一个客服 Agent,你会如何划分四大组件的职责?
这个问题挺经典的,我之前负责过客服系统的设计,就结合我们线上的实践来说说。核心就是四件事:定义角色、管理记忆、制定计划、执行动作 。先说 Profile(角色定义)。客服 Agent 得知道自己是谁、以什么姿态服务。我们当时设计的时候会预设几个维度:一个是基础信息,比如你是哪个业务线的客服(电商、金融、售后),这决定了你懂哪些业务;二是性格设定,是亲切随和型还是专业严谨型,这会影响回复的语气;三是能力边界,明确哪些能做、哪些必须转人工。这个组件的职责就是给 Agent 设定"人设",让它的行为保持一致。我们踩过一个坑——早期没有明确限定能力边界,Agent 自行答应用户修改订单地址,结果那个操作其实需要更高权限,后来只能人工补救。然后是 Memory(记忆管理)。这块分两个层面:短期记忆负责当前对话的上下文,用户说到第几轮了、填了哪些槽位、还有啥没确认;长期记忆则是用户的历史档案和企业的知识库。我印象最深的是记忆检索这块——之前用纯向量检索,效果不稳定,后来加了知识图谱做混合检索,召回率大概提升了 20%。还有个点要注意,客服场景的记忆不能只存对话历史, 后端业务数据才是真理来源 ,Agent 不能拿对话里的信息去替代实时查询。第三个是 Planning(规划决策)。这是客服 Agent 的"大脑"。拿到用户输入之后,得先做意图分类——用户是想查订单、投诉、还是咨询产品?分错了后面全错。然后根据意图决定下一步:简单问题直接查知识库回答,需要槽位填充的就追问,复杂问题就触发多轮对话流程。我们有个分层策略,L1 查询直接调工具,L2 可逆操作要二次确认,L3 高