今天在 b 站上刷到这个视频,感觉有点意思,大家研究看看: https://www.bilibili.com/video/BV1RMzuBjEym https://github.com/buyinakili/AIOS-PDDL-with-evolution-and-auditing
我认为,这是个很有前途的想法。项目本质是在大模型和自然语言之间增加一个领域语言的符号约束层,从而最大程度消除大模型的缺点,发挥它的优点。另外,还可以继续扩展思路:
1 、加入更多的领域语言; 2 、为配合大模型,设计专门的领域语言; 3 、设计如任务规划领域语言、逻辑推理领域语言、数学计算领域语言。
目前的 agent 其实存在一个很大的问题,就是没有考虑到计算机执行的现实环境。自然语言的不精确问题,无法和现有的计算机环境兼容,而通过增加一个领域语言约束层就可以极大的缓解这个问题。
1
tetora 9 小时 42 分钟前
就是在原有 agent 的情况下再包一层有限制的指令吗?有一个问题就是类似 linux 这种一切皆文件的情况会怎样
|
2
shoushen OP @tetora 现在的 agent 的思考、推理、规划、工具调用等等都是通过人类的语言进行的,本质上就是不承认大模型是有能力边界的。
比如工具调用,实现的原理是这样的: 1 、在系统提示词增加:请使用 get_weather("city_name")查询天气。 2 、当用户问:北京的天气? 3 、大模型返回:get_weather("北京") 4 、agent 查询天气函数,返回:晴天。 5 、大模型返回:北京是晴天。 ======= 类似的,其他大模型能力也都是基于人类的语言来实现的。这就带来很大的问题,因为人类语言发明出来是给人用的,不是给计算机用的,就会导致生成的结果是不准确,不能类似程序可以 debug 。 使用领域语言,就可以实现: 1 、大模型返回的是精确的结果; 2 、提示词的长度更小; 3 、大模型的结果是可以验证的,符合语法规范的; 4 、agent 的技能可以进行版本管理的; 5 、生成的结果更容易被人类验证、修改,从而每个用户的问答都可以用来进一步训练大模型; 6 、实现大模型的“自我学习”,可以让他自己根据领域语言编写各种“答案”,然后自己验证、优化; 7 、以上提升,不是仅仅在工具调用上,而是在思考、规划、推理、计算等能力上都可以得到优化和提升; ===== 总之: 就是将大模型的推理、计算、规划等过程,不再直接使用自然语言输出,而是使用专用的领域语言增加一个抽象层,大模型将推理过程、计算机过程、规划过程全面的符号化,再由专门的工具进行计算、执行。 |