Coderen met een AI

用 AI 代理进行编程

人工智能(AI)从根本上改变了我们的编程方式。AI 代理可以生成代码、优化代码,甚至协助调试。然而,在与 AI 合作编程时,程序员仍需牢记一些限制。

顺序和重复问题

AI 代理在代码顺序上常常表现不佳。例如,它们可能将初始化放在文件末尾,导致运行时错误。此外,AI 可能毫不犹豫地在同一项目中定义同一类或函数的多个版本,造成冲突和混淆。

一个具有记忆和项目结构的代码平台有助于解决

一种解决方法是使用能够管理记忆和项目结构的 AI 代码平台,这有助于在复杂项目中保持一致性。不幸的是,这些功能并不总是得到一致应用。因此可能出现 AI 丢失项目连贯性,在编程过程中引入不必要的重复或错误的依赖关系。

大多数 AI 编程平台通过所谓的工具来调用大型语言模型。这些工具基于一种开放的标准协议(MCP)。因此,可以将 AI 编码代理连接到像 Visual Code 这样的 IDE。你也可以在本地部署一个 LLM,使用 LLaMA 或 ollama,并选择一个要集成的 MCP 服务器。NetCare 开发了一个 MCP 服务器 用于帮助调试并管理底层(Linux)系统。对于想要直接将代码上线的情况非常方便。
可以在以下位置找到模型: Hugging Face.

IDE 扩展不可或缺

为了更好地管理 AI 生成的代码,开发人员可以使用监控代码正确性的 IDE 扩展。诸如 linter、类型检查器和高级代码分析工具等帮助在早期发现并修正错误。这些工具是对 AI 生成代码在质量和稳定性方面的重要补充。

重复错误的原因:API 中的上下文与角色

AI 代理反复出错的一个主要原因与它们如何解释 AI API 有关。AI 模型需要上下文和明确的角色定义才能生成有效代码。这意味着提示(prompt)必须完整:不仅要包含功能性要求,还要明确预期结果和边界条件。为便于管理,可以将提示以标准格式(MDC)保存并默认随请求发送给 AI。这对通用编程规则、功能与技术需求以及项目结构尤为有用。

像 FAISS 和 LangChain 这样的工具有所帮助

例如,产品如 FAISSLangChain 提供使AI更好处理上下文的解决方案。例如,FAISS 有助于高效搜索和检索相关的代码片段,而 LangChain 有助于组织 AI 生成的代码并在更大的项目中保持上下文。不过,你也可以选择在本地使用 RAC 数据库自行搭建。

结论:有用,但尚无法独立完成

AI 对程序员来说是一个强大的工具,能加速开发流程。但它尚不能在无人监督下独立设计并构建复杂的代码库。程序员应将 AI 视为可自动化任务并生成想法的助手,但仍需人为引导和校正,才能得到令人满意的结果。

采纳 联系 以帮助搭建开发环境,让团队能充分利用开发环境,更多专注于需求工程和设计,而不是调试和编写代码。

 

Gerard

Gerard 是一名活跃的 AI 顾问兼管理者。在大型组织拥有丰富经验的他能够非常迅速地拆解问题并推进到解决方案。结合他的经济学背景,他能做出符合商业利益的决策。