计算机方向详解 · 代码智能体

代码智能体 / AI 软件工程:让模型进入真实代码仓库

代码智能体不是简单代码补全,而是让模型读仓库、理解 issue、定位文件、修改代码、运行测试并生成补丁。学生项目要围绕真实仓库、测试闭环和自动修复成功率来设计。

核心数据代码仓库、Issue、测试用例、PR diff 和 CI 日志
常见任务代码生成、自动修复、测试生成、代码审查
常用方法代码检索、补丁生成、测试驱动修复、PR Agent
适合人群适合喜欢软件工程、自动化测试和 Agent 系统的同学
方向导读

方向理解:先知道它到底在做什么

研究大模型如何理解代码仓库、定位 issue、修改代码、运行测试并提交补丁。

代码智能体 / AI 软件工程的本质:先把方向翻译成任务闭环

代码智能体 / AI 软件工程不是只背一个热门名词,而是要看它处理什么数据、解决什么任务、用什么指标证明有效。

学生入门时最重要的是先跑通最小闭环:明确输入输出,复现一个 baseline,再围绕数据、模型、评价或项目化展示做改进。

  • 输入通常来自计算机 / 软件工程 / Agent相关数据或公开 benchmark。
  • 输出必须能被指标评估,不能只停留在概念介绍。
  • 项目价值来自可复现结果、可视化分析和清楚的误差讨论。

中文链路图:把方向拆成输入、模型、任务和成果

任务地图

任务地图:别只背方向名,要看输入输出

一个方向能不能做成项目,关键看它能不能落到明确任务、评价指标和实验数据。

任务地图:适合小白先判断项目切入点

01

代码生成

把需求转成函数、脚本或模块实现。

输入自然语言需求、函数签名
输出可运行代码
科研价值:适合用 HumanEval、MBPP 做入门实验。
02

仓库级修复

让 Agent 阅读项目、定位 bug 并修改文件。

输入Issue、代码库、测试
输出补丁和 PR
科研价值:贴近真实软件工程场景。
03

测试生成

自动补齐测试用例并暴露潜在错误。

输入源代码、接口说明
输出单元测试和覆盖率
科研价值:适合做质量提升项目。
04

代码审查

识别 bug、风格问题和安全风险。

输入diff、上下文、规范
输出审查意见和风险等级
科研价值:容易做成团队工具。
05

工具调用

让 Agent 调用编译、测试、检索等工具。

输入终端、搜索、编辑器
输出执行日志和结果
科研价值:是 coding agent 的核心能力。
06

评测基准

用标准 benchmark 测真实修复能力。

输入任务集、仓库、判题器
输出通过率和错误类型
科研价值:能支撑课程论文或技术报告。
技术路线

技术路线:从经典方法到现在的热点

技术路线不是模型名清单,而是看这个方向的问题意识如何一步步变化。

技术路线图:帮助学生看懂方法演进

阶段 01

补全与函数生成

从局部上下文生成代码片段。

CodexCode LLMHumanEval
阶段 02

竞赛式程序合成

把题目、样例和搜索结合生成可提交程序。

AlphaCodeSamplingRanking
阶段 03

仓库级软件修复

理解 Issue、运行测试、编辑多文件。

SWE-benchPatchRepository
阶段 04

闭环 Coding Agent

规划、编辑、测试、反思形成自动化循环。

SWE-agentTool UseCI Loop
论文清单

经典论文阅读清单

这不是让你背论文名,而是按时间线建立路线感:先看每篇论文解决了什么问题,再看图里哪一块最关键,最后知道它适合放进什么项目里。

Codex

Codex

为什么重要:Codex 是这个方向的代表工作,适合用来理解具体任务、核心方法和实验指标。

新手读法:重点看它的输入输出、核心模块、评价指标和失败案例,而不是只背论文标题。

打开论文 / 来源
2019经典方法看图重点:Codex 的核心流程如何从输入走到实验结果
AlphaCode

AlphaCode

为什么重要:AlphaCode 是这个方向的代表工作,适合用来理解具体任务、核心方法和实验指标。

新手读法:重点看它的输入输出、核心模块、评价指标和失败案例,而不是只背论文标题。

打开论文 / 来源
2021代表论文看图重点:AlphaCode 的核心流程如何从输入走到实验结果
SWE-bench

SWE-bench

为什么重要:SWE-bench 是这个方向的代表工作,适合用来理解具体任务、核心方法和实验指标。

新手读法:重点看它的输入输出、核心模块、评价指标和失败案例,而不是只背论文标题。

打开论文 / 来源
2023前沿论文看图重点:SWE-bench 的核心流程如何从输入走到实验结果
SWE-agent

SWE-agent

为什么重要:SWE-agent 是这个方向的代表工作,适合用来理解具体任务、核心方法和实验指标。

新手读法:重点看它的输入输出、核心模块、评价指标和失败案例,而不是只背论文标题。

打开论文 / 来源
2025综述/趋势看图重点:SWE-agent 的核心流程如何从输入走到实验结果
评价指标

评价指标:怎么证明项目真的有效

不同任务不能只看 Accuracy。论文和项目都要说明指标为什么适合当前问题。

Resolved Rate

SWE-bench 或 issue 任务中最终解决比例。

Test Pass Rate

补丁后单元测试、回归测试是否通过。

Patch Quality

修改是否小而准、没有引入额外副作用。

Repository Retrieval Accuracy

是否找到相关文件、函数和上下文。

Iteration Count

定位、修改、测试需要几轮。

Human Review Load

人工审查补丁所需时间和修改量。

数据工具

数据集和工具:先看有没有公开入口

小白选题时先确认数据、代码和 benchmark 是否可获得,否则方向再热也很难落地。

导师翻译

导师主页方向翻译:这些词到底暗示什么

学生看老师主页最难的是不知道关键词背后对应什么任务和能力要求。

Codex

通常对应 Codex 相关任务、数据集、指标和实现路线。

AlphaCode

通常对应 AlphaCode 相关任务、数据集、指标和实现路线。

SWE-bench

通常对应 SWE-bench 相关任务、数据集、指标和实现路线。

SWE-agent

通常对应 SWE-agent 相关任务、数据集、指标和实现路线。

入门路径

入门路径:从小项目走到研究点

真正适合学生的路线,是先跑通最小闭环,再逐步加难度。

第 1 阶段:做仓库问答

先让模型能检索文件和解释代码。

第 2 阶段:修复小 bug

接入测试,完成定位-补丁-验证闭环。

第 3 阶段:跑 benchmark

用 SWE-bench lite 或自建 issue 集评估。

第 4 阶段:做工程化界面

展示 diff、测试日志和人工审查建议。

项目选题

项目选题:能写进简历和申请材料

下面这些题目不是空泛口号,而是可以沉淀代码、实验结果、图表和论文雏形的方向。

小型仓库修 bug Agent

输入 issue,输出补丁、测试日志和解释。

代码库问答助手

基于仓库检索回答架构、函数和调用关系。

单元测试生成评测

比较模型生成测试的覆盖率和有效性。

SWE-bench Lite 复现报告

分析模型失败原因和改进策略。

常见问题

常见问题:小白最容易卡住的判断

这部分覆盖搜索和咨询时最高频的问题。

没有大型代码模型能做吗?

可以先用开源模型或 API 做评测、测试生成和仓库修复流程。

项目最重要的指标是什么?

不是代码看起来像,而是测试通过率、修复成功率和错误类型分析。

如何做得像科研而不是工具?

围绕 benchmark、消融、失败案例和工具调用策略展开。

继续探索适合你的科研方向

这个方向只是计算机科研路线中的一个入口。你也可以继续查看多模态学习、世界模型、推荐系统、可信 AI 等方向,再结合自己的专业基础、目标导师和时间周期选择更合适的切入点。