
用SWE-agent自动修复GitHub Issue从安装到复盘轨迹的完整上手【免费下载链接】SWE-agentSWE-agent takes a GitHub issue and tries to automatically fix it, using your LM of choice. It can also be employed for offensive cybersecurity or competitive coding challenges. [NeurIPS 2024]项目地址: https://gitcode.com/GitHub_Trending/sw/SWE-agentSWE-agent 是 NeurIPS 2024 由普林斯顿与斯坦福推出的软件工程智能体给它一个 GitHub issue它自主跑代码、改源码最后产出修复补丁。读完你能独立完成从安装、跑通一次修复到复盘轨迹的全部流程。先判断值不值得花时间这一节帮你 10 秒内决定去留。适合你想验证大语言模型当自动修 bug 工程师的效果或想批量跑一批 issue 评测模型如 SWE-bench不适合你只想要开箱即用的一键修 bug工具它定位是研究工具配置项多、依赖 Docker得习惯命令行三分钟跑通这一节解决装起来的问题两条命令加一个密钥。要求 Python 3.11并装好 Docker代码默认在容器沙箱里执行。git clone https://gitcode.com/GitHub_Trending/sw/SWE-agent cd SWE-agent pip install --editable .装完执行sweagent --help能看到子命令列表即成功。运行前还要导出你所用模型的 API 密钥例如export ANTHROPIC_API_KEYyour key其他模型的配法见 docs/installation/keys.md。跟一个真实GitHub issue修到结尾这一节用官方最小示例修一个缺冒号的语法错误从头走到尾让你看清全过程。你输入的就是三件事模型名、在哪个仓库里跑、修哪个 issuesweagent run --agent.model.nameclaude-sonnet-4-20250514 \ --env.repo.github_urlhttps://github.com/SWE-agent/test-repo \ --problem_statement.github_urlhttps://github.com/SWE-agent/test-repo/issues/1现象控制台先刷出Starting runtime等几行Docker 容器启动、工具被上传进容器随后进入带编号的STEP循环模型每轮交替做发出一条命令 → 收到执行输出。解读这就是看代码 → 改代码 → 运行验证的核心循环issue 原文被当作任务说明注入给模型。最后你会拿到两样东西trajectories/目录下的.traj文件记录每一步和.patch最终修复补丁。进实验目录启动网页查看器看结果cd trajectories/$USER/实验目录 sweagent inspector图里看两处左侧列表每条.traj旁的绿勾或红叉表示该实例是否通过中间Evaluation Report显示这次运行的花费、token 数与 API 调用次数是判断单次运行是否烧钱失控的快捷入口。SWE-agent为什么能自动修复核心循环白话版这一节用一句话讲清上面屏幕背后发生了什么。类比语言模型是远程干活的工程师Docker 容器是他的工位config.yaml是岗位职责说明。每一步由Agent向模型要下一步动作SWEEnv在远程容器里执行命令并回传输出History Processor把历史压缩整理后交给Model模型调用submit后系统提取补丁。图里 1→11 的编号就是循环顺序命令进SWEEnv2经Agent的forward()9驱动历史经History Processor7送入Model8。记住这四个组件名就足够看懂配置文件了。翻车现场与自救按症状查问题这一节收三个新手最常撞上的问题固定症状 → 原因 → 修复。症状sweagent: command not found原因命令装在另一个 Python 环境里当前 shell 激活的不是它。 修复装包那个环境里执行python -m sweagent --help验证或用which python核对环境。症状permission denied ... docker.sock原因当前用户没有 Docker 套接字权限。 修复sudo chmod 666 /var/run/docker.sock或按 docs/installation/tips.md 排查。症状模型输出解析失败循环直接报错退出 原因模型不支持 function calling而默认用function_calling解析器。 修复把配置里agent.tools.parse_function.type改成thought_action原理见 docs/reference/parsers.md。下一步往哪走这一节给你三个可直接进入的入口。想换模型或工具组合看 config/default.yaml单个 yaml 控制提示词、工具与历史处理想一次批量跑 SWE-bench看 docs/usage/batch_mode.md运行界面长这样图里每一行是一个 issue 实例底部进度条显示批次的整体进度与累计花费。想逐帧复盘单次运行看 docs/usage/inspector.md命令行版sweagent inspect可逐步翻阅跑通一次后改配置、换模型、跑批量都是你自己能动手的事了。【免费下载链接】SWE-agentSWE-agent takes a GitHub issue and tries to automatically fix it, using your LM of choice. It can also be employed for offensive cybersecurity or competitive coding challenges. [NeurIPS 2024]项目地址: https://gitcode.com/GitHub_Trending/sw/SWE-agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考