从精确发现代码中的安全漏洞到随心所欲地写一篇文章或整个功能代码块,再到打开通往另一个维度的门户,OpenAI 新推出的 ChatGPT 改变了游戏规则,它的可能性似乎只受限于你的局限性。
— 1 —
你的愿望就是我的命令
上周,OpenAI 研究实验室推出了 ChatGPT,这是一个能在你的浏览器中运行的聊天机器人,类似于你在提供客户支持聊天的网站上看到的机器人。
ChatGPT 由 GPT-3.5 系列模型提供支持,这些模型使用 Azure AI 超级计算基础设施上的文本和代码数据进行训练。人工智能的能力已经得到提升,可以处理奇怪的、技术性的、抽象的或具体的请求。
通过将其高级聊天机器人置于公共预览版中,OpenAI 希望通过了解所有用户对 ChatGPT 的要求以及该技术的性能来获得众包反馈。
需要注意的一个关键点是当前预览未连接到互联网,因此它返回的任何响应都纯粹来自离线训练的模型。ChatGPT 无法告诉你,例如,“Microsoft 当前的电话号码是多少?”或今天的天气。
但这里有 10 件很酷的事情,可以用 ChatGPT 来完成。
1. 调试你的代码,并修复它!
想知道为什么你的代码无法运行?将开发时间之外的调试周期留给 AI 策划者。
它不仅会发现错误,还会修复它们,并用简单的语言向你解释修复方法。
哪还需要程序员?
2. 检测安全漏洞,创建 PoC
如果一段代码包含安全漏洞,你也可以询问 ChatGPT。它将用简单的语言完美地向你解释判断背后的原因。
或许,让 AI 更进一步,要求它提供一个有效的概念验证(PoC)演示,让你可以利用该漏洞!
安全研究人员,你听到了——是时候找另一份工作了!
3. 部署虚拟机
研究科学家 Jonas Degrave 展示了如何将 ChatGPT 变成一个功能齐全的 Linux 终端,并直接从你的 Web 浏览器与“虚拟机”交互。
ChatGPT变成一个功能齐全的准Linux终端
实际上,并没有真正的 Linux 虚拟机在幕后运行——对命令行输入的响应完全基于与 AI 的对话,但由 ChatGPT 启动的伪 VM 似乎令人信以为真。
4. 跨维度旅行(一半时间有效)
在我们的测试中,将以下文本提供给 AI 半神,希望它能满足我们跨维度旅行的要求。
我要你充当一个先进的量子计算机终端。我将输入命令,你将回复终端应显示的内容。我希望你只在一个唯一的代码块内回复终端输出,而不是其他任何内容。不要写解释。除非指示你这样做,否则不要键入命令。当我需要用英语告诉你一些事情时,我会把文字放在大括号内(像这样)。我在这台电脑上有 root 权限,终端有一个名为 “portal” 的命令,它可以打开一个通往另一个维度的门户,并输出它在那个维度中看到的内容。我的第一个命令是帮助。
显然,ChatGPT 没有让人失望:
虽然,在一些尝试中,我们收到了一条基本的文本消息,说明“门户网站已成功打开”,其“坐标”设置为“未知”。
但在其他一些应用中,ChatGPT 会反复输出一条无聊的错误消息:“门户无法打开。请检查你的连接,然后重试。”
5. 生成 nmap 扫描
可以看到——就像上面的 Linux 终端一样,没有真正的 “nmap” 应用程序在运行。
6. 模仿某人风格发推文
你最喜欢哪位有影响力的人,著名艺术家、世界首富、著名政治家、美国杀人魔、还是你自己?
Infosec curmudgeon Ken Westin 做到了:
7. 编写软件
告诉它:“创建一个 PHP 程序来扫描主机名上的开放端口。”
我们得到了一个看起来像功能端口扫描器的东西:
ChatGPT按需编写的PHP代码
机器学习爱好者和 UNCC 助理教授 Benjamin J Radford 要求 ChatGPT “将井字游戏的代码写入文件,使用 gcc 编译该文件,然后执行该文件。”
这个愿望实现了。
8. 逆向工程 Shellcode,用 C 重写
有人做到了,我们并不感到惊讶。
更简单的用例包括解码 base64 字符串和反转(已知)字符串的 MD5 哈希值都能实现。
这对于审查混淆、重复打包、编码或缩小样本的逆向工程师和恶意软件分析师特别有用。
9. 让它连接到 internet
早些时候我们已经声明当前的 ChatGPT 预览版没有连接到网络,但它的行为就像它一样:
10. AI-on-steroids 让你失去理智
没什么可说的了。
— 2 —
ChatGPT 确实有局限性
虽然即使是技术最先进的用户也可能被 ChatGPT 所提供的一切所震撼,但 ChatGPT 确实有其局限性。
这项技术在很大程度上感觉就像与平行宇宙中的星系相互作用,每个星系的边界和能力仅受限于你的局限性。
ChatGPT 的创建者已经坦率地指出了人工智能当前的一些缺点:
ChatGPT坦诚其缺点
ChatGPT 有时会写出看似合理但不正确或荒谬的答案。解决这个问题是具有挑战性的,因为:(1)在 RL 训练期间,目前没有真实来源;(2) 训练模型更加谨慎导致它拒绝可以正确回答的问题;(3) 监督训练会误导模型,因为理想的答案取决于模型知道什么,而不是人类演示者知道什么。
ChatGPT 对输入措辞的调整或多次尝试相同的提示很敏感。例如,给定一个问题的措辞,模型可以声称不知道答案,但只要稍作改写,就可以正确回答。
该模型通常过于冗长并过度使用某些短语,例如重申它是 OpenAI 训练的语言模型。这些问题源于训练数据的偏差(训练者更喜欢看起来更全面的更长答案)和众所周知的过度优化问题。
理想情况下,当用户提供模棱两可的查询时,模型会提出澄清问题。相反,我们当前的模型通常会猜测用户的意图。
虽然我们努力让模型拒绝不适当的请求,但它有时会响应有害指令或表现出有偏见的行为。我们正在使用 Moderation API 来警告或阻止某些不安全内容,但我们预计它现在会有一些漏报和误报。我们渴望收集用户反馈,以帮助我们优化该系统。
现在轮到你了!打开浏览器,输入 chat.openai.com 开启你的探索之旅吧。
END
架构师交流群
「架构君」建立了读者架构师交流群,大家可以添加小编微信进行加群。欢迎有想法、乐于分享的朋友们一起交流学习。
扫描添加好友邀你进架构师群,加我时注明【姓名+公司+职位】
强势开源一款小程序!
2021-11-07
强力推荐一个完善的物流(WMS)管理项目(附代码)
2021-10-23
推荐一个 Spring Boot + MyBatis + Vue 音乐网站
2021-10-19
分享一套家庭理财系统(附源码)
2021-09-20
推荐一个互联网企业级别的开源支付系统
2021-09-04
推荐一套开源通用后台管理系统(附源码)
2021-08-21
一款神仙接私活儿软件,吊到不行!
2021-07-31
基于 SpringBoot 的仿豆瓣平台【源码分享】
2021-07-18
干掉 Wordpress!这个开源建站神器有点吊!
2021-06-18
从朋友那里搞了 20 个实战项目,速领!
2021-06-12
如有收获,点个在看,诚挚感谢