这是与 Zed 的三位联合创始人 Nathan、Max 和 Antonio 的第五次对话。主要讨论了 AI 在编程中的应用,包括首次使用 AI 的时间、目前的使用方式、未来的使用计划,以及在 Zed 中 AI 功能的实施细节和今年的发展方向等。
- 首次使用 AI 经历:Nathan 早期使用 ChatGPT 做一些基本的事情,如定义几何库,这让他感到震惊。Antonio 是在 Nathan 的提示下开始使用 ChatGPT,他主要将其用于生成复杂的代码片段,但在 Zed 的代码库中使用时存在一些摩擦。
- 对 AI 的态度:Nathan 对 AI 持积极态度,认为其是令人惊叹的技术,不理解很多程序员对 AI 的仇恨和怀疑。Antonio 则认为 AI 有潜力,但在与 Zed 的代码库集成时仍有问题。Max 开始用 ChatGPT 代替 Google,但仍有很多知识未融入到工作流程中。
在 Zed 中的应用:
- 内联辅助(Inline Assist):Zed 中的内联辅助功能通过自定义的 Needleman-Wunsch 算法实现,可在选中文本后发送请求到 AI 并实时显示更改,该功能的实现耗时约半天,目前仍有改进空间,如提示优化等。
- 聊天助手(Chat Assistant):可用于编写 Markdown 等,能与多个模型交互。未来计划增加更多上下文,如当前文件及所有打开的文件等,实现工具调用,让助手与语言服务器交互等。
面临的问题与思考:
- 上下文窗口与延迟:增大上下文窗口可提供更多信息,但会增加延迟,目前仍在探索如何平衡两者,同时理解上下文窗口增大导致延迟增加的原因。
- 低挂果与范式转变:在添加 AI 到各种文本输入时,需思考是否会陷入局部最优,如在项目搜索中使用 LLM 生成正则表达式与传统关键字搜索的权衡。对于编程范式的转变,认为短期内仍需要人类参与,如监督访问和反馈循环。
- 长期影响与展望:对于未来五年是否仍需在 Zed 中输入编程语言语法存在分歧,Nathan 认为目前 AI 还无法构建代码编辑器,仍需人类参与;Max 则认为代码仍将是重要的,AI 将使编程更便捷;Antonio 对 AGI 的到来持怀疑态度,认为目前对 AI 的一些方面仍不了解。同时讨论了 AI 在不同编程领域的表现,如在低级编程中可能会遇到问题,以及 AI 在协作方面的潜力,如基于所有编辑和对话来训练 AI 等。
总的来说,对话围绕 AI 在编程和 Zed 中的应用展开,探讨了其优势、挑战和未来发展方向。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。