写点什么

代码生成:基于 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:005197

评论

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

阿里P7大牛整理!对Android开发的现状和未来发展的思考,吊打面试官系列!

欢喜学安卓

android 程序员 面试 移动开发

爱奇艺大数据生态的实时化建设

爱奇艺技术产品团队

大数据 实时数仓 数据流

压抑了五个月的我终于可以放声呐喊了!阿里是真的难进,Java四面面经+面试题

Java架构追梦

Java 阿里巴巴 架构 面试 金三银四

区块链数字版权保护--为数字版权保护赋能

13530558032

统一日志管理方案:Spring项目logback日志与logstash和Elasticsearch整合

朱季谦

ELK

android开发经典实战!我的移动开发春季历程,大厂直通车!

欢喜学安卓

android 程序员 面试 移动开发

基于NB-IoT的智慧路灯监控系统(NB-IoT专栏—实战篇5:手机应用开发)

不脱发的程序猿

物联网 28天写作 3月日更 NB-IoT智慧路灯 手机应用开发

模仿Activiti工作流自动建表机制,实现Springboot项目启动后自动创建多表关联的数据库与表的方案

朱季谦

建表

Kylin安装部署

五分钟学大数据

kylin 3月日更

什么?都1202年了还不懂k8s和容器的关系?!这份k8s指南快拿走不谢!

观测云

云计算 k8s 云服务 知识星球

程序员自我提升不得不知道的一些宝藏网址,收藏起来吧

北游学Java

Java 后端 资源分享

Rust从0到1-基础概念-函数

rust 函数

visualvm工具远程对linux服务器上的JVM虚拟机进行监控与调优

朱季谦

JVM GC 调优

智慧党建平台建设--开拓新时期党建系统

13530558032

区块链如何应用到食品?区块链食品安全溯源

13530558032

Instagram视频下载器: 4K Video Downloader

科技猫

软件 音视频 经验分享 资源分享 工具分享

HPE的通信技术集团将如何加速电信5G的普及和应用?

VoltDB

数据库 5G VoltDB 电信

Knativa 基于流量的灰度发布和自动弹性实践

Serverless Devs

Serverless Kubernetes 运维 云原生 Knative

近万字原创长文,以追忆2020年:《请回答,2020》

朱季谦

随笔杂谈

vue项目中使用tinymce富文本编辑器实现图片上传/粘贴格式

yumibgt

tinymce

嵌入式软件架构设计之分层设计

cdhqyj

架构 软件 嵌入式 分层

2021最新分享Java面试全套合集!

比伯

Java 编程 架构 面试 计算机

区块链农产品溯源平台搭建,一物一码追溯系统

策略枚举:消除在项目里大批量使用if-else的正确姿势

朱季谦

枚举 策略模式

微信扫码登录技术实现的简单思考

朱季谦

redis

深入理解Spring Security授权机制原理

朱季谦

security

新思科技解析导致汽车无钥匙进入系统易受攻击的漏洞及缺陷

InfoQ_434670063458

web前端面试题详细解析

yumibgt

面试

spark性能调优之JVN调优

大数据技术指南

spark 3月日更

Activiti工作流自动生成28张数据库表的底层原理分析

朱季谦

Activity 工作流引擎

从开源的历史与今天,聊聊为什么要期待HDC.Cloud 2021

脑极体

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