【AI导师】利用Coding Agent完成AIGC编程

利用Coding Agent完成AIGC编程

  • 一、前言
  • 二、Coding Agent
  • 三、1024code
  • 四、AI导师
    • README
      • 项目初版功能定义
      • 代码结构设计方案
      • 函数方法设计方案
      • 迭代记录

一、前言

  AI产品的发展确实在过去两年年中取得了显著进展,尤其是在编程领域。一开始,ChatGPT和类似的语言模型主要用于自然语言处理和生成对话。在这个背景下,一些国内的开发者和企业开始将这些技术应用于编程领域,形成了一些Coding Agent类型的AI产品。
  这些产品的初衷是为程序员提供更便捷的编程辅助工具,帮助他们解决问题、生成代码,提高开发效率。在初始阶段,主要侧重于对话式的交互,帮助用户更轻松地与计算机交流,并获取所需的编程信息。
  然而,随着时间的推移,这些AI产品逐渐不能更全面地满足程序员的需求。这些AI产品大多都只能在命令行环境下使用,只能以问答式的方式去输出解决方式,往往结果不符合编程环境实际的操作。 究其原因是其无法获取程序的运行环境信息、报错信息。同时AI的回复往往侧重建议和一些框架。
  但市面上还是有一些产品嵌入到编程环境中,比如InsCode AI

示例:利用inscode做一个简单的备忘录
在这里插入图片描述
但所生成的内容却只是简单并且不能交互的框架。其与IDE不是深度融合的,与单纯的对话式问答AI并未有突出特点。

  既然痛点出现,必有需要供应,市面上有没有什么平台是深度嵌入编程环境的呢?答案是1024code。

二、Coding Agent

  在介绍1024code协同编程工具之前,先谈谈Coding Agent(智能编程体):与IDE(集成开发环境)深度结合、并能与环境(虚拟或者物理环境)进行交互、限定于编程领域的智能系统。
在这里插入图片描述

Coding Agent四大核心功能详细描述
从零开始构建项目 (MVP生成)1.用户友好的交互界面:提供直观、简便的用户界面,输入项目目标信息。
2.智能建议:根据用户输入提供建议和最佳实践。
3.自动化代码生成:生成基础代码框架,加速项目启动。
辅助与自动Debug1.即时错误检测:实时监测编码过程,识别潜在错误,提供即时反馈。
2.自动定位问题:迅速定位代码问题,并生成详细错误报告。
3.智能建议修复:提供修复建议,甚至自动应用修复。
优化现有项目1.代码性能分析:分析性能瓶颈,提供优化建议,改进算法等。
2.安全漏洞检测:扫描代码,识别安全漏洞,并提供修复建议。
3.用户体验建议:提供用户体验建议,改善界面设计和交互。
迭代现有项目1.智能变更管理:支持有序变更管理,包括版本控制、代码合并等。
2.复杂功能集成:处理复杂功能集成,包括第三方库、API调用等。
3.数据迁移与兼容性:协助处理数据库迁移、数据兼容性等。

三、1024code

  1024Code 是一个免费的、协作式的、基于浏览器的 IDE 环境,支持 10 多种编程语言,支持 Spring 、Vue 、React 等框架,还支持很多图形库,并集成了 AI 编程助手、编程社区。拥有无需安装环境,任何设备开箱即用的特性
在这里插入图片描述
在这里插入图片描述
主要功能

功能描述
在线多人协作类似腾讯文档等在线协作文档的协作功能体验,支持多人同时加入一个代码空间实时协作编程。
在线分享分享代码空间链接,打开可查看项目文件并运行的“副本”代码空间。
AI编程助手使用在线协同IDE和AI编程助手互动,快速解答疑问、完成重复性质的编码工作。
Git版本管理使用Git Commit,管理代码版本。
数据库免费的云端数据库,是代码空间的最佳搭档。

IDE界面及功能

区域描述
文件窗口支持多层级的文件夹,支持上传/拖拽上传本地文件。
编辑器窗口支持代码高亮、补全。在协作模式下,支持以不同颜色光标体现不同用户的代码操作。
Console窗口显示应用启动及运行过程中的日志。
Shell窗口以runner权限控制容器,在协作模式下,用户间共享同一session。
运行按钮支持点击运行按钮编译及运行程序,编译/运行命令支持手动配置,启动及运行过程中的日志将在console中显示。
浏览器输出窗口支持HTTP服务的浏览(监听8080端口),检测到用户对网址的访问后立即启动应用服务,无访问情况下持续3分14秒后关闭。
图形输出窗口选择C++、Python、Java模版的GUI版本创建代码空间,使用相关图形库编写和运行图形程序。

四、AI导师

视频:AI导师,做甲方的乐趣

  项目建立的一开始,AI导师会根据MVP原则生成解决方案,以下是一个示例:

README

项目初版功能定义

依据MVP(最小可行性产品)的思想和的原则,在第一个版本中我们将会选择以下核心模块进行优先开发:

  • 创建HTML结构:创建一个包含任务列表、输入框和添加任务按钮的
    本HTML结构,为添加、显示任务提供基础界面。
  • 添加任务:实现一个JavaScript函数,允许用户通过输入框和按钮添加新任务,并在任务列表中显示。
  • 存储任务:使用浏览器的本地存储功能(如localStorage),实现任务的持久化存储,以便用户在关闭浏览器后再次打开时仍能看到之前的任务。

代码结构设计方案

主入口文件:

  • index.html
    需要编写的其他源码文件:
  • styles.css
  • script.js

  • 函数方法设计方案

  • index.html
  • 核心结构:
  • <header>: 包含标题和可能的应用介绍。
  • <main>: 主体部分,包含任务列表和添加任务的表单。
  • <footer>: 可能包含版权和其他信息。
    styles.css
  • 核心样式:
  • .task-list: 任务列表样式,用于美化任务显示。
  • .task-item: 单个任务的样式,用于美化任务项。
  • .add-task-form: 添加任务表单样式,用于布局输入框和按钮。
    script.js
  • 核心常量和变量:
  • localStorageKey: 用于localStorage中的键名,保持数据的一致性。
  • 核心函数:
  • addTask(): 用于添加新任务到任务列表和本地存储。
  • loadTasks(): 从本地存储加载任务到任务列表。
  • initializeApp(): 应用初始化函数,页面加载完成后调用。

  AI导师完成对应框架代码的编写后,可向其提出迭代方向或者功能,AI导师将生成第一次迭代方案,下面是一个例子:

迭代记录

第1次迭代
新增功能概述:
实现在添加任务时能够设置截止日期,并在任务列表中标注任务的紧急状态。
核心子功能详述:

  1. 扩展添加任务表单
    在“add-task-form”中添加一个日期输入字段,允许用户选择或输入任务的截止日期。该输入框应明确标识为“截止日期”,并默认显示当前日期,用户可以选择当前或未来的日期。
  2. 修改任务数据结构
    任务对象应扩展以包含截止日期属性。在“addTask”函数中,收集截止日期输入并存储为任务对象的一部分。确保“saveTask”函数将包含截止日期的任务对象保存到本地存储。
  3. 展示任务截止日期状态
    在任务列表中,每个任务旁展示其截止日期。通过“createTaskElement”函数实现,如果任务即将到期(比如,剩余时间少于48小时),则高亮显示;若已过期,则以不同颜色标注。

  1. 扩展添加任务表单模块:
  • 函数名: addDeadlineField
    目的: 在添加任务的表单中添加一个日期输入字段,用于用户设置任务的截止日期。
  1. 修改任务数据结构模块:
  • 函数名: updateTaskObject
    目的: 扩展任务对象的结构,使其包含截止日期属性。
  1. 保存任务模块:
  • 修改函数: saveTask
    目的: 更新该函数以确保能够处理和保存包含截止日期的任务对象到本地存储。
  1. 展示任务截止日期状态模块:
  • 函数名: displayDeadlineStatus
    目的: 在任务列表中展示每个任务的截止日期,并根据截止日期的紧迫性高亮显示或标注任务。
  1. 任务元素创建模块:
  • 修改函数: createTaskElement
    目的: 更新该函数以在创建任务元素时包含截止日期的展示逻辑,并根据任务是否即将到期或已过期来调整显示样式。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/585922.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

模板 BIEE(二):Web日志从分析出发,在web页查看取数的sql方法

1 说明 1.1 环境 BIEE: Oracle Business Intelligence Enterprise Edition(Oracle商业智能企业版) 版本: OBIEE 12c Server 版本: 基于Oracle Analytics Server 6.4.0 版本 模板: 制造→生产成本→按前 10 个 GL 帐户列出的生产成本 1.2 背景 由《模板 BIEE (一):…

被罚11万元!跳槽员工忘关屏幕共享,向Nvidia展示窃取源码,遭前东家当场抓获

你有过在公司会议的屏幕共享中&#xff0c;因不慎曝光了一些隐私而深感尴尬的经历吗&#xff1f; 如果有的话&#xff0c;那你或许能想象到英伟达员工 Mohammad Moniruzzaman 被抓包时的感受——只不过&#xff0c;他的后果要严重得多。 据外媒 SiliconValley 报道&#xff0…

56.网游逆向分析与插件开发-游戏增加自动化助手接口-通过UI分析自动药水设定功能

内容来源于&#xff1a;易道云信息技术研究院VIP课 上一节内容&#xff1a;自动药水设定功能的逆向分析-CSDN博客 这次是假设没有之前的思路积累的话&#xff0c;怎样去找按钮事件。 通过ui当做切入点去做&#xff0c;就是一个窗口它显示不显示&#xff0c;游戏怎样控制这个…

传统项目基于tomcat cookie单体会话升级分布式会话解决方案

传统捞项目基于servlet容器 cookie单体会话改造分布式会话方案 ##引入redis,spring-session依赖 <!--redis依赖 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId>&…

ZigBee协议栈 -- Zstack协议栈(Zstack2.5.1a)

文章目录 Zstack 协议栈介绍ZStack 的安装ZStack 的结构系统初始化启动操作系统 设备的选择定位编译选项ZStack 中的寻址ZStack 中的路由OSAL 调度管理ZStack 中的串口通信设置配置信道配置 PANID 和要加入的网络最大有效载荷大小非易失性存储器 Zstack 协议栈介绍 CC2530 芯片…

设计模式(4)--对象行为(8)--状态

1. 意图 允许一个对象在其内部状态改变时改变它的行为。 2. 三种角色 上下文环境(Context)、抽象状态(State)、具体状态(Concrete State) 3. 优点 3.1 将与特定状态相关的行为局部化&#xff0c;并且将不同状态的行为分割开来。 3.2 使得状态转换显式化。 3.3 State对象可被共…

香橙派 ubuntu实现打通内网,外网双网络,有线和无线双网卡

当香橙派 ubuntu 连了有线&#xff0c;和无线时&#xff0c;默认请求外网时&#xff0c;只走一个网卡&#xff0c;如走了内网网卡&#xff0c;就只能访问内访问&#xff0c;访问不了外网&#xff1b;走了外网网卡就只能访问外网&#xff0c;访问不了内网&#xff1b; 实现双网…

大数据Doris(四十四):查询物化视图和自动匹配

文章目录 查询物化视图和自动匹配 一、​​​​​​​查询物化视图

炫酷按钮制作(HTML+CSS+Javascript)

实现效果&#xff1a; 当鼠标点击按钮时&#xff1a; 实现代码&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style>div{margin-top: 20px;margin-left: 20px;}.button{border: soli…

9. 进程

9. 进程 1. 进程与程序1.1 main() 函数由谁调用1.2 程序如何结束1.2.1 注册进程终止处理函数 atexit() 1.3 何为进程1.4 进程号 2. 进程的环境变量2.1 应用程序中获取环境变量2.1.1 获取指定环境变量 2.2 添加/删除/修改环境变量2.2.1 putenv()2.2.2 setenv()2.2.3 命令行式添加…

IC入门必备!数字IC中后端设计实现全流程解析(1.3万字长文)

吾爱IC社区自2018年2月份开始在公众号上开始分享数字IC后端设计实现相关基础理论和实战项目经验&#xff0c;累计输出文字超1000万字。全部是小编一个个字敲出来的&#xff0c;绝对没有复制粘贴的情况&#xff0c;此处小编自己得给自己鼓鼓掌鼓励下自己。人生不要给自己设限&am…

自激振荡电路笔记 电弧打火机

三极管相关 三极管的形象描述 二极管 简单求解&#xff08;理想&#xff09; 优先导通&#xff08;理想&#xff09; 恒压降 稳压管&#xff08;二极管plus&#xff09; 基础工作模块 理想稳压管的工作特性 晶体管之三极管(“两个二极管的组合” ) 电弧打火机电路 1.闭合开…

3D视觉-结构光测量-多线结构光测量

工作原理 多线结构光测量在测量方式上类似上述线结构光测量&#xff0c;但是两者也有着一些明显的差别。这种形式的结构光测量&#xff0c;也常常被成为面结构光测量。首先激光器发出电光源通过通过光栅的调制产生多个切片光束&#xff0c;这些切片光束照射到待测物体表面后形成…

安全生产知识竞赛活动方案

为进一步普及安全生产法律法规知识&#xff0c;增强安全意识&#xff0c;提高安全技能&#xff0c;经研究&#xff0c;决定举办以“加强安全法治、保障安全生产”为主题的新修订《安全生产法》知识竞赛活动&#xff0c;现将有关事项通知如下&#xff1a; 一、活动时间&#xf…

大模型系列:OpenAI使用技巧_自定义文本向量化embeding

文章目录 0. Imports1. 输入2. 加载和处理输入数据3. 将数据分成训练和测试集4. 生成合成的负样本5. 计算嵌入和余弦相似度6. 绘制余弦相似度的分布图7. 使用提供的训练数据优化矩阵。8. 绘制训练期间找到的最佳矩阵的前后对比图&#xff0c;展示结果 本笔记本演示了一种将Open…

yolov8实战第四天——yolov8图像分类 ResNet50图像分类(保姆式教程)

yolov8实战第一天——yolov8部署并训练自己的数据集&#xff08;保姆式教程&#xff09;_yolov8训练自己的数据集-CSDN博客在前几天&#xff0c;我们使用yolov8进行了部署&#xff0c;并在目标检测方向上进行自己数据集的训练与测试&#xff0c;今天我们训练下yolov8的图像分类…

环形锻件全自动尺寸测量法兰三维检测自动化设备-CASAIM自动化蓝光检测系统

锻造是一种利用锻压机械对金属坯料施加压力&#xff0c;使其产生塑性变形以获得具有一定机械性能、一定形状和尺寸锻件的加工方法&#xff0c;锻压&#xff08;锻造与冲压&#xff09;的两大组成部分之一。 目前客户使用专用直径千分尺、塞规、塞尺等对锻件形状尺寸误差进行测…

数模学习day05-插值算法

插值算法有什么作用呢&#xff1f; 答&#xff1a;数模比赛中&#xff0c;常常需要根据已知的函数点进行数据、模型的处理和分析&#xff0c;而有时候现有的数据是极少的&#xff0c;不足以支撑分析的进行&#xff0c;这时就需要使用一些数学的方法&#xff0c;“模拟产生”一些…

SOLIDWORKS Flow Simulation热环境分析

关于室内通风的问题&#xff0c;其实室内通风方面的与我们之前聊到的数据中心通风散热问题相类似&#xff0c;只不过本次会引入一个新的模块——人体舒适度问题&#xff0c;在Flow Simulation中有一个HVAC模块就是专门用于研究人体舒适度的&#xff0c;它可以预测人们在热环境中…

力扣题目学习笔记(OC + Swift)206. 反转链表

206. 反转链表 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例 方法一、迭代 在遍历链表时&#xff0c;将当前节点的 next\textit{next}next 指针改为指向前一个节点。由于节点没有引用其前一个节点&#xff0c;因此必须事先存储其…