AI写代码,AI审代码?这合理吗?

2025-05-01
AI写代码,AI审代码?这合理吗?

Greptile公司联合创始人Daksh发现,一个名为Devin的AI代码生成工具的提交次数超过任何人类工程师。这引发了一个有趣的问题:AI生成的代码应该由AI本身来审查吗?虽然LLM是无状态的,每次调用都是独立的,但这并不意味着AI可以完美地审查自己的代码。AI生成的代码虽然提高了效率,但也可能引入人类难以发现的错误。研究表明,AI在发现某些类型的错误方面比人类更有效,尽管其准确率还有待提高。最终,文章认为,尽管AI代码审查并非完美,但它在发现AI自身引入的特定类型错误方面比人类更有效。

阅读更多
开发

用LLM生成搞笑表情包:比想象中难得多

2025-01-06
用LLM生成搞笑表情包:比想象中难得多

一位滑铁卢大学的实习生尝试使用LLM和Greptile API生成可以“吐槽”GitHub代码库的表情包。他发现,让LLM生成既符合技术细节又幽默风趣的文字并非易事。起初,直接让LLM生成吐槽文字效果不佳,过于通用。后来,他将任务拆分成代码分析和文字生成两步,先用Greptile API分析代码库找出具体问题,再用LLM生成针对性吐槽。图像生成方面,由于模型处理文字能力有限,他最终采用预设模板和node-canvas手动添加文字。整个过程充满了挑战,但也最终上线了reporoast.com,一个可以自动生成代码库吐槽表情包的网站。

阅读更多

AI代码审查机器人如何学会“闭嘴”

2024-12-21
AI代码审查机器人如何学会“闭嘴”

Greptile公司开发的AI代码审查机器人最初因评论过多而饱受诟病。为了解决这个问题,他们尝试了多种方法,包括改进提示词、让LLM自我评估评论质量,但都收效甚微。最终,他们通过将团队以往的评论向量化,并利用向量数据库进行聚类分析,成功过滤掉与大量被否定评论相似的“无用”评论。这一方法将开发者处理评论的比例从19%提升至55%以上,有效降低了LLM产生的噪音。

阅读更多
开发

将工程师团队划分为防御型和进攻型

2024-10-15
将工程师团队划分为防御型和进攻型

本文介绍了软件工程团队一种有效的组织架构:将团队划分为“防御型”和“进攻型”。 “防御型”团队专注于处理客户问题、bug修复等短期事件驱动型任务,为“进攻型”团队构建起一座堡垒,使其能够专注于长期项目,例如开发新功能和进行代码重构。作者认为,这种方法可以最大限度地减少对开发人员的干扰,提高工作效率。

阅读更多
未分类

代码库语义搜索的独特挑战

2024-08-20
代码库语义搜索的独特挑战

这篇文章探讨了代码库语义搜索的挑战。作者发现,与自然语言文本相比,直接对代码进行语义搜索效果不佳。这是因为代码和自然语言的语义相似性较低,而且代码文件中包含大量与查询无关的代码,这会降低搜索质量。作者建议在进行代码语义搜索时,应该先将代码转换为自然语言,并以函数级别而不是文件级别对代码进行分块,以提高搜索精度。

阅读更多
未分类