构建支离破碎的AI驱动世界有一项最让人心烦的事:NPC往往显得无所不知。将全局世界状态输入一个巨大的上下文窗口,不一会儿当地铁匠就知道国王死于暗杀,这件事还未经传播就已被广为所知。
为了解决这一信息不均衡问题,我停止使用一个单一的主提示。相反,我将AI层分解成专门的角色:
“场景生成”, "场景引导", "世界系统推理", "NPC规划", "行动解析"和"叙事呈现"。
通过将这些角色分开你可以在代理之间产生一个真实的战略迷雾。这里是-turn进展流程如何强行实施的:
1.获取/恢复一个处理锁
2.加载基本状态(Postgres表格,非聊天记录)
3.先进世界系统
4.对NPC决策进行模拟,只向其提供其特定的当地知识和关系(核心约束:不允许有全知晓的编写)
5.解决玩家行动
6.最后,从所得状态中编写叙事
因为叙事呈现发生在所有有结构的状态发生变化之后,LLM就无法意外地给NPC传达元信息。这可靠地为其产生竞争性动机和自然的流言传播,没让模型扮演导演。
我在一个浏览器中运行着一个生命模拟游戏,名为AltWorld。如果你想看一下NPC局部知识如何改变游戏循环,点击这里 https://altworld.io
你们是如何在代理中处理局限的内存/战略迷雾问题?
评论 (0)