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

2023-11-22 19:52

本文主要是介绍程序员指南|学会与大模型相处,提升个人开发效率,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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


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


首先,我们需要了解大模型的概念。由于训练数据和参数等多种原因,不同的模型有各自的优势。在一些微信机器人中,我们会使用文心一言来获取实时的信息内容,并结合国内外的开源和闭源模型(如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.chinasem.cn/article/412527

相关文章

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

SQLite3命令行工具最佳实践指南

《SQLite3命令行工具最佳实践指南》SQLite3是轻量级嵌入式数据库,无需服务器支持,具备ACID事务与跨平台特性,适用于小型项目和学习,sqlite3.exe作为命令行工具,支持SQL执行、数... 目录1. SQLite3简介和特点2. sqlite3.exe使用概述2.1 sqlite3.exe

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

使用Python开发一个现代化屏幕取色器

《使用Python开发一个现代化屏幕取色器》在UI设计、网页开发等场景中,颜色拾取是高频需求,:本文主要介绍如何使用Python开发一个现代化屏幕取色器,有需要的小伙伴可以参考一下... 目录一、项目概述二、核心功能解析2.1 实时颜色追踪2.2 智能颜色显示三、效果展示四、实现步骤详解4.1 环境配置4.

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

SpringBoot整合Apache Flink的详细指南

《SpringBoot整合ApacheFlink的详细指南》这篇文章主要为大家详细介绍了SpringBoot整合ApacheFlink的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的... 目录1. 背景与目标2. 环境准备2.1 开发工具2.2 技术版本3. 创建 Spring Boot