/goal 跑了 80(62 + 18)h 的结果, 18w 行代码。200 多个 commit。

7 月 20 日
 weixind
先感谢 codex 最近疯狂重置,总共用了大概 40 亿 token 。

需求和目标起点在 https://github.com/erweixin/langshift.dev/tree/ai-start 这个分支。goal 中相关的几个文档都在。



这个 goal 完成的代码在 https://github.com/erweixin/langshift.dev/tree/ai-generated

后面又以 https://github.com/erweixin/langshift.dev/commit/f82bbd377f9da999f4c514d869cb91ad582c5b43#diff-6a4ce0eef9327c0bd601bf997a617e9e18d707ce8b4cdc49e56c0189503fe4d9 这个 plan 为 goal 跑了 18 个小时。

最终完整的代码在 https://github.com/erweixin/langshift.dev/tree/codex/lites-engineering-rc 。

期间只有一次调整,让 AI 越过在 macOS 处理 Firecracker 的尝试。其他都是 AI 的自主行为,有点行为艺术了。

这是第二次以 goal 的形式跑超长任务。之前的 goal 目标相对来说更明确,设计了完整的验收流程。大概 10h 小时完成。

这次时间大概多了小一个数量级。而且目标非常发散。我也拿不准这一堆代码是否有讨论的价值。先分享一下吧。
2304 次点击
所在节点    程序员
13 条回复
weixind
7 月 20 日
v2gba
7 月 20 日
前情提要?

btw RUN C++ 全都报错
weixind
7 月 20 日
weixind
7 月 20 日
@v2gba RUN C++ ,你说的现在部署的吧。是原来项目。感觉有点不适合 AI 时代了。
shilianmlxg
7 月 20 日
请问大佬,如何做到长时间任务也不走偏的,另外问下大佬用到了 superpowers 这种 skill 吗,项目从 0 到 1 和原项目开发新需求,大佬有什么经验可以分享的吗
weixind
7 月 20 日
@shilianmlxg
目标有强验收机制的情况下成功率会高一些,goal 越准确,跑偏的概率越小,不过跑 goal 会有一种能得出结论就算赚到的感觉,跑不出来在预期之中。

业务项目我基本上没怎么跑过超长任务。没啥经验。

我没用过相关的 skills ,个人选择详细 codex 、cc 自己的工程学。
xue777hua
7 月 21 日
“需求和目标起点在 https://github.com/erweixin/langshift.dev/tree/ai-start 这个分支”

这个需求是怎么生成的?有啥好用的提示词和工具嘛?
weixind
7 月 22 日
@xue777hua 没用什么特殊的提示词和工具。可以尝试和 AI 围绕一个话题或者技术实现聊上一到两周。聊透了就有了。
xue777hua
7 月 22 日
@weixind 聊一到两周? 我不信 哈哈
weixind
7 月 22 日
@xue777hua #9 看了下 commit 记录,不止一两周。。。https://github.com/erweixin/langshift.dev/compare/main...ai-start 。

我要做一个大的系统,架构基本上就是不停的推翻重来。而且要不停的弥补和实施之间的差距。

你可以试试从和 AI 聊“如何构建一个 cloud agent 系统架构”开始。
xue777hua
7 月 23 日
@weixind 哦?那我理解错了。
我以为你是 线聊两周搞定所有的 md 文件,搞定每个细节,然后跑三天任务,结果就很漂亮。

是我理解错了。

不断重来,那不会也是💩山吧?
weixind
7 月 23 日
@xue777hua #11

架构推翻重来,而不是代码推翻重来。架构满意了以后再跑三天。
xue777hua
7 月 25 日
@weixind 那这要是一个点没想到。。。岂不是 后面推翻重来?甚至有时候 只是一个 boolean flag 整个架构没写。。都要换一轮。。。比如 tombstone 这种东西。。反正诸如此类的吧

但是我感觉你似乎很多架构的 md 文档都是靠 AI 生成的, 真的一字一句看过来啊???

即便是 审阅过了, 万一代码里面 有些没有执行到位, 怎么办呢?

--

我之前试过 goal 不是很满意,几个原因:
- 生成的 md 文件 头皮发麻, 不想看, 特别是 codex , 文绉绉的 `落地` `对齐` 新八股看得人简直累死
- 生成的 文件好不容易看完了,执行不到位 (任务过大, 多次 compact )
- codex 就是给你拼命复杂化,复杂到 可能他自己都被绕进去了
- 但关键的地方, 他又考虑不到,不是主要需要的架构的地方,他又瞎 jb 考虑。。。 搞的我审阅疲劳 (特别是对着八股文更加如此) 最终 导致我自己的思路甚至都 miss 了一些东西

为啥我知道代码不满意呢? 因为我亲自 review 代码了!(几万行! 我硬着头皮 review 的! )

于是改了一轮又一轮 一轮又一轮, 折磨了我 3 个星期,最终实在受不了了,最后我自己花 1 个星期,回到了古法编程(自己的 mindmap + AI 问答式 + 少量 goal) 一个星期完成了所有的任务。

之前每天 0.5-2b token ( gpt-5.4 xhigh fast goal sub-agent) 除了 生成一堆令我困扰的垃圾以外,啥价值也没有沉淀下来。

所以我对于中大型项目 (我看你的项目不算小, 和我的 package 数量差不多) 感觉 goal 可能不一定靠谱

我之前还试过 ralph loop 类的方案, 也不是很满意。。。

目前为止,long running task 没有找到什么满意的方案,我自己的答案倾向于:这是无解的。因为 写好了所有的测试和验证 约等于 写好了所有的代码。

说到底, 写代码本身就是在给 General Purpose 的 Program Language 加上 type check + while loop

如果我把 type check 都写给了 LLM , 那几乎就等于自己把代码写出来了。。。

--

当然, 我也用 goal 写过自用的小工具, 但基本都是当黑盒来用, 跑完一轮 goal ,就直接用,也就是不 reveiw 代码。那自然没有这种痛苦了。
我其实大致看过代码,头皮麻了一下就闭着眼睛用了。。。 我的 goal 里面有一个步骤是:让他发送一个简单的 http 请求,codex 居然给我用 node:http / node:https 两个核心用 if/else 分别去发送请求的。。。
好久都没有见过 这种用 node:http / node:https 的写法 而不是用 fetch() 执行网络请求了。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/1228560

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX