AutoDevOps-oups 大模型开发之自动代码生成器

2024-08-26 02:12

本文主要是介绍AutoDevOps-oups 大模型开发之自动代码生成器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • AutoDevOps-oups: AI-Driven Software Development Automation Solution & AI Tools for Software Building
    • 介绍1️⃣
    • Features and Benefits2️⃣
    • 快速开始3️⃣
      • 📦 本地部署
      • 🚀 Docker 快速部署
    • 基本使用4️⃣
      • 项目助手 😶
      • 项目系统生成🏎
    • 后续迭代方向💫

前言

好久没有出来划水了,是的我又回来了,没有办法最近的事情实在是太多了,以至于我没有时间去分析最新的动态和技术,But today the king is comeming back。 接下来的时间里,我将恢复到以前的状态,持续保持技术更新与迭代。那么今天带来的是,最近这段时间编写的代码生成器。接下来的系列博文当中,我们将讲解基本的大模型开发教程,同时如何一步步实现下面的这个项目。当然现在整个项目已经开源,并且已经开源了好几周的,但是请原谅,实在是抽不开身,唉,上班了,很多事情由不得我。在这里奉劝各位一句,饼子终究是饼子,只要不是合同上写的,都不要信。本人就是一个例子,机会再多也怕眼瞎。关于这部分的经历在后续我会给大家分享,望各位以我为警钟,各位在找工作的时候务必擦亮双眼!
好了废话不多说,我们开始!

项目地址Gitee:https://gitee.com/Huterox/auto-dev-ops-oups
项目地址GitHub:https://github.com/Huterox/auto-dev-ops-oups

AutoDevOps-oups: AI-Driven Software Development Automation Solution & AI Tools for Software Building

💡 Get Help - Q&A

介绍1️⃣

AutoDevOps-oups 是一个基于AI的软件开发自动化解决方案,它利用AI技术来辅助软件开发过程,交互组件基于Streamlit开发完成。旨在快速完成逻辑功能开发,完成验证版本开发。
当前版本完全开源,并处于功能验证阶段,我们欢迎广大开发者参与其中,共同完善这个项目。✔ 同时为了便于学习Agent开发,当前项目存在较多轮子组件,便于理解其底层实现思想。

Features and Benefits2️⃣

  • 编码问答助手,支持读取本地项目,读取项目目录结构,分析代码依赖,协助用户阅读项目源码🍳
  • SQL助手,当前并未对驱动进行抽象封装,暂时只支持MySQL数据库。输入设置数据库连接,即可使用SQL助手,协助分析数据库设计,查询语句编写🐟
  • 项目需求助手,Agent将扮演项目经理,协助整理相关项目需求,同时内置Whisper可提取音频文件,后续集成替换为FunASR。
  • 工作流实现&项目代码生成,在当前项目,我们实现了一个简易的非可视化工作流(旨在学习工作流底层实现原理),并基于该工作流实现了一个系统代码生成流程。
    • 对话式分析项目需求
    • 根据需求设计数据库
    • 根据数据库设计,生成创建执行代码
    • 后端指定技术栈为Python Fast API 前端指定技术栈为Vue3 生成基础系统代码(CURD)
    • 基于基础代码与用户确定需求生成需求业务代码
    • 对话式修改当前系统代码
    • ❌ 暂不支持 😣
      • 全自动化流水生成代码,在操作过程当中,我们要求由用户自己切换工作流状态(交互式点击下一步)因为我们无法直接确定当前工作流输出结果是否为用户所需。
        后续版本,我们将实现 monitor manger 去自动检测整个workflow的执行结果,以及并行节点组件。
      • 考虑到当前模型的性能差异,我们取消了直接将代码生成至基础工程当中,而是采用markdown说明的形式,将系统代码进行输出。这个过程类似于我们提供积木组件,需要用户按照参考说明进行组装。而不是由我们自动组装,但这一功能并不是不能实现

快速开始3️⃣

注意在开始之前,请准备好你的OpenAI key,这非常重要,在项目根目录创建文件:
api.toml
内容如下:
(注意:请将sk-替换为你的key,同时可以使用相关中转站服务来请求使用OpenAI)

OpenAI中转站🌎

[DEFAULT]
default_key = "sk-"
default_base = "https://api"
default_model = "gpt-4o"
default_temperature = 0.5[WHISPER]
openai_whisper_api = false
faster_whisper_model_default = "tiny"
faster_whisper_model_local = true
faster_whisper_model_local_path = "F:/new/model/tiny"
gpu = false
vad = false
lang = "自动识别"[MORE]
min_vad = 500
beam_size = 5
whisper_prompt = "Please break sentences correctly and retain punctuation."
temperature = 0.5
crf = 23
quality = "medium"
ffmpeg = "libx264"
log = "error"

📦 本地部署

如果你想要本地源码,部署请按照如下操作进行:

  • Python 3.10+ 作者开发环境为3.10版本,因此推荐在本地部署时使用>=3.10版本

  • pip install -r requirements.txt
    
  • 执行指令:

    streamlit run /app/main.py --server.port=8080
    

🚀 Docker 快速部署

同时,我们依然提供了dockerFile,方便用户快速部署。

  • 执行指令:

    docker build -t AutoDevOps-oups:latest .
    
    docker run -p 8080:8081 AutoDevOps-oups:latest
    

    容器内部服务默认暴露8080~

如果一切顺利,访问浏览器服务器端口,即可进入到软件首页。
软件首页如下图所示:
在这里插入图片描述

基本使用4️⃣

这里我们将主要快速介绍当前软件的基本使用。

项目助手 😶

在此之前请确保你已经申请并具备了OpenAI key,并在首页的设置项目当中进行了设置填写。
在这里插入图片描述

当你对项目功能存在相关疑问时,你可以询问项目助手。

项目系统生成🏎

其余功能,在对应页面由详细的操作提示,只需要按照相关提示即可进行操作,但是对应系统生成来说,依然存在较多的细节需要注意。

  1. 流程选定,虽然当前系统只有一个流程,但是在后期将对此模块进行优化,增加新的流程。因此在使用系统生成之前,需要先进入下面的页面选定流程
    同时,在选定页面,也将展示流程的执行示意图。
    在这里插入图片描述

  2. 系统生成对话,在选定之后(当前只有一个,因此为默认勾选,但不设定,因此需要进入选定页面,设定)
    之后进入操作页面如下:
    在这里插入图片描述

    在这里有如下几点需要注意:

    1. 在右侧边栏,可以查看当前流程的执行示意图。
    2. 重点注意右侧边的Variable按钮,该按钮可以查看当前流程执行的结果,当切换流程执行为下一步时,该值将覆盖切换,因此请即使查看结果,也请及时保存。
    3. Describe与Variable实际上是一组CheckButton,当你选择Variable后,后续都会默认执行Variable,也就是,每次自动打开查看结果。如果需要取消请点击Describe。
      此设计主要为防呆设计。

后续迭代方向💫

  • 增加更多的流程,以满足更多的需求。
  • 抽离streamlit实现功能,切换前端技术栈,主要出于以下考量
    • 性能考量与项目后续工程化处理
    • 集成可视化流程,后端流程引擎可能考虑基于当前流程实现,或基于LangChainFlow进行二次开发
  • 系统生成发展方向确定
    • 以母港的形式生成系统 1️⃣
    • 以组件的形式集成系统 2️⃣

这篇关于AutoDevOps-oups 大模型开发之自动代码生成器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1107251

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}