体验AI辅助编程工具

通灵义码的AI程序员(JetBrains)

image01.png

me平时用通灵义码的职能问答功能比较多一点,今天有时间来探索一下这个AI程序员的功能。

我们都知道通灵义码已经接入了qwen-2.5deepseek-v3deepseek-r1大模型:

image02.png

我一般用的qwen-2.5的这个模型。

<p style="color:red">这里简单理解一下,调用模型时的token:</p>

比如说上面描述,上下文窗口最大是128k tokens,指的是模型单次处理的最大token数量为128000个,包括输入的文本(prompt)和模型生成的输出(completion)的总和。这就以为着模型对单次输入的token数量是有限制的,在调用收费模型时,费用通常也是与token数量相关的。

AI程序员处理新项目

<font color="red">前置准备工作:</font>使用idea直接new Project,我没有基于spring initializer

image03.png

第一步:

我们可以跟AI程序员说:

我需要你帮我初始化这个springboot项目,项目需要访问 mysql,redis 。会用到 lombok,mybatisplus,hutool 这些技术,使用spring security做鉴权操作基于内存。请帮我初始化项目,创建配置文件。Java版本使用1.8,项目的根目录是com.xuanyuanzi

会帮助我们在com.xuanyuanzi目录下面生成pom.xmlapplication.ymlSecurityConfig.java等文件,发现springBoot的版本是2.7.5,我们可以在生成pom.xml文件的时候指定版本。

image04.png

第二步:

在init的基础上进一步完善功能

添加功能:添加文件logback-spring.xml文件,实现定制化的在控制台打印日志,另外pom.xml文件的build里面要跳过跳过单元测试指定java编译插件
image05.png

第三步:

配置正确的数据库连接信息

替换为这些配置数据库:el-admin, 用户名/密码: root/123456,redis: 密码123456,其他配置维持不变
image06.png

第四步:

我们平常在生成po、service、api文件时一般都用是idea的插件:MybatisX-Generator,在这里可以通过描述一段文字直接生成

针对db.sql文件中的数据库定义,你需要创建出对应的增删改查,分页条件查询,excel的导入导出,excel的导入导出使用easyexcel的代码,同时需要为代码创建对应的包 po,dto,vo,request,service,dao,controller,文件创建在com.xuanyuanzi目录下面,同时要针对po,dto,vo……分别创建子目录

===》》》

生成的效果不够完善时,可以进一步的添加描述完善代码结果。

最后可以让AI程序员帮我们生成一份项目说明:README.md

这样在不断地完善过后,我们就可以生成一个我们自己项目的脚手架了。

<hr />

AI程序员处理老项目

首先我们得知道在输入框输入#可以选择需要的相关上下文。常见的有:

#命令 含义
#file 表示用户当前正在查看的文件内容
#image 用户上传的图片内容
#selectedCode 用户在编辑器中选中的代码片段
#codeChanges 用户暂存区的代码改动列表
#codebase 整个项目或仓库的代码库

拿到一个老项目,就me来说,一开始最想知道的就是:这个项目用了啥技术栈,主要是做啥的……

so:

我们可以让AI程序员帮助我们对项目有个大致的了解:

#codebase 说一下你对这个项目的理解,这个项目主要用到了什么技术栈,主要包含了哪些业务场景

在没有项目的README.md文件时,通过AI程序员可以快速的帮助我们了解项目。

然后就是我们在走读代码的时候,如果<font color="red">某个类的文件过长,结构较为复杂</font>,我们可以通过AI程序员帮助我们了解这个文件:

#file 请你描述下这个类的功能,有没有一些可以改进和重构的地方

另外一个问题就是生成单元测试类了,很多自动化(CI/DI)部署工具都是集成单元测试检查的,如果我们不写改动代码的单元测试,流水线就过不了,但是我们很多人又懒得写。

so:

针对代码变更(#codeChanges)、单个或多个代码文件批量生成单元测试文件。

当我们在操作前端页面出现报错时,可以直接截图下面,使用#image让AI程序员帮助我们分析报错原因。

<hr />

me觉得两个有用的东西:

  1. 在问答输入框中输入 / 找到 /clear context指令,可以清空当前会话的上下文历史记忆,当我们想要问其他问题时,这个操作挺有用的。
  2. 使用职能问答选项,在问答输入框输入@找到@workspace,可以基于整个项目了解信息。

另外:

思路再放开一点,当文件夹不是项目代码时,比如我们可以把自己工作总结的文档放到一个目录下,可以快速的搭建一个独属自己的知识库;还有很多人都有自己的小说梦,可以基于上下文环境让AI辅助我们写一本自己的小说……。

总结:

这个AI程序员还是好吓人的,G了。

AI编程助手-Cline(VS Code)

Cline是个VS Code插件,可以在扩展里面直接下载,在API供应商的选择上,<font color="red">可以使用本地模型</font>,这个是比较强大的地方。

但是要用好这个工具,某些地方得依靠科学上网。

image07.png

Cline可以在输入框输入@唤醒功能:

@命令 含义
@file 通过智能解析直接包含文件内容
@folder 通过智能过滤批量导入目录内容
@url 自动获取并转换文档为markdown格式
@problems 集成工作空间诊断信息

用的时候,报这个错误,先不尝试了,等后面有机会再试试。

image08.png

结尾

giao!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容