Programmeren met een AI

使用 AI Agent 进行编程

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

顺序和重复问题

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

带有内存和项目结构的代码平台有帮助

一种解决方案是使用能够管理内存和项目结构的AI代码平台,这有助于在复杂项目中保持一致性。不幸的是,这些功能并不总是被一致应用。因此,AI可能会在编程过程中丢失项目的整体关联,引入不必要的重复或错误的依赖关系。

大多数AI编码平台使用所谓的工具来调用大型语言模型(LLM)。这些工具基于开放标准协议(MCP)。因此,可以将AI编码代理连接到如Visual Code这样的IDE。你也可以在本地使用llama或ollama搭建LLM,并选择一个MCP服务器进行集成。模型可在huggingface找到。

IDE扩展不可或缺

为了更好地管理AI生成的代码,开发者可以使用IDE扩展来监控代码正确性。诸如代码风格检查器、类型检查器和高级代码分析工具等辅助工具有助于及早发现并修正错误。它们是AI生成代码的重要补充,确保代码质量和稳定性。

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

AI代理反复犯错的一个主要原因是它们对API的理解方式。AI模型需要上下文和明确的角色描述才能生成有效代码。这意味着提示语必须完整:不仅包含功能需求,还要明确预期结果和边界条件。为方便起见,你可以将提示语以标准格式(MDC)保存,并默认发送给AI。这对你遵循的通用编程规则、功能和技术需求以及项目结构尤其有用。

FAISS和LangChain等工具的帮助

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

结论:有用,但尚不能独立完成

AI是程序员的强大工具,可以加速开发过程。但它尚不能在无人监督的情况下独立设计和构建复杂代码库。程序员应将AI视为能够自动化任务和生成创意的助手,但仍需指导和纠正,才能获得良好成果。

联系我们,帮助搭建开发环境,助力团队充分利用开发环境,更多专注于需求工程和设计,而非调试和编写代码。

 

Gerard

Gerard

Gerard 作为人工智能顾问和经理非常活跃。凭借在大型组织中的丰富经验,他能够非常快速地理清问题并推动解决方案的实现。结合他的经济学背景,他能够做出商业上负责任的决策。

AIR (Artificial Intelligence Robot)