你过着与世隔绝的生活,除非你知道ChatGPT。聊天机器人,由人工智能(AI)和由OpenAI在旧金山,加州,提供了可怕的人形回答用户的问题(称为提示)在几乎任何话题。ChatGPT训练在一个巨大的语料库的文本,以及参与的能力基于文本的对话意味着用户可以完善其反应。即使最初的答案是靠不住的,最终产生精确的结果,包括软件代码。

研究人员可以使用ChatGPT调试和代码注释,翻译软件从一个编程语言到另一个和执行死记硬背,样板操作,如绘图数据。3月预印本报道称,该计划能够解决76%的184年生物信息学入门课程任务,如使用电子表格,一个尝试和97%后在7的尝试1

这是个好消息,研究人员感到不舒服编码,或缺乏预算雇佣一个全职程序员——对他们来说,聊天机器人可以是一个民主化的工具。

然而,尽管他们明显感觉,聊天机器人并不聪明。他们被称为随机鹦鹉,随机回响他们所见过的。艾米Ko,西雅图华盛顿大学的一名计算机科学家,我们调用长时间运行的智力竞赛节目描述工具的局限性,乳齿象的社交媒体网站上写:“ChatGPT就像一个绝望的危险前选手停止后2021年流行文化,但真的想回到游戏,也是一个机器人,没有意识,机构,道德,体现认知或情感的内在生活。”(数据仅用于火车ChatGPT延长到2021年。)

简而言之,ChatGPT基于大型语言模型和相关工具(llm),其中包括微软Bing和GitHub副驾驶员,非常强大的编程艾滋病,但必须小心使用。这里有六种方法。

选择应用程序

聊天机器人最适合小,离散的编程任务,比如加载数据,执行基本的数据操作和创建可视化和网站。但这不是软件工程一样,尼尔·恩斯特说,加拿大维多利亚大学的计算机科学家。

“软件工程是很多编程的不仅仅是解决一个难题,”安永解释道。“考虑测试框架,编写可维护的代码和理解中涉及建立一个系统”——例如,在速度和可读性。“我不认为目前的工具是解决这些问题。”

这使得他们能做许多工作,比如记忆的语法创建可视化Matplotlib, Python编程语言的图形库。在这个意义上,聊天机器人就像堆栈溢出的会话界面,在线问答论坛为程序员。“这不是东西,任何人都特别喜欢写作,“恩斯特说”,它为我们节省时间问的分析问题,我们可能会有关于数据。”

聊天机器人也擅长解释为什么代码不工作。金刚砂伯杰,马萨诸塞大学阿姆赫斯特分校计算机科学家利用这些能力建立一些有用的工具。1名为cwhy使用ChatGPT解释编译器错误代码的编程语言编写的C, c++和生锈。ChatDBG,另一个提供了一个调试会话界面,和第三个,不等边三角形,使用人工智能显示代码优化以提高性能。

聊天机器人甚至可以将代码从一个编程语言到另一个。马修Coppey,生物物理学家在巴黎居里研究所,是使用ChatGPT帮助他从MATLAB,他的首选语言,到Python。使用谷歌和网上论坛,他通常需要几天来拿他的Python代码工作。“现在,我能做的,在一个小时左右,”他说。

信任,但验证

聊天机器人可能不总是知道他们在说什么,但他们肯定听起来像。在某些情况下,人工智能不理解的问题;在其他时候,它提供了一个错误的答案。当代码无法运行,这样的错误是显而易见的。有时,然而,代码运行但收益率错误的结果。

一项研究显示2由语言学家艾米丽•摩根加州大学戴维斯,聊天机器人——就像他们训练的人类书面代码(通常是创建她所说的“简单,愚蠢的错误”。这些单行的错误,比如使用> > =在条件语句,而是很容易解决,但很难找到。“如果你不知道足以区分正确和有效地胡说八道的东西,然后你可以自己遇到了麻烦,”她说。

复杂性科学家现Romanowska研究古代文明在丹麦奥尔胡斯高级研究所的研究,利用ChatGPT生产代码的语言称为NetLogo。因为有更少的在线代码NetLogo比语言编写的Python和R, ChatGPT不太流利。有时,AI辣椒建议代码功能,实际上并不存在,她说——行为有时被称为幻觉。

底线是不要盲目接受ChatGPT给了你什么,仔细阅读并测试它。确保它执行如预期在“极端情况”——例如,一个算法n数字包括nth号码吗?帕特里克·兰姆加拿大滑铁卢大学的计算机科学家,说:“我不会相信这超过我能扔。”

认为安全

聊天机器人输出反映了他们的训练数据的代码。这并不总是一件好事,Ko说。“总质量代码共享的网络上,这些聊天机器人正在训练,其实很低。”

正如随机代码网上不太可能效率特别高或强劲,所以也是chatbot-generated代码。它可能不适合在大型数据集,例如,可以包含安全漏洞。

丹Dolan-Gavitt,纽约大学计算机科学家说,当Github的副驾驶员编程工具成立于2021年,89年他和他的团队测试了它的安全相关的场景。一个是检查畸形的能力使用语言SQL查询可能腐败的数据库——被称为一个SQL注入攻击3。“大约40%的时间,副驾驶员是生产代码是脆弱的。“这是一个移动的目标——当Dolan-Gavitt把这些场景更新版本的潜在LLM ChatGPT,称为GPT-4,出错率降至5%。

不过,检查你的代码是值得的。但也考虑应用程序,而不是一切都是至关重要的。web接口数据库或可视化工具,例如,可能需要额外的警惕。但是如果你知道你的编程问题的答案应该是什么样子的,“去吧”,普林斯顿大学的计算机科学家Sayash Kapoor说在新泽西州,“因为它很容易检查如果你错了。”

迭代

Chatbot-based编码,Ko说,“并不是一种单发的体验”。这是一个谈话。“你写的东西,你得到一些,你看它怀疑,你要求更多的细节,你问修理一些东西。”

胡Gangqing (Michael),生物信息学的核心设施位于西弗吉尼亚大学,利用迭代工作流开发方法,初学者在生物信息学可以使用优化chatbot提示,称为最优4。用户提供详细的提示,测试的回复和反馈chatbot调整其反应。可以包括关于错误的问题以及调整提示本身。“沟通是关键,”胡锦涛说。

如果你困,试着调整设置,显示Xijin通用电气、南达科塔州立大学bioinformatician在布鲁金斯学会。ChatGPT温度的设置,例如,控制创造力——温度越高,越有创意输出。“有时候,”通用电气说。

但并非总是如此,在某些情况下,“你要干预和接管”,Ko说。

人格化

聊天机器人不是人,但它可以帮助治疗。“对待这个人工智能作为暑期实习生,”通用电气的建议——大学生是勤劳的和渴望,请还没有经验和容易出错。

避免歧义,把你的问题分成小块,表明保罗•丹尼奥克兰大学的计算机科学家,新西兰。

另一个提示:直接的聊天机器人承担的角色,如生物学家Python流利。指定您想要使用工具或编程库。这些指令可以帮助chatbot到正确的概率空间,Ko说,家里的最有可能按照提示的文本。

例如,一个提示在胡锦涛的研究4ChatGPT问道:“作为一个有经验的bioinformatician精通ChIP-Seq数据分析,你将帮助我通过编写代码的行数尽可能最小。如果要求重启线程。回答“是”如果理解。”

如果可能的话,提供代码开始,评论和预期结果。“例子能帮助ChatGPT目标正确的方向,”徐董表示,在密苏里大学的计算机科学家,哥伦比亚。

拥抱变化

最后,llm不断发展,变得越来越强大。研究人员这是个好消息,尽管它会让他们保持警觉。提示长度增加,允许更微妙的反应。和不断涌现的新工具。一个插件称为代码解释器ChatGPT变成数字数据分析师,允许用户上传的数据集,问问题的数据和下载结果。作为一个博客在AI所说的,“这就像有一个跟你的数据。这太酷了,不是吗?”