什么是智能体的灵魂?
一份常驻的自我描述,说明这个智能体是谁——它的性格、语气和不可退让的底线——与它当下在干的具体活儿分开存放。
问大多数团队,他们智能体的性格定义在哪儿,答案是「提示词里的某个地方吧」——换句话说,没人说得清。在这里,一个智能体由三部分定义,而把这三部分分开,正是它长期可维护的原因。
灵魂、任务,以及你改不了的那一层
灵魂——它是谁。 性格、语气、长期有效的行为准则。不管它现在是在做初筛还是在催材料,这些都成立。「绝不承诺结果」属于这一层。
任务——它是干什么的。 这个具体智能体负责的活儿。同一个租户可以跑好几个智能体,共用一个灵魂但任务不同:同一家机构的语气,一个负责接待,一个负责跟进。
审核——谁都关不掉的那部分。 平台级的安全规则,注入到每一个智能体里,包括你的。这一层故意不开放给租户编辑。你想给智能体什么性格都行,但你没法授权它无视底下的安全规则。
三者按这个顺序拼接,构成系统提示词的固定前缀。
顺序比看上去更要紧
提示词是分层的:固定前缀(灵魂 + 任务 + 审核),然后是可用 Skills 的清单,然后是动态上下文——检索到的段落、客户档案、对话历史——最后才是当前这个问题。
这个前缀在每一轮对话里都不变,所以它可以被缓存。会变的材料排在它后面。也就是说,你写的身份是最便宜的那部分,每条消息都在变的那层才是你每次都要付钱的。写一份五页长的灵魂并不高明,那是给每一次回复都上了一道永久的税。
客户信息放在哪儿
紧跟在灵魂后面,提示词里还有一块关于「正在跟它说话的这个人」的内容——过去几次对话里积累下来的关于他的信息,存在他自己的空间里。灵魂说的是「该怎么表现」,这一块说的是「对面是谁」。
把两者分开,才使得一个灵魂可以服务所有客户,同时对一个已经聊过四次的人,开场白仍然不一样。
怎么更新
生效中的定义存在数据库里,那就是唯一事实来源。在控制台改完,下一轮对话就用新文本拼装——不用构建,不用发布,不用重启。
有两个后果值得知道:
它会在关系进行到一半时生效。 已经在进行中的对话,从下一条消息起就用上新灵魂。改一条规则就等于处处都改了——这通常正是你想要的,偶尔也会让人吃一惊。
模板是起点,不是引用。 从模板创建智能体,是把那份模板的灵魂复制进你的智能体。之后模板再改,也不会反向影响已经创建出来的智能体——你的就是你的。