当前位置: 首页 > article >正文

AI自动化编程初探

        先说vscode+cline+modelscope方案,后面体验trae或者cursor再写写其它的。vscode和trae方案目前来说是免费的,cursor要用claud需要付费,而且不便宜,当然效果可能是最好的。

        vscode方案,我的经验是最好在ubuntu上,因为cline插件产生的命令是linux的命令,在windows上老报错,比如连续执行命令它会这样写cd xxx && npm install xxx,但是windows是识别不了&&的,所以还是在ubuntu上体验,没有实体机可以装个虚拟机,也很方便。

        首先是安装和配置,安装vscode,ubuntu系统在软件商店里搜code,就可以找到,然后点安装就好了,安装好vscode后在左侧dock栏找到插件(四个方块)那个图标,点击,搜cline,然后安装,安装好后配置api,这里我们用魔塔社区的免费api(每个账号一天2000次调用,基本相当于免费)。点击插件的齿轮按钮(右上角),配置api,首先是api provider,选openai compatible,然后打开魔塔社区魔搭社区(没注册的注册一下),然后点模型库,以第一个模型为例,点进去

 我们需要配置的有三个信息,一个是base_url,一个是api key,一个是modelid,base_url和api key配一次就行了,model id可以根据你调用的模型,配不同的值,注意点名字后面的复制即可,包含那个模型全部的名字,截图如下

截图中的代码界面是点模型右侧有个查看使用代码出来的。api key如果没有需要到 账号设置,访问令牌自己新建一个,位置如截图

     

还有个权限配置,由于cline在写代码过程中需要编辑文件,创建文件夹,执行命令等,需要把这些权限都打开,截图如下

好,配置好这些信息后,其实就可以让ai自动写代码了,这里参考一些大佬的开发流程,大概这样写,先写个README.md,主要介绍下项目的大概信息,比如这样

请根据以下内容为一个项目生成一个完整的 README 文档。内容需要完整、专业且吸引人。# [项目名称]  
一个简短的描述,说明项目的核心功能或目标(例如:"一个轻量级的任务管理工具,帮助团队高效协作")。## 背景  
介绍项目的起源或解决的问题(例如:"这个项目源于我们团队对简化工作流程的需求,旨在解决现有工具过于复杂的问题")。## 功能  
列出项目的主要功能(例如:  
- 用户认证和权限管理  
- 实时数据同步  
- 友好的用户界面)。## 技术选型
列出使用的技术或工具(例如:  
- 前端:React, TypeScript  
- 后端:Node.js, Express  
- 数据库:MongoDB)。

然后让AI根据README.MD写PRD.md,在对话窗口输入

根据 #README.md 生成 docs/PRD.md

再编写其它文档,比如

根据 #README.md 和 #PRD.md 编写技术文档 Development.md

生成前端文档

根据 #README.md 和 #PRD.md 以及参考图片,形成UI-Specs.md

进行任务拆分

根据 #Development.md 进行开发任务分解,并且形成TaskList.md,要求可跟踪、可执行

然后就可以让AI根据Tasklist.md进行开发了,当然每个人的工作流可能不一样,你可以探索自己的工作流。

        cline自动化程度非常的高,遇到错误,cline也会自己尝试修改,用了几天,我自己已经产生依赖性了,都不想自己写代码了^-^。下面是我自己用这个方案写的一个demo(唯一比较成功的一个,其它的都没写完,各种错误。。。。后面上传,公司有限制),前端用的react后端用的nodejs+mongodb,其实我没怎么用这些技术做过项目,但毕竟是AI编程嘛,主要考的AI编程能力,你只需知道它流行就行了^-^。

        别太美,首先呢,目前看来,全部让AI写成功率还是没那么高,主要还是受限于模型能力,相信随着模型越来越强大,写代码越来越好。下面是我总结的AI编程过程中遇到的问题:

 - 有失忆问题,就是说本来在之前的步骤已经发现某些问题,但是因为一些原因中断后,重新再让它看问题的时候,它就忘了刚才是什么问题,需要重新检测,然后重新检测的得到的问题可能跟刚才的问题不一致。

 - 对人的提示有强依赖。

 - 前端界面还比较简陋。

 - 对windows只支持linux的命令格式,对windows的命令不支持,所以只能在ubuntu上开发,或者支持,我还没找到方法。

 - 容易卡死,主要是大模型服务的问题。

 - 遇到依赖包版本不兼容问题比较烦,但是它还是能解决的。

 - 可能遇到反复犯一个错误的情况。

 - 写前端页面最好提示要美化一下,否则就太简陋了。

 - 不会硬写,有些不常用的框架,会有报错,但是它修复不了,还是会一直修复。

 - python中有些不熟悉的库会出现导入错误这种比较低级的错误,并且它自己无法修复。

 - 擅长切换不同的库去解决问题,但是对每个库的掌握程度并不高,人看了会比较眼晕,因为人切库之前需要一定时间去熟悉用法。

 - 每次用相同的指令指挥,但是模型的行为却每次都不一样。

好的,分享先到这里,有什么问题可以给我留言反馈,后面可能会写下trae的体验,拜拜~

相关文章:

AI自动化编程初探

先说vscodeclinemodelscope方案,后面体验trae或者cursor再写写其它的。vscode和trae方案目前来说是免费的,cursor要用claud需要付费,而且不便宜,当然效果可能是最好的。 vscode方案,我的经验是最好在ubuntu上&#xff…...

《人月神话》:软件工程的成本寓言与生存法则

1975年,Fred Brooks在《人月神话》中写下那句振聋发聩的断言——“向进度落后的项目增加人力,只会让进度更加落后”——时,他或许未曾料到,这一观点会在半个世纪后的人工智能与云原生时代,依然如达摩克利斯之剑般悬在每…...

深入理解Java中的static关键字及其内存原理

static是Java中实现类级共享资源的核心修饰符,它突破了对象实例化的限制,使得变量和方法能够直接与类本身绑定。这种特性让static成为构建工具类、全局配置等场景的利器,但同时也带来独特的内存管理机制需要开发者关注。 static修饰成员变量…...

Nest.js全栈开发终极实践:TypeORM+微服务+Docker构建高可用企业级应用

文章目录 **第一部分:认识Nest.js与基础环境搭建****1.1 什么是Nest.js?****1.2 环境准备****1.3 创建第一个项目****1.4 启动开发服务器****1.5 核心文件解读** **第二部分:基础控制器与路由****2.1 控制器的作用****2.2 创建自定义控制器**…...

20250310-组件基础2

通过插槽来分配内容 一些情况下我们会希望能和 HTML 元素一样向组件中传递内容&#xff1a; <AlertBox>传入的内容 </AlertBox> 我们期望能渲染成这样&#xff1a; 这可以通过 Vue 的自定义 <slot> 元素来实现&#xff1a; <template><div clas…...

Fedora41安装MySQL8.4.4

Fedora41安装MySQL8.4.4 Fedora41用yum仓库安装MySQL8.4.4 笔记250310下载安装启动mysqld服务查看生成的初始密码 , 用初始密码登录登录后,必须修改初始密码才能执行其它操作可选设置降低密码强度要求, 使用简单密码降低 validate_password 组件对密码强度的要求 用SET GLOBAL命…...

基于YOLO11深度学习的运动品牌LOGO检测与识别系统【python源码+Pyqt5界面+数据集+训练代码】

《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…...

NLP常见任务专题介绍(2)-多项选择任务(MultipleChoice)训练与推理模板

一、 使用 BigBird 进行多项选择任务训练与推理 本示例展示如何使用 BigBirdForMultipleChoice 训练一个多项选择模型,适用于考试答题、阅读理解、常识推理等任务。 1️⃣ 任务描述 目标:给定一个问题和多个选项,模型预测正确答案。 数据格式:输入包含 (问题, 选项1, 选项…...

java BCC异或校验例子

需求 对一个十六进制的字符串进行BCC校验 方法 private static String XORCheck(String rawMsg) {// 16进制字符串需要转成10进制数组进行校验&#xff0c;然后再返回16进制字符串用于与原来的字符匹配byte[] bytes HexDumpMsgFormat.hexStr2DesBytes(rawMsg);return BytesUt…...

Python第十六课:深度学习入门 | 神经网络解密

🎯 本节目标 理解生物神经元与人工神经网络的映射关系掌握激活函数与损失函数的核心作用使用Keras构建手写数字识别模型可视化神经网络的训练过程掌握防止过拟合的基础策略一、神经网络基础(大脑的数字化仿生) 1. 神经元对比 生物神经元人工神经元树突接收信号输入层接收特…...

若依-导出后端解析

针对若依框架微服务版本学习 若依导入导出功能的具体使用详见&#xff1a;后台手册 | RuoYi 1.导出逻辑&#xff1a; 导出文件的逻辑是先创建一个临时文件&#xff0c;等待前端请求下载结束后马上删除这个临时文件。但是有些下载插件&#xff0c;例如迅雷&#xff08;他们是二…...

华为OD机试九日集训第1期 - 按算法分类,由易到难,循序渐进,提升编程能力和解题技巧,从而提高机试通过率(Python/JS/C/C++)

目录 一、适合人群二、本期训练时间三、如何参加四、数据结构与算法大纲五、华为OD九日集训第1期第1天、逻辑分析第2天、数组第3天、双指针第4天、map与list第5天、队列第6天、栈第7天、滑动窗口第8天、二叉树第9天、矩阵 六、国内直接使用满血ChatGPT4o、o1、o3-mini-high、Cl…...

Python 机器学习小项目:手写数字识别(MNIST 数据集)

本项目将使用 scikit-learn 库&#xff0c;基于 支持向量机&#xff08;SVM&#xff09; 模型来构建一个手写数字识别系统。数据集选用 MNIST&#xff0c;其中包含 0-9 的手写数字图像&#xff0c;每张图片是 88 像素的灰度图。 项目步骤 安装必要的库加载数据集数据预处理划…...

STM32中输入/输出有无默认电平

结论&#xff1a; 输入从严格意义上来讲没有默认高低电平之说 推挽输出模式&#xff1a; 在推挽输出模式下&#xff0c;STM32的GPIO引脚可以输出高电平和低电平。如果没有通过软件明确设置引脚的电平状态&#xff0c;STM32的某些型号&#xff08;或特定情况下&#xff09;可能会…...

webshell一些上传心得

我们以upload-labs为基础 一、前端拦截&#xff1a; 如第一关 工作方式&#xff1a; 直接在前端拦截 绕过方式&#xff1a; 因为没有限制后端&#xff0c;所有可以用bs 绕过前端修改格式即可 将需要上传的php文件改成jpg格式 使用burp suite 拦截上传后&#xff0c;使用re…...

ROS实践(二)构建Gazebo机器人模型文件urdf

目录 一、基础语法 1. urdf文件组成 2. robot根标签 3. link 和 joint标签 4. sensor标签 二、 实验&#xff1a;使用launch文件启动rviz查看机器人模型 1. 编写机器人模型的urdf文件。 2. 编写launch文件。 3. 运行launch&#xff0c;查看效果。 URDF&#xff08;Unifi…...

Linux 入门:常用命令速查手册

目录 一.指令 1.pwd&#xff08;显示所在路径&#xff09; 2.ls&#xff08;列出所有子目录与文件&#xff09; 3.touch&#xff08;创建文件&#xff09; 4.mkdir&#xff08;创建目录&#xff09; 5.cd&#xff08;改变所处位置&#xff09; 6.rm&#xff08;删除&…...

kali linux web扫描工具

Kali Linux是一款专为网络安全领域而打造的操作系统&#xff0c;提供了众多优秀的安全工具&#xff0c;其中就包括了强大的web扫描工具。Web扫描是网络安全检测的一个重要环节&#xff0c;它可以帮助安全专家检测网站的漏洞&#xff0c;提升网站的安全性。 Kali Linux中集成了…...

2路模拟量同步输出卡、任意波形发生器卡—PCIe9100数据采集卡

品牌&#xff1a;阿尔泰科技 型号&#xff1a; PCIe9100、PCIe9101、PXIe9100、PXIe9101 产品系列&#xff1a;任意波形发生器 支持操作系统&#xff1a;XP、Win7、Win8、Win10 简要介绍&#xff1a; 910X 系列是阿尔泰科技公司推出的 PCIe、PXIe 总线的任意波形发生器&…...

Facebook 隐私保护技术的发展与未来趋势

Facebook 隐私保护技术的发展与未来趋势 在这个数字化时代&#xff0c;个人隐私保护已成为全球关注的焦点。Facebook&#xff0c;作为全球最大的社交网络平台之一&#xff0c;其在隐私保护技术的发展上扮演着重要角色。本文将探讨 Facebook 在隐私保护技术方面的进展&#xff…...

Android TCP封装工具类

TCP通信的封装&#xff0c;我们可以从以下几个方面进行改进&#xff1a; 线程池优化&#xff1a;使用更高效的线程池配置&#xff0c;避免频繁创建和销毁线程。 连接重试机制&#xff1a;在网络不稳定时&#xff0c;自动重试连接。 心跳机制&#xff1a;保持长连接&#xff…...

Python基于Django的医用耗材网上申领系统【附源码、文档说明】

博主介绍&#xff1a;✌Java老徐、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;&…...

Java虚拟机之垃圾收集(一)

目录 一、如何判定对象“生死”&#xff1f; 1. 引用计数算法&#xff08;理论参考&#xff09; 2. 可达性分析算法&#xff08;JVM 实际使用&#xff09; 3. 对象的“缓刑”机制 二、引用类型与回收策略 三、何时触发垃圾回收&#xff1f; 1. 分代回收策略 2. 手动触发…...

【mysql】mysql数据库,权限授予,账号设置

创建一个可用的数据库&#xff0c;名字为gitea&#xff0c;支持中文utf8mb4 CREATE DATABASE gitea CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; # 设置东八区时区 SET GLOBAL time_zone 08:00; FLUSH PRIVILEGES; # 查询当前时间 SELECT NOW();给【普通用户】授予查…...

Html5学习教程,从入门到精通, HTML5超链接应用的详细语法知识点和案例代码(18)

HTML5超链接应用的详细语法知识点和案例代码 超链接&#xff08;Hyperlink&#xff09;&#xff0c;也称为跃点链接&#xff0c;是互联网和文档编辑中的一种重要概念。 超链接的定义 超链接是指从一个网页指向一个目标的连接关系&#xff0c;这个目标可以是另一个网页&#…...

⭐LeetCode(数学分类) 48. 旋转图像——优美的数学法转圈(原地修改)⭐

⭐LeetCode(数学分类) 48. 旋转图像——优美的数学法转圈(原地修改)⭐ 示例 1&#xff1a; 输入&#xff1a;root [5,3,6,2,4,null,8,1,null,null,null,7,9] 输出&#xff1a;[1,null,2,null,3,null,4,null,5,null,6,null,7,null,8,null,9] 示例 2&#xff1a; 输入&#xff1…...

深度学习PyTorch之13种模型精度评估公式及调用方法

深度学习pytorch之22种损失函数数学公式和代码定义 深度学习pytorch之19种优化算法&#xff08;optimizer&#xff09;解析 深度学习pytorch之4种归一化方法&#xff08;Normalization&#xff09;原理公式解析和参数使用 深度学习pytorch之简单方法自定义9类卷积即插即用 实时…...

tomcat单机多实例部署

一、部署方法 多实例可以运行多个不同的应用&#xff0c;也可以运行相同的应用&#xff0c;类似于虚拟主机&#xff0c;但是他可以做负载均衡。 方式一&#xff1a; 把tomcat的主目录挨个复制&#xff0c;然后把每台主机的端口给改掉就行了。 优点是最简单最直接&#xff0c;…...

Java开发者如何接入并使用DeepSeek

目录 一、准备工作 二、添加DeepSeek SDK依赖 三、初始化DeepSeek客户端 四、数据上传与查询 五、数据处理与分析 六、实际应用案例 七、总结 【博主推荐】&#xff1a;最近发现了一个超棒的人工智能学习网站&#xff0c;内容通俗易懂&#xff0c;风格风趣幽默&#xff…...

win10电脑鼠标速度突然变的很慢?

电脑鼠标突然变很慢&#xff0c;杀毒检测后没问题&#xff0c;鼠标设置也没变&#xff0c;最后发现可能是误触鼠标的“DPI”调节键。 DPI调节键在鼠标滚轮下方&#xff0c;再次点击即可恢复正常鼠标速度。 如果有和-的按键&#xff0c;速度变快&#xff0c;-速度变慢。 图源&…...