第四期 AI 编程

news/2024/11/16 2:37:29/文章来源:https://www.cnblogs.com/ssyfj/p/18306363

目标

  1. 如何用 AI 辅助编程,提升工作效率
  2. 如何用 AI 快速应用和学习新技术,扩展职业边界
  3. 通过 AI 编程,洞察 AI 对各个行业的影响

趋势

产品与技术的联通+业务视角 =AI 全栈工程师

AI 编程

使用 AI 编程(编程目前是大模型能力最强的垂直领域),除了解决编程问题以外,更重要是建立 AI 意识,形成对 AI 的正确认知 。通过 AI 编程,了解它的能力边界,使用场景,类比出其他领域怎么用好 AI,找到能力边界
示例流程
向 ChatGPT 提需求、ChatGPT 整理需求内容、生成项目代码框架、挨个生成具体需求的代码

适用条件

  1. 技术我懂,不想自己写
    1. 快速完成重复性工作
    2. 知道是怎么回事,但需要费费脑子写出来
  2. 技术不大懂,让 AI 先搞,自己边用边学
    1. 当心 AI 犯错
    2. 当心给的不是最佳方案(可以试试提要求,就要最好的)
本质:提示工程
  1. 想让 AI 做什么,就先给它定义一个最擅长做此事的角色
  2. 用好思维链,结果更准确(大任务非常容易超过 token 数量限制;过程正确有助于结果正确)
  3. 如果可能,用英文撰写核心 prompt。会比中文成功概率更大
  4. 一切技巧,都是为了让 prompt 里的信息更丰富、具体、准确

经验总结

  1. GPT-4 是目前最强的编程大模型,没有之一。第二强是 GPT-3.5,剩下的非不得已不要用
  2. 对话界面
    1. 首选购买 ChatGPT Plus,使用 GPT-4o/GPT-4
    2. 次选 ChatGPT 3.5 + 三个风格的 Bing Chat
    3. 再次选,Copilot Chat。简单任务可优先交给它,体验更好
    4. 别太依赖上下文,尽量在最近 5 轮对话内覆盖所有信息,时不时重新开始对话
    5. 新技术的使用,老实看文档更好
  3. IDE 中首推 GitHub Copilot
    1. 主要用来快速补全代码、注释
    2. 别用写注释出代码的能力,不如把注释当指令丢给 ChatGPT
    3. Copliot 生成测试用例很好用
  4. 国内平替 Copilot, CodeGeeX
 
其它工具
  1. bito,基于 GPT-3.5 的代码补全,免费。CLI 工具挺好
  1. Amazon CodeWhisperer, 代码补全,免费
  2. Cursor,AI- first 的 IDE
  3. Tabnine,代码补全,个人基础版免费

典型使用场景

  1. 给出需求,获得技术选型建议
  2. 完成全局框架搭建,比如:工程框架,类的框架(不建议框架和功能一起完成,容易超过 GPT 处理能力)
  3. 完成局部小型任务。比如:一个函数,正则表达式,全套 try-catch,对某 API 的调用等
  4. 对已有代码改写,比如:加功能、注释、测试用例,让代码更易读、易维护、更安全
  5. 根据错误信息改 bug
  6. 解释代码,辅助阅读代码
  7. 开发工具使用,比如:VSCode 配置,各种命令行参数
  8. 询问技术问题
 
Code Interpreter(内置 Python 虚拟机) 是目前制高点
  1. 它能自我修正代码
  2. Python 项目可以狠狠依赖它
  3. 其它项目可以先让它用 Python 写,然后翻译成别的语言
 

看未来

  1. GPT Engineer
给出想让 GPT 构建的内容,AI 会反问以澄清、得到具体的内容,最后进行构建
安装与使用方式:
pip install gpt-engineer
vim prompt
gpt-engineer .
核心 prompts:https://github.com/gpt-engineer-org/gpt-engineer/tree/main/gpt_engineer/preprompts
评价:啥都能干,就是不精
  1. GPT Web App Generator
源代码: https://github.com/wasp-lang/wasp/tree/wasp-ai
用 Wasp, React, Node.js 和 Prisma 生成全栈 Web 应用程序。
纯在线操作,跟着提示下载到本地执行。
核心 prompts:https://github.com/wasp-lang/wasp/blob/wasp-ai/waspc/src/Wasp/AI/GenerateNewProject/Operation.hs
评价:限定了框架,用参数做配置,提供框架代码,成品率高
  1. MetaGPT: 多智能体元编程框架
使用 GPTs 组成软件公司,协作处理更复杂的任务
官方说明:
  • MetaGPT 输入一句话的老板需求,输出用户故事、竞品分析、需求、数据结构、APIs、文件等
  • MetaGPT 内部包括产品经理、架构师、项目经理、工程师,它提供了一个软件公司的全过程与精心调配的 SOP
会写代码、文档、画图等
核心 prompts:https://github.com/geekan/MetaGPT/tree/main/metagpt/prompts
评价:agent 模拟岗位的思路挺好玩

从 AI 编程看 AI 当前上限

  1. 能解决很多问题,但也会有误导
  2. 不稳定持续存在
  3. 人工确认必不可少
所以:
  1. 客观看待 AI,别神化
  2. 合格的确认官很重要

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

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

相关文章

Linux调度器:进程优先级

一、前言 本文主要描述的是进程优先级这个概念。从用户空间来看,进程优先级就是nice value和scheduling priority,对应到内核,有静态优先级、realtime优先级、归一化优先级和动态优先级等概念,我们希望能在第二章将这些相关的概念描述清楚。为了加深理解,在第三章我们给出…

中山大学人工智能夏令营实践课

Day 0 配置wsl的 vscode环境 (速通速通!) Day 1 上午讲了中山大学的校史以及鸿蒙系统的大体介绍 感慨: 作为互联网原生的一代,是最具创造性的一代,通过我们的夏令营不仅可以锻练我们的技术能力,开发能力,沟通能力,从而让自己链接的能力超出自已的物理空间。还可以提升…

微调(Fine-Tuning)和检索增强生成(RAG)

微调(Fine-Tuning)和检索增强生成(RAG) https://www.toutiao.com/article/7386094597421810186/?log_from=21b91ee0752_17211185181952024-06-30 09:05架构笔记 微调(Fine-Tuning)过程的核心,是在新的任务和数据集上对预训练模型的参数进行微小的调整,使其能精准契合…

为视觉语言多模态模型进行偏好优化

为视觉语言多模态模型进行偏好优化 训练模型使得它能够理解并预测人类偏好是一项比较复杂的任务。诸如 SFT (Supervised finetuning) 的传统的方法一般都需要耗费较大成本,因为这些算法需要对数据打上特定的标签。而偏好优化 (Preference Optimization) 作为一种替代选项,通常…

别小瞧它,提高效率可了解可拖拽的工作流引擎

提升效率,可以随时来了解低代码技术平台、可拖拽的工作流引擎更多特点。当前,社会发展程度越来越高,很多企业都希望寻求更优的平台产品实现提质增效的目的。低代码技术平台、可拖拽的工作流引擎具有可视化操作界面、更灵活、好操作等多个优势特点,在提升办公效率方面具有事…

fastqc和Trimmomatic的使用

1.FastQC分析检测报告 在先前的记录中,我们已经得到了我们的QC报告,现在要针对我们的报告对原始数据进行过滤 其中 和 都表明该数据需要去接头,并对序列进行处理 2.Trimmomatic的下载 首先,使用conda安装Trimmomatic conda install Trimmomatic 就可以安装完毕了,安装完使…

数据仓库建模工具之一——Hive学习第二天

Hive的概述 1、Hive基本概念 1.1 Hive简介Hive本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据存储,说白了hive可以理解为一个将SQL转换为MapReduce的任务的工具,甚至更近一步说hive就是一个MapReduce客户端。 为什么使用Hive?使用hadoop,成本太高,项目要…

三分钟了解自定义表单自定义工作流的多个优势

如果想了解自定义表单自定义工作流的优势特点,可以通过本文获取更多详情信息。降本、提高效率、解决信息孤岛是很多企业亟需要解决的问题。什么样的软件平台可以实现这一目标?可以随时来了解低代码技术平台。它当中的自定义表单自定义工作流拥有多个优势特点,可以为企业降低…

jenkins+allure常见问题汇总

1.生成allure报告时,报Can not find any allure commandline installation. 原因:jenkins下载安装allure插件后,没有配置allure路径 解决办法:Manage Jenkins>Tools>Allure Commandine安装2.执行pytest --alluredir=./allure-result --clean-alluredir时,报error: u…

SSM学习路线

Maven Spring Mybatis SpringMVC SSM整合 Spring Boot Mybatis Plus 项目学习

高通Perflock

高通的Perflock是Qualcomm公司开发的一项技术,用于优化设备性能和功耗管理。Perflock是一种锁定机制,允许操作系统或应用程序在需要时对处理器的性能状态进行控制,从而确保在关键任务或高性能需求的情况下,处理器能够维持在高性能状态。 主要功能和特点性能锁定:Perflock允…