写点什么

代码生成:基于 AI 大模型的挑战与前景

  • 2023-10-16
    北京
  • 本文字数:1458 字

    阅读完需:约 5 分钟

大小:777.07K时长:04:25
代码生成:基于AI大模型的挑战与前景

使用 AI 通用模型来完成代码生成这类非常具体的任务可能会带来问题。人工智能生成的代码就像是陌生人的代码,它们可能并不符合你的代码质量标准。这种情况下,创建专业或专用的模型不失为一条出路。

 

Luise Freese 和 Iona Varga 在2023 年的 NDC Oslo 大会上探讨了 AI 模型的实践困境和伦理相关问题。

 

Varga 提到,“人工智能”这个词给人一种智慧的感觉,虽然这个名字实际只是代表了这些模型的构建方式。以节点相连的形式模仿人脑中神经元与突触连接而成的网络,这类模型因此而得名“人工网络”或“人工智能”。

 

Freese 补充道,抽象来说,计算机是完全依赖于或开或关的晶体管,通过这些开关的组合,我们得以操纵比特。由于晶体管之间没有相互的纠缠,这些开关最终会带来这样的结果:


因此,计算机并不会思考,不过是我们的人工智能算法赋予了它们个性和特征,比如“让我考虑一下”这类礼貌说辞。AI 仅仅是利用统计数据对事物进行预测、分类或组合。

 

Varga 提到,AI 的问题在与使用极其通用的模型或是基础模型完成非常具体的任务。大语言模型(LLM)的工作原理是先分析问题、创建一两个词语,再根据统计数据预测下一个标记的最佳匹配。此外,LLM 本身是无法对事实进行核查的,因为这类模型的设计目的是生成而非验证。

 

如果我们试图建立一个能解决所有 AI 问题的 AI 模型,那么我们将会创造出一种自我放大的螺旋式下降,Freese 补充道。若想实现螺旋式上升,那就应该少用基础模型,多用更为具体的模型,后者中有一部分实际就是搭建在基础模型之上的。

 

AI 或许能生成代码,但这些代码是否能安全地使用,是否能满足我们对质量的标准要求?Varga 认为这些问题只能由真正的人类来回答,这一过程并不容小觑。归根结底,就像是代码的编写一样,调试陌生人的代码远比自己从头到尾参与其中的代码更为困难。

 

一般模型的理解能力也更为通用,这在代码生成问题上可能会带来问题,正如 Varga 所解释的:

举例来说,React v17 或 v16 这些可能没有直接反应在模型的上下文中,但模型也能了解这些代码库。或许你会发现自己生成的一个函数中会混杂有两个版本的代码。

Varga 认为,多数情况下 AI 都是解决问题的好帮手。但使用 AI 就意味着你要去检查、验证、修改、编辑或重写部分内容,而这一部分可能才是我们低估 AI 工具带来工作量的地方。

 

InfoQ 针对人工智能所带来的挑战问题采访了 Luise Freese 和 Iona Varga

 

InfoQ:什么因素会造成 AI 的失败?


Iona Varga:一般来说,AI 并不是命中注定要失败的。我是医学物理出身的,我也见过很多优秀的 AI 工具,它们能出色地完成波弹性成像的实时剪切,早期阶段的婴儿检测,甚至能检测出肿瘤专家都无法发现的肺癌细小结节。

 

但由于虚假数据和扭曲事实问题的存在,这些结果并不完全可信。举例来说,川普就职典礼上,实际的到场人数是要少于最初公布的数据。试着问模型就职典礼的公园有多热闹,你大概会得到一个出乎意料的答案。但同样,数据的来源时至今日也有颇具争议的历史背景,它们可能会出于政治剧本或标准等原因而被修改。


InfoQ:伦理道德如何才能帮助我们解决 AI 所带来的问题?


Luise Freese:伦理道德作为工具本身是帮不上太多忙的。伦理只是一种工作的方式,就像是 DevOps 一样。一旦你有了规划,知道该做什么了,“伦理道德”就是你对“完成”的定义。我所用的数据是否覆盖了所有产品使用相关的人或事?通过这些道德的检测,我们的工作方式将会在可访问性、包容性和避免偏见方面得到改善。

 

原文链接:

The Challenges of Producing Quality Code When Using AI-Based Generalistic Models

2023-10-16 08:005571

评论

发布
暂无评论
发现更多内容

基于飞桨实现的特定领域知识图谱融合方案:ERNIE-Gram文本匹配算法

飞桨PaddlePaddle

dubbo Triple 统一参数验证

昵称不能为null

dubbo triple协议 参数验证

深入了解 JavaScript 内存泄漏

京东科技开发者

JavaScript 前端 内存 计算

PyTorch 深度学习实战 |用TensorFlow训练神经网络

TiAmo

神经网络 tensorflow MNIST

NFT质押借贷平台开发系统DApp搭建

薇電13242772558

NFT

阿里云资深技术专家闫卫斌:打造具备极致容灾能力的对象存储

云布道师

阿里云 云存储

组装式应用新趋势:小程序技术科提高软件开发效率

FinFish

小程序容器 组装式应用 小程序技术

探索大语言模型垂直化训练技术和应用-陈运文

NLP资深玩家

人工智能 ChatGPT

OpenAI创始人:GPT-4的研究起源和构建心法

OneFlow

人工智能 深度学习 ChatGPT Greg Brockman

面试造飞机? 网易在职顶级大佬“java面试真题 2023” (助上岸)

三十而立

Go 第三方 log 库之 logrus 使用

江湖十年

后端 日志 Go 语言

软件测试/测试开发丨Pb协议的接口测试

测试人

软件测试 自动化测试 测试开发

软件测试/测试开发丨接口协议之抓包分析 TCP 协议

测试人

软件测试 自动化测试 测试开发

政企中小微客户业务一线支撑赋能

鲸品堂

通信 运营商 电信运营商 企业号 3 月 PK 榜

瓴羊Quick BI,让企业运营提效的好工具

对不起该用户已成仙‖

如何自动化测试你的接口?—— Rest Assured

JAVA旭阳

Java springboot

PopupWindow(悬浮框)的基本使用

芯动大师

android AlertDialog PopupWindow

电脑风扇控制软件:Macs Fan Control Pro中文激活版

真大的脸盆

Mac Mac 软件 电脑风扇控制 风扇转速控制

面试造飞机?GitHub顶级“java面试手册2023”(统计通过率95%)

三十而立

Java

for 循环嵌套 for 循环,你需要懂的代码性能优化技巧!

三十而立

Java

Java 内联类初探

三十而立

Java

[译]探索 Go 中 io/fs 包以提高测试性能和可测试性

蓬蒿

golang 测试 io/fs

朴素系统优化思维的实践

京东科技开发者

方案 构架 系统优化

一种异步延迟队列的实现方式

京东科技开发者

架构 软件架构 企业号 3 月 PK 榜 延迟处理

腾讯2022年度研发大数据报告:研发人员占比74%,新增研发项目超7000个

科技热闻

智能健康管理正当时,脉冲技术的一次自证与他证

脑极体

skg 按摩仪

如何将营销模板以小程序的形式上架至App?

FinFish

小程序容器 小程序技术 营销模板

架构实战 - 模块 9 毕业项目

mm

#架构实战营

谁能让企业运营快速提效,那当然瓴羊Quick BI

巷子

如此丝滑的按钮交互效果

南城FE

css3 前端 设计 动画 交互

代码生成:基于AI大模型的挑战与前景_生成式 AI_Ben Linders_InfoQ精选文章