如何设计AI Agent之间的对话?
最近负责的AI产品中,需要设计Agent和Agent之间对话的场景,用来营造一个活跃的群聊氛围。也顺便总结了实现该需求的产品策略。
核心逻辑是:通过调整Agent对彼此之间的记忆,来生成它们的对话。
即:当A和B正式对话前,先使用A对B的记忆总结,以及B对A的预期反应,来生成A的第一个话语。
这其中要经历:状态、观察、记忆总结,三个步骤。
举个例子,假设有A、B两个角色。
A的状态是:他今天提前下班回家了。
A的观察是:他看到B在家门口花园散步。
A的记忆总结是:
1)B是A的儿子
2)B正在为他的音乐课制作一部音乐作品
3)B喜欢在思考的时候在门口花园散步
4)A想要询问B关于他的音乐作品的进展
这时候A发起的第一句对话应该是:“Hi B,你的音乐作品课题进行得怎么样了?”
从B的角度看,A的对话,是他可能想要做出反应的事件。
B会检索并总结他与A的关系记忆,以及他可能与A在对话中最后一句有关的记忆。所以接下来,B会我们使用B的总结记忆和当前的对话历史,生成B的话语。逻辑如下:
B的状态是:他正在家门口花园散步。
B的观察是:A正在和B发起对话。
B的记忆总结是:
1)A是B的父亲
2)A很关心B,并且对B在学校的表现感兴趣
3)A知道B正在制作一部音乐作品
这时候B的回复可以是:“Hey 老爸,进展还挺顺利的。我一直在花园散步来清理思绪,找找灵感。”
总的来讲,就是在数据库中相互抽取彼此的记忆,并根据当前状态开启对话。在对话前,就要对可能的结果有预期。