@kite12580 在 比Cursor更强的Augment是如何给大模型提供上下文的? 中发帖
推荐一下Augment,是Cursor的竞品 里提到了Augment Code。之前看过几眼,主要印象是他们的上下文索引比较新奇,有没人能看出来是怎么做的?文档说他们有一套索引方式,很大的项目上传到他们的私有云索引后就能给LLM精准地提供上下文。但文档看起来不想介绍具体闭源的实现方式
最初试用Cursor的时候他们上下文是基于RAG的,不太了解现在还是不是。他们先把整个项目里的所有文件切割并索引进向量数据库。取决于用户问题,他们的向量模型会找出数据库里语义上相关度最高的代码片段,然后把这些片段作为上下文提供给LLM。这样造成了一些问题,比如向量模型有时候找出的代码片段相关度不够高,LLM并不知道整个项目是什么样的,代码片段也包含了很多无用信息。
Aider是通过treesitter parser解析所有文件并去除无用信息,比如只保留函数定义去除实现,然后生成repository map...