Agentless:革命性的无代理软件工程方案

本文由「大千AI助手」原创发布,专注用真话讲AI,回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关注我,一起撕掉过度包装,学习真实的AI技术!

01. 什么是Agentless?

Agentless是由伊利诺伊大学香槟分校(UIUC)张令明教授团队提出的一种无代理自动化软件开发方法。与研究焦点聚焦于Agent系统设计不同,UIUC团队选择反其道而行之。

与传统的基于代理的方法的冗长和复杂的设置相比,Agentless采用了简单的定位后修复两阶段过程,而不让LLM决定未来的动作或使用复杂的工具。

其核心理念是摒弃复杂的AI代理系统,通过简单的两阶段方法来定位和修复代码库中的bug。这种方法惊人地发现,简单并不等于低效,反而在性能和成本上都表现出色。

本文由「大千AI助手」原创发布,专注用真话讲AI,回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关注我,一起撕掉过度包装,学习真实的AI技术!

往期文章推荐:

02. 为什么需要Agentless?

当前AI代理系统存在几个显著问题。它们通常有复杂的工具使用和设计,需要精心设计API调用规范。决策规划的控制不足,代理容易困惑并执行次优探索。而且,它们缺乏自我反思能力,无法过滤不相关或错误信息。

更值得关注的是,图灵奖得主Yoshua Bengio等专家指出,智能体AI系统可能存在灾难性风险,包括目标偏差、目标泛化和奖励篡改等问题,可能威胁人类生存。

Bengio建议开发非智能体(non-agentic)AI系统作为更安全的替代方案。Agentless正是在这样的背景下应运而生,提供了一种更简单、更安全、更可控的自动化软件开发途径。

03. Agentless的技术架构

Agentless的工作流程分为两个核心阶段:定位阶段修复阶段

定位阶段(Localization Phase)

采用分层查询方式,逐步缩小到可疑的文件、类和函数,以及具体的编辑位置:

  1. 项目结构转换:将整个项目代码库转换成树状结构,展示每个文件在项目中的相对位置。
  2. 文件级定位:利用LLM根据问题描述和结构图,确定最可疑的前N个文件。
  3. 类与函数级定位:对于选定的文件,提供文件的声明头(类和函数的列表),输出需要重点检查的类和函数列表。
  4. 代码行级定位:将选出的类和函数的完整代码内容呈现给LLM,进一步缩小需要修改的具体代码行。

修复阶段(Repair Phase)

使用简单的diff格式生成多个候选补丁并对其进行过滤和排序:

  1. 生成候选补丁:将确定的代码位置和问题描述输入LLM,生成多个候选补丁。
  2. 语法与测试过滤:对生成的补丁进行初步过滤,移除存在语法错误或不能通过先前测试的补丁。
  3. 补丁重排与选择:剩余的补丁根据多数投票机制重新排序,选择排名第一的补丁作为最终修复方案。

整个过程就像一位经验丰富的医生先进行全身体检,然后根据症状快速找到病灶,最后进行精准的微创手术,只修改必要部分,大大降低了出错风险。

04. Agentless的性能表现

在流行的SWE-bench Lite基准测试中,Agentless取得了令人瞩目的成绩

使用Claude 3.5 Sonnet作为底层模型时,Agentless在SWE-bench lite和verified测试集上分别达到了40.7%和50.8%的解决率,超越了所有现有的开源Agent方案。

更令人印象深刻的是,Agentless实现了惊人的成本控制,每解决一个问题仅需0.7美元,远低于传统Agent方案动辄几美元甚至十几美元的成本。

在一些测试中,成本甚至低至0.34美元,比其他基于Agent的方案低了将近90%。这种成本效益使得Agentless对于资源有限的开发者和组织尤为吸引人。

05. 与传统Agent方案的对比

与传统Agent方案相比,Agentless的优势主要体现在以下几个方面:

架构复杂性:传统Agent需要复杂的环境建模和工具使用协议,而Agentless采用简单的两阶段流程,无需复杂工具。

决策机制:传统Agent将决策权交给LLM,容易出现错误累积,而Agentless限制了LLM的决策权,由系统控制流程。

可解释性:传统Agent的多步决策过程难以调试,而Agentless的简单设计使其更容易理解和调试。

成本效益:传统Agent需要多次API调用,成本高昂,而Agentless通过减少不必要的调用显著降低成本。

UIUC团队的研究表明,复杂的方案不一定是最好的选择。传统的Agent方法虽然看起来很酷炫,但实际上增加了很多不必要的复杂性,反而限制了其实际效果。

06. 应用场景与前景

Agentless的应用场景广泛,尤其在面对复杂和庞大的代码库时表现出色。它可以帮助开发者快速定位和修复bug,提高软件开发效率。

此外,Agentless还可以作为其他AI系统的安全护栏,评估其行为的风险,并阻止可能导致危害的行动。它能够通过计算某个行动可能导致的危害概率,并在概率超过阈值时阻止该行动。

在科学研究领域,Agentless的概念可以加速科学发现,帮助设计实验和预测结果。它的非智能体设计确保人类始终掌控最终决策权,为高风险领域提供了更安全的AI应用方式。


SWE-bench Lite基准测试中,Agentless不仅以27.33%的解决率 超越所有开源代理,更以单问题0.34美元的成本重塑了行业性价比标杆。

就连AWS研究科学家Leo Boytsov也赞叹:"Agentless框架表现优异,超过所有开源Agent解决方案,几乎达到SWE-bench Lite最高水平,而且以显著更低的成本击败了其他方案,展现了卓越的实用性。"

UIUC团队推出的Agentless已经登上开源AI软件工程师榜首,在GitHub上获得了超过300个Star,并登上DAIR.AI每周最热ML论文榜单前三。这场无声的革命正在重新定义我们对于AI软件开发自动化的认知。

本文由「大千AI助手」原创发布,专注用真话讲AI,回归技术本质。拒绝神话或妖魔化。搜索「大千AI助手」关注我,一起撕掉过度包装,学习真实的AI技术!

相关推荐
一点一木12 小时前
从零实现 LLM(下):推理生成、常见问题与进阶优化
人工智能·chatgpt·llm
聚客AI13 小时前
🤖告别复杂粘合代码:LangGraph+OceanBase构建智能Agent蓝图
人工智能·llm·agent
深度学习机器13 小时前
AI IDE如何构建高效代码索引?以一个MCP Server的开发过程进行阐述
llm·agent·cursor
CoderJia程序员甲13 小时前
GitHub 热榜项目 - 日榜(2025-08-30)
ai·开源·大模型·github·ai教程
ZHOU_WUYI15 小时前
whisper-large-v3 模型
llm·whisper
前端双越老师17 小时前
AI 编程实践 VSCode + Copilot 从 0 开发 Chatbot 页面
人工智能·agent·ai编程
堆栈future17 小时前
AI工作流自动生成公众号图文并发布到wemark
llm·aigc·markdown
YBCarry_段松啓17 小时前
LangGraph:构建AI Agent的利器
langchain·llm·agent
喜欢吃豆19 小时前
从像素到篇章:深入剖析光学字符识别(OCR)的技术原理
人工智能·算法·语言模型·自然语言处理·大模型·ocr