程序员指南|学会与大模型相处,提升个人开发效率

过去一年,通过各种平台我们可以轻而易举的接收到人们关于使用大模型遇到诸多问题的声音。然而,显而易见的是,大模型可以在许多方面提高我们的效率,尤其是在处理文档、测试用例和代码等繁琐事务方面。


大模型的优势和短板是什么?


首先,我们需要了解大模型的概念。由于训练数据和参数等多种原因,不同的模型有各自的优势。在一些微信机器人中,我们会使用文心一言来获取实时的信息内容,并结合国内外的开源和闭源模型(如ChatGPT等)进行不断优化。而在撰写英文文档和邮件等内容时,则会优先考虑国外的模型。
其次,我们要知道大模型不擅长什么。大模型擅长的是生成文本。究其本质它又是一个概率模型,所以它需要借助其他工具来完成自身不擅长的内容(比如数学计算)。因此,我们不应该期望大模型能够帮助我们完成一些数学计算,而是应该期望它能根据我们的上下文,生成数学计算的公式、代码等等。


提高个人效率的关键之一是学会与大模型进行有效的交流


大模型的交流方式主要通过Prompt进行,而构建一个Prompt是需要持续迭代的过程。在这个过程中,我们需要不断尝试,以找到最适合自己的模式。因此网上也先后出现了很多针对Prompt的教程,甚至因此衍生出了新的赚钱之道。常见的模式是:
1、确定角色和任务。比如明确扮演一个中级开发工程师以及需要完成哪些任务。
2、背景。提供一些必要的上下文,以便于有概率地、更好地匹配到答案。
3、列出你对其的一些具体要求,比如返回的格式和内容等。
4、最后的import将根据用户选择的是类还是方法来确定。

精炼上下文成本,活用各类工具


Prompt模板,绝对属于人们口中的“一看就会,一用就废”的存在,同一个需求可能真的会获得千人千面的答案。因此,很多人在使用AIGC工具时最大的问题是编写Prompt往往需要花费超过任务完成时间的时间。
也因此,从某种程度上来说,我们所需要的上下文并不一定要准确,但一定要精炼,以节省自己的时间。所以,从时间成本上来说,我们要考虑引入工具,或者构建适合自己的工具来完善这个过程。
对于开发人员来说,目前市面上流行的工具有:GitHubCopilot、ChatGPT等其他内容生成工具。诸如GitHubCopilot在生成效果上之所以好,是因为它会根据当前的代码文件、编辑历史,分析出一些相似的上下文,再交由大模型处理。整个过程是全自动的,所以它能大量节省时间。但是鉴于每月可能产生10到30美元的成本,需要认真探讨更合适的方案。
基于此,来自中国的飞算SoFlu软件机器人,推出专注Java生成AI函数的FuncGPT(慧函数)。通过自然语言描述Java函数需求,不需要繁复的上下文,输入需求、出参、入参,即可实时生成高质量、高可读性、拿来即用的Java函数代码。生成代码可直接复制到IDEA,或一键导入Java全自动开发工具函数库,满足程序员不同的使用场景。最重要的是它是免费的。


个人成长:增强人工智能不擅长的技能。
随着AIGC成本的进一步降低,可能会有一些部门因为生成式AI而被公司缩减规模。这并不是因为AIGC可以取代人类,而是因为人们预期可以提高20~30%的效率,并且在一些团队试验后也发现确实如此。
假设AIGC能够增加一个团队的效率20%,那么从管理层的角度来看,他们会考虑减少团队成员的20%。而更有趣的是,如果团队规模减少了20%,由于沟通成本的降低,效率提升会更为显著。因此,该团队的效能提升超过了20%。
就短期而言,那些掌握了AIGC能力的开发人员不会因此被淘汰。但从长远来看,开发行业的内卷现象将会加剧。十多年前,只需懂一些Java的人就可以了,但如今的标准则是既要精通Java设计模式,又要熟练掌握各种Java算法。因此,从个人职业发展的角度,我们需要适当地提升在人工智能领域不擅长的其他技能。
就能力而言,AI不擅长解决复杂上下文的问题,比如架构设计、软件建模等等。从另一个层面上,由于AI作为一个知识库,它能够帮助我们解决一些软件开发的基础问题(比如某语言的语法),会使得我们更易于上手新语言,从而进一步促使开发者变成多面手,成为多语言的开发者。
相对于提升这些能力而言,在短时间内,我们更应该加入发展大模型的大军。因为这是一个全新的领域,不需要传统人工智能算法的各种知识,只需要懂得如何将其应用在工程上。

关注公众号【飞算科技】,获取更多行业及产品信息。

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

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

相关文章

PostMan接口测试教程

1、下载和安装 Postman: 前往 Postman 官网 (https://www.postman.com),下载适用于你的操作系统的 Postman 客户端。 执行下载后的安装程序,并按照安装向导的指引完成安装过程。 2、创建一个新的集合: 打开 Postma…

引爆关注,聚焦上海新闻媒体邀请

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 上海拥有众多的新闻媒体机构,包括报纸、电视、广播和网络媒体等。这些媒体在报道国内外新闻、传播信息等方面发挥着重要作用。 其中,上海电视台是上海最大的电视…

邦永PM2项目管理系统 SQL注入漏洞复现

0x01 产品简介 邦永PM2项目管理系统科学地将项目管理思想和方法和谐、统一,使得长期以来困扰项目管理工作者的工期、进度、投资和成本情况无法整体动态管理的问题得到了全面而彻底的解决。 0x02 漏洞概述 邦永科技PM2项目管理平台Global_UserLogin.aspx接口处未对用…

解决ESP32内部RAM内存不足的问题

一,为什么需要外部RAM ESP32有520kB的内部RAM空间可以使用,这对于一般的情况是够用的,但是如果设备需要涉及音频或者显示图像等处理时,需要更大的内存空间来处理这些数据。ESP32支持扩展外部RAM,其实乐鑫已经在其ESP32…

接口自动化中cookies的处理技术

一,理论知识 为什么有cookie和session? 因为http协议是一种无状态的协议,即每次服务端接受到客户端的请求时都时一个全新的请求,服务器并不知道客户端的请求记录,session和cookie主要目的就是弥补http的无状态特性 …

G1垃圾收集器

G1收集器(-XX:UseG1GC) 前置文章:JVM垃圾收集器 G1 (Garbage-First)是一款面向服务器的垃圾收集器,主要针对配备多颗处理器及大容量内存的机器。以极高概率满足GC停顿时间要求的同时,还具备高吞吐量性能特征。 G1将Java堆划分为多个大小相等…

【LeetCode刷题】-- 29.两数相除

29.两数相除 思路: class Solution {public int divide(int dividend, int divisor) {//考察被除数为最小值的情况if(dividend Integer.MIN_VALUE){//被除数为最小值,除数是1,返回最小值if(divisor 1){return Integer.MIN_VALUE;}//除数是-…

口碑好的猫罐头有哪些?宠物店受欢迎的5款猫罐头推荐!

快到双十二啦!铲屎官们是时候给家里猫主子囤猫罐头了。许多铲屎官看大促的各种品牌宣传,看到眼花缭乱,不知道选哪些猫罐头好,胡乱选又怕踩坑。 口碑好的猫罐头有哪些?作为一个经营宠物店7年的老板,活动期间…

二分查找——经典题目合集

文章目录 🦜69. x 的平方根🌼题目🌻算法原理🌷代码实现 🐳35. 搜索插入位置🌼题目🌻算法原理🌷代码实现 🦭852. 山脉数组的峰顶索引🌼题目🌻算法原…

python-opencv划痕检测-续

python-opencv划痕检测-续 这次划痕检测,是上一次划痕检测的续集。 处理的图像如下: 这次划痕检测,我们经过如下几步: 第一步:读取灰度图像 第二步:进行均值滤波 第三步:进行图像差分 第四步&#xff1…

java创建指定分辨率的图片或修改图片的分辨率(DPI)

因为java默认的图片像素分辨率DPI72,分辨率有点低。所以研究了一下如何创建指定DPI的方案。 DPI: 指的是每英尺的像素点(dots per inch) JPEG图片 JPEG图片的元数据定义参看oracle官网。 https://docs.oracle.com/javase/8/docs/api/javax/imageio/me…

VulnHub DC-9

🍬 博主介绍👨‍🎓 博主介绍:大家好,我是 hacker-routing ,很高兴认识大家~ ✨主攻领域:【渗透领域】【应急响应】 【python】 【VulnHub靶场复现】【面试分析】 🎉点赞➕评论➕收藏…

2011-2022年地级市互联网普及率数据

2011-2022年地级市互联网普及率数据 1、时间:2011-2022年 2、指标:行政区划代码、年份、地区、互联网宽带接入用户_千户、常住人口数_千人、户籍人口数_千人、每百人互联网宽带用户_常住人口口径、每百人互联网宽带用户_户籍人口口径 3、来源&#xf…

c语言编程(模考2)

简答题1 从键盘输入10个数&#xff0c;统计非正数的个数&#xff0c;并且计算非正数的和 #include<stdio.h> int main() {int i,n0,sum0;int a[10];printf("请输入10个数&#xff1a;");for(i0;i<10;i){scanf("%d",&a[i]);}for(i0;i<10…

【C++】类型转换

文章目录 C语言中的类型转换为什么C需要四种类型转换C强制类型转换static_castreinterpret_castconst_castdynamic_cast RTTI常见面试题 C语言中的类型转换 在C语言中&#xff0c;如果 赋值运算符左右两侧类型不同&#xff0c;或者形参与实参类型不匹配&#xff0c;或者返回值…

12英寸双轴半自动划片机:颠覆传统划切工艺的五大优势

随着科技的飞速发展&#xff0c;半导体行业对精密划切设备的需求日益增长。在这篇文章中&#xff0c;我们将深入探讨12英寸双轴半自动划片机的优势&#xff0c;这种划片机在半导体制造过程中扮演着至关重要的角色。以下是这种划片机的五大优势。 一、高精度划切 12英寸双轴半自…

【数据结构初阶】栈和队列

栈和队列 1.栈1.1栈的概念和结构1.2栈的实现 2.队列2.1队列的概念和结构2.2队列的实现 1.栈 1.1栈的概念和结构 栈&#xff1a;一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶&#xff0c;另一端称为栈底。…

OSG文字-HUD显示汉字示例(3)

显示文字是一种非常实用的技术&#xff0c;可以用来把一些重要的文字始终显示在屏幕上。HUD的全称是HeadsUpDisplay&#xff0c;即抬头显示&#xff0c;这种技术最早应用在军事战斗机上。 创建HUD显示的基本步骤如下: <1> 创建一个osg::Camera对象&#xff0c;设置视图、…

【CSH 入门基础 11 -- csh 判断命令是否执行成功】

文章目录 CSH 命令执行情况判断BASH 命令执行情况判断CSH 命令执行情况判断 在 csh 或 tcsh 脚本中,可以使用 $status 变量来检查上一个命令的退出状态。如果 $status 的值为零 (0),这表示上一个命令执行成功。任何非零值表示命令执行失败。 以下是一个 csh 脚本的示例,它执…

kubernetes学习-概念3

工作负载资源 Kubernetes 提供了几个内置的 API 来声明式管理工作负载及其组件。 最终&#xff0c;你的应用以容器的形式在 Pods 中运行&#xff1b; 但是&#xff0c;直接管理单个 Pod 的工作量将会非常繁琐。例如&#xff0c;如果一个 Pod 失败了&#xff0c;你可能希望运行…