ChatGPT能胜任高级程序员吗?

与开发人员信任的其他软件开发工具不同,AI工具在训练、构建、托管和使用方式等方面都存在一些独特的风险。

自2022年底ChatGPT发布以来,互联网上便充斥着对其几乎相同比例的支持和怀疑的论调。不管你是否喜欢它,AI正在逐步进入你的开发组织。即使你不打算开发人工智能产品,也不打算利用AI工具为你编写代码,它仍可能被集成到用于构建、测试和运行源代码的工具和平台中。
在这里插入图片描述
AI工具存在一些较为特殊的风险,这些风险可能会使自动化任务所带来的生产力收益受到影响。而这些风险主要源于AI的训练、构建、托管和使用方式,AI工具在这些方面与开发人员信任的其他工具存在诸多不同之处。了解风险是管理风险的第一步,为了帮助你了解AI工具的潜在风险,我们设计了一些面向AI工具的面试问题,这些问题能够决定该工具是否能顺利“入职”你的公司。

总体而言,所有的的AI工具都存在一定的共性,无论人工智能的类型或用途如何,在选择使用它之前,都应提出如下问题:

这款AI工具的基础设施在什么位置?现代人工智能无一不需要专用且昂贵的硬件进行支持。除非你打算收购一个新的数据中心;否则你的AI工具将只能进行远程工作,并需要使用远程访问和非现场数据存储,而这将造成一定的安全隐患。
在代码离开处理边界时,采取什么样的保护措施来防止IP丢失?从智能电视到智能汽车,一切人工智能产品都在向其制造商贡献数据。一些企业使用这些数据来优化他们的软件,但另一些企业会将这些数据卖给广告商。因此,你有必要准确了解AI工具将如何使用或处理其用于主要任务的源代码或其他私有数据。
你的输入能够用于模型的训练任务吗?人工智能模型的持续训练是模型所有企业以及模型训练人员非常关注的任务。例如,模型所有企业往往不希望广告商过多介入其模型训练环节,以达到免费的广告推送的目的。
结果的准确度是多少?ChatGPT最致命的缺点是其结果的不准确性。它在生成谎言和真理方面表现都很突出;这被称为AI幻觉。了解人工智能可能产生错误的方式和场景,有助于在AI工具发生错误时进行管理。
除此之外,人工智能所有企业和开发者会存在自己的一系列安全问题。这些新的担忧包括对人工智能训练模型的威胁,这些威胁可能会破坏其结果,并泄露有关模型运行方式的专有信息,以及可能会破坏模型生成结果的质量。此外,人工智能模型必须通过API、Web访问、移动应用程序和其他需要安全构建的应用程序与传统世界进行交互。

除一般问题外,开发人员在使用AI工具时还必须提出其他方面的问题,如使用AI安全扫描程序,以便管理软件开发过程中引入的风险。

AI工具是否适合应用于此类场景?了解人工智能不擅长什么是十分关键的。例如,如果一项任务可以细分为“根据学习规则做出决定”或“编写符合学习规则的内容”;那么,人工智能通常很擅长此类任务。如果问题的变化超越此范围,人工智能可能会表现得很糟糕。
如果AI工具出现错误,该采取什么保护措施?千万不要在你的过程中引入一个单一的失败点,尤其是一个可能产生幻觉的失败点。推荐的做法应当是,依靠与深度防御相关的传统做法,或管理风险的方法——即系统中的一层产生了问题,下一层也会捕获它。
审查工具结果需要如何进行监督?其实这是一个旧事重提的问题。传统的问题日志捕获方案通常分为两部分:第一个是获取重要事件的数据;第二个是审核日志。在人工智能进一步成熟,其缺陷得到理解或缓解之前,人类仍需要保持对于循环的控制。
如今,越来越多的开发人员“雇佣”ChatGPT来编写源代码。初步报告显示,ChatGPT能够用多种编程语言编写源代码,并且能够流利地使用所有常见的语言。由于当前这个测试版的训练和模型还存在一定的局限性,所以它产生的代码并不总是完美的。它通常包含可以改变软件运行方式的业务逻辑缺陷、可能会混合不同版本软件的语法错误以及其他看似人性化的问题。

大致上来看,ChatGPT仅是一个初级程序员。那么,谁会成为它的上级?

换句话说,ChatGPT也就是一个初级开发人员水平。因此,当使用这个初级开发人员编写的代码时,必须考虑如何管理它:

谁将成为其上级,以保障其编写代码的整体效果?初级开发人员通常都需要高级开发人员的协助。每一行代码都必须经过测试,有些代码必须修复。然而,有报告表明,这种校对过程比从头开始编写代码更加耗时、更加复杂。
它是将训练代码注入还是重新混合到代码库中?一个更隐蔽的威胁是,有时像GitHub Copilot这样的人工智能机器人会产生源代码,完美地复制训练数据中的代码块。因此,需要利用反剽窃工具来确保许可证风险得到管理。
AI工具从哪里获得训练数据?一个人工智能模型的能力水平与它的训练数据密切相关。如果AI使用旧的或不正确的代码进行训练,那么它将产生旧的和不正确的结果。
引擎托管在哪里?分析源代码的AI机器人需要将源代码整合到其相应的处理设备中。在离开公司管控后,应特别考虑如何保护、使用和处置数据。
无论如何,2022年12月发布的ChatGPT预示着软件开发的新时代。关注这类工具的变化而不是被它们击败是很重要的。在采用这些新工具时要明确,事情变化越多,就越该保持不变:预防安全事件总比发现意外要好。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【设计模式】Bridge Design pattern 桥接模式

1.桥接模式要解决的问题 多个维度的变化引起的继承组合指数级增长 例子 一个物体有不同形状和不同颜色,如何用类来表示它们,这里包含了两个变化维度,一个是物体的形状,一个是颜色 继承的方式 如果使用继承的方式,此…

抖音seo优化系统常见的交付形式|技术开发

1. 一次性交付:将整个SEO优化系统一次性交付给客户,包括相关的文档、工具和数据分析报告,由客户自行操作和维护。 2. 阶段性交付:将SEO优化系统分为不同的阶段进行交付,每个阶段完成后进行检查和评估,根据…

2. [手把手教你搭建] 之 在linux上搭建mysql

1. 首先下载mysql安装包,这里一般有如下2种下载方式 wgt方式下载:进入服务器中的package目录(注:该目录是我自己创建的,用于存放所有应用的安装包,您也可以随便创建其他名称的目录来存放安装包&#xff09…

k8s部署

kubernetes简要 Kubernetes 是用于自动部署, 扩展和管理容器化应用程序的开源系统. 它将组成应用程序的容器组合成逻辑单元, 以便于管理和服务发现 kubernetes功能简介 服务发现和负载均衡 存储编排 自动部署和回滚 自动完成装箱计算 自我修复 密钥与配置管理 Kuberne…

算法题记录

力扣的算法题:1154 给你一个字符串 date ,按 YYYY-MM-DD 格式表示一个 现行公元纪年法 日期。返回该日期是当年的第几天。 示例 1: 输入:date “2019-01-09” 输出:9 解释:给定日期是2019年的第九天。 示例…

【数据结构与算法】查找(Search)【详解】

文章目录查找查找概论一、查找的基本概念顺序表查找一、定义二、算法有序表查找一、折半查找二、插值查找三、斐波那契查找线性索引查找一、稠密索引二、分块索引三、倒排索引二叉树排序与平衡二叉树一、二叉排序树1、定义2、二叉排序树的常见操作3、性能分析二、平衡二叉树1、…

【学习笔记】启示录 - 打造用户喜爱的产品(阅读摘录)

【学习笔记】启示录 - 打造用户喜爱的产品(阅读摘录) 图书信息 Marty Cagan 著 七印部落 译 人员: 负责定义和开发产品的团队成员的角色和职责 流程: 探索、开发富有创意的产品时,反复应用的步骤和成功的实践经验 产品…

Ethernet-APL——网络拓扑结构

| 三种独立的应用场景——适用于短距离小型网络和长距离大型网络! Ethernet-APL(Advanced Physical Layer,高级物理层)是过程工业的新标准。它基于IEEE 802.3cg的10BASE-T1L规范,并通过使用两线制以太网来连接到现场设…

【新2023Q2押题JAVA】华为OD机试 - 最长合法表达式

最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为od机试,独家整理 已参加机试人员的实战技巧本篇题解:最长合法表达式 题目 提取字…

网管gateway

提到网关,可能大家都有所了解,但是网关具体有什么作用呢??? 不绕关子了,具体作用有以下几点: 对用户请求做身份认证、权限校验将用户请求路由到微服务,并实现负载均衡对用户请求做…

第53章 短信验证服务和登录的前端定义实现

1 向src\router\index.js添加定义 { path: /LoginSms, name: 手机号登录, component: () > import(../views/LoginSmsView.vue) }, { path: /Users/Register, name: 用户注册, component: () > import(../views/Users/RegisterView.vue), }, 2 向src\common\http.api.js添…

【面试】Java集合面试题

文章目录集合容器概述什么是集合集合的特点集合和数组的区别使用集合框架的好处常用的集合类有哪些?List,Set,Map三者的区别?集合框架底层数据结构哪些集合类是线程安全的?Java集合的快速失败机制 “fail-fast”&#…

css 样式开发中遇到的问题

1.文本换行 汉字和英文数字字符适配 word-break: break-all;word-wrap: break-word;text-align: left; 2.文本换行以及出现省略号 word-break: break-word;overflow: hidden;text-overflow: ellipsis; // ...展示display: -webkit-box; // 弹性伸缩盒盒子模型显示-webkit-line…

面试常问的Linux之 I/O 复用

I/O 复用 一、I/O的概念 在Linux系统中,I/O(输入/输出)指的是计算机系统的数据交换过程,包括从外部设备读取数据(输入)和将数据发送到外部设备(输出)。I/O操作是Linux系统中非常重要…

人工智能从来不是一帆风顺的

不久之前,人们还常说,计算机视觉的辨别能力尚不如一岁大的孩子。如今看来,这句话要改写了。 ----- 特伦斯谢诺夫斯基 目录 人工智能初现端倪 人工智能初现 人工智能“第一次危机”——“设计派”行不通 第一次危机破局——学习派初见成效…

Python-np.expand_dims()

1. np.expand_dims 用于扩展数组的维度 执行程序后注意观察中括号[ ]的位置和数量 np.expand_dims(a, axis0)表示在axis0维度处扩展维度,加一层中括号[ ]; np.expand_dims(a, axis1)表示在axis1维度处扩展维度,加一层中括号[ ]; np.expand_dims(a, …

Golang每日一练(leetDay0025)

目录 73. 矩阵置零 Set Matrix Zeroes 🌟🌟 74. 搜索二维矩阵 Search A 2d-Matrix 🌟🌟 75. 颜色分类 Sort Colors 🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Pyth…

大数据领域的发展及其对现实世界的价值

大数据已经成为全球各行业领域不可或缺的一部分,并且其应用不断涌现。尽管很多人最初对“大数据”这一术语表示怀疑和不信任,但大数据技术已经确立了稳定的发展方向。根据调研机构的预测,到2027年,全球大数据市场规模将达到1090亿…

PostgreSQL之Full VACUUM

前面我们介绍了PG中的Concurrent VACUUM,详细请参考PostgreSQL之Concurrent VACUUM,这篇我们继续来了解一下PG中的Full VACUUM。 我们了解Concurrent VACUUM允许在执行的时候仍然允许对正在VACUUM的表进行读取操作,因此这个操作对业务的影响也…

学成在线:第五天(p82-p93)

1、面试:在分片广播中,如何保证多个执行器不会重复执行任务? (虽然有分片序号,但是加入只有两个执行器,有很多任务,这两个执行器得到的分片序号也就只是两个数字,后面的分片是如何能…
最新文章