Skip to content

项目太大,AI无法理解?试试这3种思路

约 1039 字大约 3 分钟

大项目理解代码图谱AI编程

2025-11-17

上周六的活动中交流了一个问题:如何解决 AI 在大项目理解中的瓶颈

活动结束后,我一直在思考,这个场景确实是个非常普遍的痛点,很可能会造成原本很好的工具无法使用。

于是,我决定好好的研究下,今天,就把目前的思考内容和大家分享下,抛砖引玉。

处理大项目的思路

首先,有一个背景,我们需要达成一致。

在超级模型出现前,将整个项目代码一次性塞入 AI 中是不现实,现有思路的关键都在于如何更加精确、动态地找到回答问题所需的代码片段

整理了如下几个思路:

  • 人工划分降低理解难度
  • 借助工具实现代码图谱
  • Claude Skills按需加载上下文

这几个思路并不是完全并列,而是可以同时使用,相互结合的。

人工划分降低理解难度

最难的,也是最简单的思路。

”在于这个过程需要人工处理,工作量比较大;“简单”在于不需要额外的知识辅助,也不需要引入新的工具。

  • 可以通过分层的方式,比如:服务层、业务层、数据层等。
  • 可以通过分模块的方式,比如:合同模块、支付模块、日志模块等。

所有的措施都是为了缩小检索空间,只要划分后的上下文,AI 可以“吃”下,那就可以了。

借助工具实现代码图谱

上面的思路估计很多人会望而却步,毕竟,大项目最难着手的就是分析。

这时候,还有另一种思路,借助专门的“代码图谱”工具进行分析。

“代码图谱”可以理解为一种专门的“知识图谱”,通过解析 AST调用关系数据依赖,构建项目级的语义索引,支持基于结构的精准检索

相比纯向量检索,代码图谱更能捕捉函数调用、继承等结构化关系,适合深度理解。

我找到了一个比较不错的落地工具:Sourcegraph Cody,支持 VS Code 系列插件安装。

目前尚未来得及实测,大家感兴趣可以先行尝试。

按需加载上下文

“代码图谱”已经提供了一个比较智能的上下文自动划分思路,但这个思路更多的解决重点其实是在单次 AI 对话的上下文上。

如果某个任务特别复杂,单次 AI 对话无法解决,需要多次交互,那上下文依然会出现无法满足的情况。

这时候就需要“按需加载上下文”这种思路去进一步优化了。

这一思路主要是引入一个动态决策的智能体,它先将复杂任务拆解为的多个步骤,并针对每一步的请求内容,动态分析所需的上下文(在代码图谱基础上,再次按需索取),然后循环迭代,直至计划执行完毕。

其实就是 Claude Skills 的设计思路,可以在 Plan 阶段生成的文档计划中,支持自动/手动配置相关上下文

但是,目前尚未找到完美的落地方案。如果你有合适推荐,欢迎留言指导。

结语

以上就是这两天了解到的AI 理解大项目的几个思路,可以结合起来,逐步应用。

你遇到大项目理解难题时,是怎么破局的?欢迎留言交流!