注意,本文千万不要让老板看到,否则:裁员!必须裁员!研发部门原地解散!
上篇已经看到,DeepSeek并不缺乏打工的能力,如果能有效组织AI,AI的生产力就可以被极大地释放出来。那么到底能不能实现以下假设:
1只程序猿 + AI = 1家软件公司
很容易想到两个思路:
1、用Multi-Agent(多智能体)模拟软件公司开发流程,通过分配角色(如产品经理、架构师、工程师等)和标准化操作程序,实现从需求分析到代码生成的全流程自动化;
2、训练一个leader模型,理解目标,分解任务,领导各种AI牛马干活。
显然第一种方法更加容易实现一些,第二种方法于我而言成本太高。
为什么是Multi-Agent?
在上一篇中,我们已经使用了HTTP请求的方式调用大模型,这种方法简单有效。但是,难道没有封装好的框架直接用的吗?显然有,比如OpenAI客户端,但它还是太灵活了。有没有更像打工人的?当然有,那就是AI-Agent,典型代表有聊天助手型的LangChain(擅长上下文记忆)给一个人设陪你聊到天荒地老;索引百科型的LlamaIndex (擅长自建知识库检索)给它知识它就是你专属的领域知识专家。那我们直接用Agent行不行?行,但是如果你想要解决复杂问题,就需要分解任务,多角色协作,管理不同Agent,多Agent通信。这,难道没有手脚架吗?有,答案就是Multi-Agent。
那么问题来了,用哪个Multi-Agent好呢?DeepSeek是这么说的。

虽然DeepSeek说选择AutoGen和LangGraph比较好,但我偏不听!我认为最好的选择是MetaGPT,因为它对软件公司场景更有针对性。
于是反手就安装了MetaGPT:

翻到文档找软件公司Demo:

不好意思,来早了,让我们期待MetaGPT更新。
(前面的删掉重写!)
我认为用Multi-Agent实现软件公司最好的选择是AutoGen(已老实)。它灵活易用,文档齐全,学习曲线友好。
找到官方文档中代码相关示例。

大意是:如何使用 AssistantAgent 和 UserProxyAgent 编写并执行代码。
简单来讲:
-
AssistantAgent 负责写代码。
-
UserProxyAgent 负责执行代码。
-
设置参数规定UserProxyAgent 是向人类用户请求反馈,还是根据执行结果向 AssistantAgent 自动反馈。
-
AssistantAgent 将调试并编写新代码。
-
两个代理会一直相互通信,直到任务完成。
也就是说,它可以完成写代码的闭环反馈。不管是反馈结果给人类获取进一步行为的反馈,还是反馈给助手获取报错信息,它可以通过反馈调整行为,反复循环,直到输出令人满意的结果。
用图来表示就是:

听起来很不错,对吧?让我们上手试一试。目前最新版本是0.4,0.2版本的文档比较齐全,所以还是用0.2。
官方教程已经写的很详细就不再堆代码了。参考:https://microsoft.github.io/autogen/0.2/docs/notebooks/agentchat_auto_feedback_from_code_execution/#example-task-check-stock-price-change
那么问题来了,示例中用的GPT-4o,到底能不能换成DeepSeek?
我试过了,只要支持OpenAI接口,换啥都行。但是DeepSeek接口超时,换了Kimi,瞬间就跑起来了。如果你足够土豪不考虑硬件成本,也可以拉一个本地模型起来玩玩。
下图中两个Agent正在对话。(由于已知的网络原因我更改了示例中的任务message,没有让它查美股,而是让它查询并比较一下今天北京和上海的天气)

卡住了,卡在了没有天气接口的API key。不过生成的代码看起来不错。

一个程序猿加一个测试的配置还是太简单,让我们来试一试能不能把它变成软件公司。
显然,我不想自己写代码,那就让DeepSeek来码一下代码吧,DeepSeek陷入了沉思...

最终,它还是出色地完成了任务。

经过几轮Bug修改之后,软件公司成功跑起来了。

这一秒,我觉得我强的可怕。但很快,API限制将我拉回现实。

程序员最终干掉了自己。
如果AI可以感知反馈调整自己的行为,那么它将是无敌的存在。教员在《实践论》中说过:根据于一定的思想、理论、计划、方案以从事于变革客观现实的实践,一次又一次地向前,人们对于客观现实的认识也就一次又一次地深化。当AI学会了“实践-反馈-评估-调整-再实践”,而且极具耐心,不带情绪,坚持不懈,那AI有什么事情干不成?
下一篇,我想尝试一下用AI真正做点什么事情。想看,就点个关注吧~



被折叠的 条评论
为什么被折叠?



