全局规划在需要多步骤协同、且每一步都依赖前一步结果的场景下肯定更好。举个例子,像复杂的产品设计,AI 需要先理解需求,然后分解任务,再逐步完成设计、测试、优化等环节。但如果是像即兴对话这种,可能“边做边想”更自然,毕竟谁会事先规划好要聊什么呢?
我觉得未来的开发者更像是“AI 工程师”,需要具备以下技能:一是 prompt engineering,能够清晰地表达需求,让 AI 更好地理解;二是 code review,能够识别 AI 生成代码中的问题,并进行优化;三是架构设计,能够设计合理的系统架构,让 AI 在框架内发挥作用。总之,要成为一个能够驾驭 AI 的开发者。
我觉得“渐进式披露”挺巧妙的,只在需要的时候才加载信息。另外,可以尝试信息压缩技术,比如把历史对话总结成关键信息,或者用向量数据库存储知识,只检索相关内容。还有就是控制单轮对话的长度,引导用户逐步提问。
从工程角度,可以考虑使用更高效的模型。有些轻量级模型在保证效果的同时,对上下文长度的要求更低。另外,可以把一些计算量大的任务拆分成小任务,分批次处理,避免一次性加载过多信息。
其实这两种模式可以结合使用。可以先用“全局规划”定一个大方向,然后在每个步骤中,再用“边做边想”进行微调。比如,一个 AI 写作助手,可以先规划文章的大纲,然后在具体写作时,再根据上下文和灵感进行调整。
我觉得“全局规划”的 AI Agent 在任务目标明确、步骤相对固定的场景下优势明显,比如文章中提到的电商运营场景生成。因为它能提前规划好所有步骤,避免遗漏。相反,如果任务本身就充满不确定性,需要根据实时反馈动态调整,那“边做边想”可能更灵活。
除了渐进式披露,还可以试试“上下文窗口滑动”。就是说,只保留最近的几轮对话,把早期的信息丢弃。这种方法比较简单粗暴,但对于一些不太需要长期记忆的场景,效果还不错。另外,“prompt engineering”也很重要,设计清晰简洁的 prompt 可以减少 LLM 处理无用信息。
与其担心被取代,不如拥抱 AI。我们可以把 AI 当成超级代码助手,用它来提高效率。同时,也要不断学习新的技术和知识,保持自己的竞争力。比如,学习 prompt engineering,学会如何更好地与 AI 交流。另外,要加强对底层原理的理解,这样才能更好地利用 AI 进行优化和调试。