1.2 关键特性对照


1.2 关键特性对照

本节摘要:Parlant 的差异不在某一个开关,而在一组咬合的特性:语义驱动的会话状态、客户作为一级实体、模块化工具链、分层可控与可解释、多租户隔离。把它们逐项和通用 Agent、规则引擎、纯 prompt 对照,才能看出「企业级」三个字到底垫在哪。

本节目标

阅读完本节,你应当能够:

  1. 说明会话为何不能只是消息列表
  2. 解释客户实体与「临时上下文里塞个 user_id」的差别
  3. 对照工具链:声明契约 vs 模型自由 function calling
  4. 指出可控性是分层插入策略,不是事后看日志

会话:消息堆 vs 状态图

很多对话系统把会话当成「历史消息往提示词里一贴」。轮次一多,模型开始忘掉槽位、重复问出发地。规则引擎另一极端:状态节点写死,用户说半句口语就掉出图外。

原文把 Parlant 的会话写成语义驱动的状态管理。用户输入是触发迁移的事件,内部是会话状态图:节点是意图或任务阶段,边是条件与动作。订票例子:识别订票后初始化出发地、目的地、日期等槽位;用户补「经济舱」,更新对应槽位,而不是整句重解析。

状态本身有生命周期。原文举例:金融洞察工具被调用时,状态进入处理中,并通过状态通知避免前端以为卡死。这和通用 Agent 的「循环还在跑,前端转圈」不同——后者常常没有一等公民的会话状态。

持久化策略也是对照点。默认内存,适合原型;生产可切到本地 JSON 或 MongoDB。原文给的概念写法是在创建服务时指定 session_store。注意:这是存储后端替换,不是把状态格式改掉。语义压缩与版本意识被原文用来避免「模型升级后历史会话打不开」——具体算法细节原文未展开,本教程不编。

# 概念:同一套会话结构,换存储后端 async with p.Server(session_store="local") as server: pass # 本地持久化;生产可改为 MongoDB 连接串
能力 纯 prompt 通用 Agent 规则引擎 Parlant
会话表示 消息列表 消息+中间步骤 显式状态机 语义状态图+槽位
中断恢复 基本没有 取决于你自己序列化 有,但死板 内存/JSON/Mongo 可切换
处理中反馈 少见 看框架是否暴露回调 需自写 ToolContext 可发进度与状态
历史兼容 无保证 schema 迁移痛苦 原文强调结构一致、语义压缩

客户实体:河床,不是漂在水上的便签

会话是河,客户是河床。原文把 Customer 做成一级实体:唯一标识,关联历史会话、偏好、权限、外部系统 ID。金融 VIP 接入时可调资产概览、投诉记录、风险偏好,再调话术。这不是「系统提示里写你是 VIP」——那句提示下次就丢。

存储同样可切内存、JSON、MongoDB,customer_store 与会话对称。schema 半结构化,业务可扩展属性。原文提到脱敏与访问钩子,对接 GDPR 一类要求。对照通用 Agent:用户画像往往在向量库或外部 CRM,框架不管身份连续性。对照规则引擎:客户表很完整,但对话层接不上口语。

⚠️ 常见坑:只用会话 ID 冒充客户 ID。服务器重启或用户换设备后,个性化全部归零,还可能串话。
💡 关键直觉:信任来自「你还记得我上次说过孩子升学」,这是实体记忆,不是上下文窗口碰巧还在。

工具链:契约 vs 即兴

孤立的语言模型只会说话。原文把工具注册成统一契约:REST、库查询、脚本、甚至另一个模型端点,对规划层暴露的是同一类输入输出。查询订单状态的概念形态是:声明工具、运行时由规划匹配、参数填入、结果回到生成。

组合上,原文用工作流把验证身份、检查可否退、创建工单、通知客户串起来。对照 ReAct 类通用 Agent:模型逐步想「下一步调哪个函数」,失败就换一个,路径每次不同。Parlant 更接近「规划引擎按指南调度」,工具能否出现在候选集,后面第 2 章会强调要由指南授权。

多租户与安全是企业对照里最容易被演示型框架省略的。原文写:租户命名空间隔离客户、会话、工具配置、提示模板;工具调用要显式权限;客户关联角色与策略;普通客服角色调不了删除用户。还有传输加密、字段级加密、敏感信息擦除,金融政府场景可接硬件密钥模块——这些是能力方向,部署细节以当时文档为准。

图 关键特性对照矩阵

图 关键特性对照矩阵

可控性:分层插入,不是写一篇「请遵守政策」

原文把流程分成感知、规划、执行。感知理解输入,规划决定下一步(调工具、追问、直接答),执行落地。企业规则插在规划层:金额超过一万必须人工审核——检测到就中断自动流程,转人工并附上下文。决策路径要记:模型原始输出、规则条件、最终动作。这和「生成完再扫描敏感词」不是同一层。

调试面板被原文当作降低门槛的手段:看状态图、工具调用链、中间变量。医疗金融里,这既是工程需求也是伦理需求。

社区方向原文写过:多模态进状态图、联邦学习优化共享工具、因果模块仍偏实验。同时留下未解题:超长上下文延迟、道德决策如何量化。这些不要写成已交付功能。

特性背后的哲学就一句:不靠模型更大,而靠把大模型嵌进真实业务流时方向盘还在不在。五根支柱缺一根,演示可以过,上线会把缺的那根变成事故报告标题。

把五根支柱写进非功能需求

特性对照若停在概念,上线时仍会被砍。把五根支柱写成非功能需求。会话:允许中断后续接,处理中必须有状态通知。客户:跨设备仍是同一实体,禁止只用会话号冒充身份。工具:生产接口不得以「模型可能会小心」作为权限模型。可控:金额超限在规划层硬闸,而不是生成后再删句子。租户:演示多客户时必须真隔离,而不是靠前缀碰运气。

存储选择是特性落地的第一刀。内存只用于自动化测试和现场演示。本地文档库适合单机预发。生产用可运维的文档数据库时,要同时规划备份与会话保留期限——这是隐私需求,不是框架彩蛋。切后端不应改变状态语义,若切完槽位丢了,说明序列化实现有问题,不要用「模型忘了」掩盖。

调试面板不是给领导看的大屏。它的用户是排障的人。要求能看见当前状态节点、激活的指南、被抑制的指南、工具入参是否过网关。缺「被抑制」这一项,运营会以为规则没写,其实是优先级把它压了。特性对照里,可解释性从这里开始变成日常工具,而不是论文词汇。

多租户常被小型团队省略,直到第一个外包客服接入。省略的代价是配置互相覆盖、提示模板串味。即使只有一个品牌,也建议用租户模型表达「测试 / 生产」隔离,避免预发指南污染线上。权限上,删除类工具默认不出现在客服角色候选集,注册了不等于可见。

社区方向里的多模态、联邦学习、因果模块,不要写进当前里程碑。当前里程碑能交付的是:状态可续、客户可认、工具可授权、规划可闸、租户可隔。五件都有了,再谈图像进状态图。特性贪多会把框架用成演示集市,和「经久可用」的原文立场相反。

特性对表:一周能验哪几项

不必等完美平台。一周内可验:会话重启后续接(持久化)、同一客户换入口仍被认出(客户实体)、低权限角色点名高权限工具被拒(权限)、超限进入人工而不是继续生成(规划层闸)、调试能看见状态节点(可解释雏形)。验不过的项写成风险,不要用路线图词汇覆盖。多租户若本周做不到,至少把测试与生产配置隔离。特性对照的意义是排期,不是用来写宣传稿。宣传稿会把未验项说成已有,这比缺少特性更危险。

对照作业:五根支柱能否写成非功能需求

围绕「五根支柱能否写成非功能需求」,把四条路径再过一遍。表里每格都是可执行判断,不是形容词。读完请把你的项目钉进一格,不要钉在两格之间假装都占了。

检查项 纯 prompt 通用 Agent 规则引擎 Parlant
决策权放哪 消息列表当会话 中间步骤当会话 死状态机 状态图加可切换存储
改口径谁动手 提示里写你是VIP 画像外置向量库 客户表在库对话接不上 客户一级实体
行动如何被拦 描述里求模型小心 全量函数暴露 接口写死 契约加授权候选集
出事如何复盘 生成后再删 规划中碰壁 分支拒绝 规划层硬闸
口语进得来吗 无租户 后补隔离 自建多租户 命名空间隔离
上线第一周验什么 看像不像记住你 看循环能否续 看字段在不在 一周五项最小验收

把五项写进本周看板:续接、认出、拒绝越权、超限转人工、能看见状态节点。写不进看板的特性,等于还没有。

存储选错会伪装成模型健忘。切后端丢槽位,先查序列化,再怀疑模型。特性对照要防止错误归因。

一节小结

  • 会话是状态图:槽位与迁移,不是消息拼接;存储可从内存换到 JSON 或 MongoDB
  • 客户是一级实体:跨会话的身份与偏好,不是提示词里的临时称呼
  • 工具靠契约:统一输入输出,工作流可编排;能否调用还要看后续的指南授权
  • 控制插在规划层:高风险操作硬闸,比事后过滤更早
  • 租户与权限:命名空间隔离 + 工具显式权限,演示型框架常缺
  • 未完成项如实:多模态、联邦、因果是方向,不是本节可验收功能

下一节用场景反过来筛:谁该用这五根支柱,谁不该。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U