这两天对 Genimi 2.5 Pro 05-06 进行了一番拷打,发现此模型的准确度极高。我的需求是写一个很复杂的测试程序,主要用的是 C 和 Python ,我的工作流是这样的:
1.先把需求描述给它,让它生成设计文档
2.新开一个回话,把文档输进去,告诉它一步一步的构建代码,我会和它一起调试
3.接下来就是一轮一轮的对话了,基本是不断 go ahead 的过程,等到 context 总量达到 5-10 万时,我就会新开会话
4.在新会话里把文档贴进去,再把最新的完整代码贴进去,告诉它这份代码尚未彻底完成,请一步一步完成,我会和它一起调试。
5.接下来可以进行几轮会话,代码量继续增长,context 达到 10 万时,再次新开会话继续拷打
6.最后我的代码基本完工了,然后把最终代码和文档新开会话输进去,让他评估下写的怎么样,他会给出一些意见。
7.新开会话,把代码和文档贴进去,把上一轮给出的意见选择一条优先级最高的贴进去,让他实现,并告诉他输出时请直接输出可以直接进行“覆盖性”粘贴的文本,并告诉我在哪粘贴(这一点很重要,不然给出的答案很晕,完全不知道怎么修改代码)。
8.把 7 步反复几次,直到把所有意见都处理完毕。
9.最后得到了最终成果。
整个过程中,代码准确度极高,基本不会出错,偶尔有个小错误,下一轮对话就解决了。我的经验是,尽量保证你的上下文是干净的,如果一个会话里对话轮次过多,他就会忘掉代码的演变历史,开始出错,再也改不好。所以我们需要不断的新开会话告诉它最新的代码长什么样子。Gemini 可以在上下文长度达到 10 万时一次性输出上千行 C 代码并且一遍跑通,这个能力恐怕一骑绝尘了。
我还用它写了个一千多行的极为复杂的 Python 程序,也是极为丝滑。但是我只测试到上下文达到 10 万左右,有几次快达到 20 万了,代码开始出错,我就直接新开会话了。
1. Read.me 是我的项目设计文档;
2. project_structure.txt 是我当前的代码结构;
3. source_code.txt 是所有的源代码;
4. 现在我需要你帮忙实现代码,并且用中文回答;
5. ... ...
同感, 我现在感觉自己无所不能