夜雨聆风学习资料网

ARTICLE · 1157832

关于个人AI助手的设计思考记录

关于个人AI助手的设计思考记录

先叠个甲:市面上的工具有很多,成熟工具的用法也有很多,也许我孤陋寡闻,有的工具能解决我的需求,而我不知道。

在最近的工作之余,老是想用ai提效。最近思考了很多,分享一下。

我的朴素需求:

一个个人AI助手,能够根据我的行为习惯,做出类似的决策,帮我处理大部分的重复劳动。

基础概念:

需求分类:

当我有一个想要做的事情的时候,大脑会启动一个内置的分类器,对这个事情进行分类。我归纳为三类:

  • 小动作类。比如说写代码时的做一个小函数,或者改一个bug,或者人生活中的下意识的行为,比如走路到门口,拿水杯喝水。这类需求的特点是很少的语言就能描述完,人脑能很轻松的处理上下文,不需要启动复杂的checklist或者plan来进行处理。

  • 提案类(复杂但能清楚定义)。比如说开发一个支付功能。或者说开车去三十公里外的一个地方。或者说做一顿饭。这类需求的特点是,需求比较大,步骤很多,人脑不能很轻松的记住全部上下文,需要文档或者工具辅助。但是经过讨论之后,可以明确下来需求的所有细节,消除所有模糊。我称为提案,是因为想法产生的时候,是仅仅只有一个想法,实施细节需要反复研究才能确认下来。但是最终可以产出一个完善的行动方案(或者最终可以明确证明不可行)。

  • 愿景类(宏大目标)。比如说赚大钱。比如说买别墅。或者说设计一个属于自己的操作系统,或者说发布一款自己的独立游戏。这类需求的特点是,就是一个愿望,而且会有一些红黑线。比如赚钱,但是不能犯法。比如做游戏,但是只想做模拟经营类。这类需求属于想做,但是路径很长,很复杂,需要不停的试错。人没法列出具体的行动步骤,但是可以大概判断出当前的行为能否有助于缩短现状到目标的距离。

其实这三类的包含关系很明显,一个愿景就是由很多提案(里程碑)逐步达到,每个提案的具体实施步骤就是由一个一个小动作组成。

决策:

人无时无刻都在做决策。大的决定比如读哪个大学,定居哪个城市,选哪个人生目标。中的决定比如去哪家公司,用哪个技术方案。小的决定晚饭吃什么,代码的编码习惯。这些决策习惯区分了每个人。而我就希望把我的决策习惯逐步的沉淀到个人助手上,使得个人助手能跟我用类似的习惯进行决策,从而产出跟我类似的工作。这里面绕不开一点,幻觉。幻觉我是这样看待的:人在做决策的时候,不可能100%次次都一样。对于可能产生重大后果的决策,使用硬编码拦截,由人最终拍板,就能在把人从细节中解放出来的同时,最大化的兜底。

工作流和硬编码:

对于任何一个需求来说,当分类完成后,就会从历史经验中,找到自己的处理流程,复用这个处理流程,从而完成这个需求。这个流程就是工作流。其中不变的部分,可以采用代码硬编码,而动态的部分,则直接接入llm。工作流采用硬编码,速度快,成本低,还能最大化的避免ai幻觉。而llm前后都用硬编码钳制死,可以保证不跑偏。

基础模块:

Llm client+tool:完成基础的llm对话,tool提供基础的llm能力支持。

Agent Loop:定义Agent,类似于Role,有基础的描述,System Prompt,Tool工具集。

Workflow:脚本语言描述的工作流。通过循环,分支,调用不同的agent,从而完成一个小动作类的需求。

秘书:对话框入口,接入需求分类决策器,根据用户需求,进行三种类型分类。然后自动生成对应数据,交给后台的分身进行处理。

用户反馈接口:使用im或者其它工具,在llm拿不准注意的时候,调用一个用户决策tool,给用户发im,用户做出决策,给出理由。反馈接口内化这次决策,并返回给agent。

相关学习资料