Cursor面临强劲对手:Augment Code实测体验

Cursor 迎来了强大的对手,Augment Code实测

Augment Code 介绍

根据官方介绍,Augment Agent 是首个转为大型代码库工作的专业软件工程师设计的 AI 编码助手,上下文支持 200K ,也就是 20 万的 token 啊。

这对于专业的编程人员来讲,太实用了,已经达到可以做项目级别了。

除此之外,Augment Agent 还支持持久性的内存,就是它可以学习你的编码风格,记得你之前的重构,适配你的代码规范。记忆会随着时间的推移而积累。你不必在每次会话中重新教它。

除了基本的编码支持,Augment Agent 还支持多模态输入,如截图和 Figma 文件,用于修复错误和实现 UI 。

另外,目前 Augment Agent 通过结合 Anthropic 的 Claude Sonnet 3.7 和 OpenAI 的 O1 推理模型,在 SWE-bench verified 基准测试中取得了最高分,达到第 1 名(在真实任务上达到 65.4%)。

 

简介

Augment 是一款开发者 AI 平台,它能帮助你理解代码、调试问题并快速交付,因为它理解你的代码库。使用聊天、下一编辑和代码补全功能,让你更高效地完成任务。

 

核心宣传点:

  1. 1. Chat(聊天):永远不再为开始而卡壳。聊天将帮助你快速熟悉不熟悉的代码。

  2. 2. 下一代编辑器:通过逐步引导您完成复杂或重复性的更改,帮助您持续推进任务。

  3. 3. 代码补全:智能代码建议,即可了解您的代码库。

这里我推荐一个非常好用的手指筷子,在平时玩手机、电脑工作、刷剧的时候想吃零食又不想脏手,非常实用和实惠,我买了两双,爱不释手。现在卖的很便宜

Augment Code 试用

安装

目前提供了 vscode 扩展、[JetBrains IDEs](https://plugins.jetbrains.com/plugin/24072-augment) 插件、VIM 这三种使用方式,下面通过安装 vscode 扩展来使用。

 

安装成功之后,需要进行登陆,登陆成功之后就可以使用了;目前测试下来 remote 模式的 vscode 登陆不上,本地的可以。

使用

刚好有一份 vllm 项目的代码,而且也不太懂,测试一下看能不能把我讲明白。

  1. 1. 先导入一个项目;导入之后它就会进行索引整个项目

vllm 最核心的就是 PagedAttention 的原理,但是从之前看过一些介绍来看,只是明白了,但还不知道是如何实现的。

PagedAttention 的核心就是把 Attention 的加载从一个连续的显存空间拆分成了按显存页进行加载,使 GPU 的显存利用率增高。

问出了第一个问题:介绍PagedAttention

 

  1. 1. 核心架构,这个我去看了代码确实是对的,在 vllm/attention/backends 目录下的 abstract.py[1] 文件中有这个抽象类的定义。还提到了它有多个实现类,这个有点问题,真实的实现类比这个多,比如缺少 CPUMLABackend 等等,还有好几个。

 

  1. 1. 讲了主要实现类以及文件位置 PagedAttention 都是对的。

 

  1. 1. 突然讲到了 KV Cache 管理,有点奇怪。

 

  1. 1. Attention 的计算实现 forward_decode 。提到有两种模式 Decode 和 Prefix ,对应的就是 forward_decode 和 forward_prefix 这两个函数。

 

  1. 1. 后面又补充了说支持很多硬件,算是给第一点进行补充,

 

这个问题问下来算是对这块的代码基本有一个了解了;比直接看确实强很多 👍

第二个问题:让它帮我添加一个新模型

帮我添加 Salesforce/SFR-Embedding-Code-2B_R 这个新的模型在vllm中运行;目前vllm的代码还不能运行它。你需要去huggingface上查看模型https://huggingface.co/Salesforce/SFR-Embedding-Code-2B_R/blob/main/config.json文件,获取它的architectures信息,之后才能添加模型注册;其它还需要参考https://huggingface.co/Salesforce/SFR-Embedding-Code-2B_R/blob/main/modeling_gemma2.py中的实现使其在vllm中能运行。

首先还是使用 chat 模式,进行了多次 输入的调整,但是依然回复的牛头不对马嘴;于是选用 Agent 模式进行测试一下。

还是使用上面的提示此。

  1. 1. 第一点另我意外的是它居然真的去下载文件回来进行查看了。因为它需要知道这个模型架构的类型,就需要读取 config.json 文件,在 chat 模式下都是给我乱说的。

 

  1. 1. 然后它列出了执行计划,涉及到四个步骤;第一步这个模型架构就描述对了。

  2. 2. 它给我实现出来了,我直接进行测试一下,而且它还贴心的给了测试文件。

尝试运行之后发现还不能跑,有bug,也可能和它训练时候的 vllm 版本代码有关,导入的很多包路径都有问题。

第三个问题:做一个微信小程序

帮我设计和实现一个微信小程序的项目,同时帮我实现后端golang web服务和数据库mysql表,项目主要功能是家庭图书管理系统,记录家庭购买的书籍以及存放位置信息等;
主要有三页面,第一个页面是首页,主要展示家庭图书信息,可以支持搜索图书,需要通过调用后端API把功能实现。第二个页面是一个图书录入页面,通过扫描图书的ISBN,然后通过后端的ISBN查询接口去查询图书的基本信息,包括作者、出版时间、价格等等;第三个页面是我的页面,主要是可以邀请家庭成员进入这个图书馆,查看图书所在位置和有那些图书。

把提示此输入之后,大概 20 分钟给我实现了前端、后端、数据库表设计,并且最后都可以成功的执行。

  1. 1. 小程序

  2. 2. 后端自动给我启动之后调用 API 报错了,说明前端已经自动给我添加这个实现了。

  3. 3. 我本地没有数据库,让它给我用docker启动并且创建表

对比 Cursor

首先给我的感觉就是比 Cursor 可以执行的东西跟多了,而且执行很快,不知道是因为他们的模型快还是什么原因,总之很快,而且准确率很高。

在不久的将来,感觉像 WEB 程序只需要三个角色就可以做出一个系统来:

  • • 一个 UI 设计,把所有的页面样式、图标设计好,给到工具。

  • • 一个产品经路,把业务逻辑梳理清楚。

  • • 一个架构师,把系统架构设计出来, 设计出合理的数据库、接口定义等这些。

之后就可以通过工具自动化的生成、打包、部署然后就可以进行测试了。

 

 如何学习AI大模型?

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。


👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。


1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集

👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓

### 如何在软件开发中增强代码 在软件开发过程中,“增强代码”通常指的是通过改进现有代码的功能、性能或可维护性来提升其质量。这可以通过多种方式实现,包括但不限于引入新的技术、优化算法、重构代码以及利用数据增强技术。 #### 数据增强技术的应用 如果目标是通过增加训练数据的多样性来提高模型的表现,则可以借鉴图像处理中的数据增强方法[^2]。尽管这种方法主要用于机器学习领域,但在某些情况下也可以扩展到其他类型的输入数据上。例如,在自然语言处理(NLP)项目中,可以通过同义词替换、句子重组等方式生成更多的样本来扩充语料库。 #### 系统架构层面考虑 从更广泛的视角来看,当讨论如何增强代码时,还需要考虑到系统的整体设计——即系统架构的作用不可忽视[^3]。合理的系统架构能够使得未来的修改更加容易实施;它定义了各个组成部分之间的关系及其相互作用模式。具体来说: - **模块结构**决定了哪些部分应该作为独立单元存在并可能被重用。 - **构件连接器结构**描述了这些部件之间是如何协作完成任务的。 - **分配结构**则进一步明确了资源分布情况,这对于分布式应用尤为重要。 因此,在规划任何有关增强代码的工作之前,先审视当前项目的体系框架是非常必要的。 #### 类比理解AOP概念下的代码增强 面向切面编程(Aspect-Oriented Programming,AOP)提供了一种机制用于分离横切关注点(cross-cutting concerns),从而简化复杂度较高的程序逻辑[^4]。通过这种方式,可以在不改变原有业务流程的前提下向其中注入额外的行为特性—这种操作实际上也是一种形式上的“代码增强”。 下面给出一段简单的Python示例演示如何使用装饰器(decorator pattern)来进行基本的日志记录功能添加,这是AOP思想的一个简单体现: ```python def log_decorator(func): def wrapper(*args, **kwargs): print(f"Calling function '{func.__name__}' with arguments {args} and keyword arguments {kwargs}") result = func(*args, **kwargs) print(f"Function '{func.__name__}' returned {result}") return result return wrapper @log_decorator def add(a, b): return a + b add(5, 7) ``` 上述例子展示了如何无需改动`add()`函数本身即可为其增添日志打印能力。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值