《架构师》2023年4月
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

热点|Hot

ChatGPT联网终极进化!插件系统正式开放、无需编码就能上手,网友:这是我见过最疯狂的系统

作者 褚杏娟 凌敏 核子可乐

当地时间3月23日,OpenAI宣布正式上线了以安全为核心的ChatGPT插件系统。OpenAI插件将ChatGPT连接到第三方应用程序,之后ChatGPT便能够与开发人员定义的API进行交互,从而增强ChatGPT的功能并允许其执行范围广泛的操作,主要包括:

•检索实时信息,例如体育比赛成绩、股票价格、最新消息等。

•检索知识库信息,例如公司文件、个人笔记等。

•代表用户执行操作,例如订机票、订餐等。

目前,插件系统还处于alpha测试期,首批参与插件创建的厂商包括Expedia、FiscalNote、Instacart、KAYAK、Klarna、Milo、OpenTable、Shopify、Slack、Speak、Wolf ram和Zapier。

其他使用插件的开发者可以申请进入候补名单(https://openai.com/waitlist/plugins)。OpenAI表示,在了解更多情况后将逐步开放访问范围。

注:Expedia:让您的旅行梦想成真——抵达、驻足、尽享一切美景和体验。

FiscalNote:在法律、政治和监管数据与信息需求提供并选择市场领先的实时数据集。

Instacart:从您最喜爱的本地杂货店订购日用百货。

KAYAK:搜索航班、住宿和租车信息,获取预算空间之内的一切出行建议。

Klarna Shopping:从数以千计的网上商店中搜索和比较商品价格。

Milo Family AI:每天20分钟,让父母获得化狂躁为魔法的超能力。用法简单:Hey Milo,今天有什么魔法?

OpenTable:提供餐厅推荐,并附带预订链接。

Shop:覆盖全球各知名品牌的数百万种产品。

Speak:使用AI导师Speak,学习如何用外语表达自己。

Wolfram:通过Wolfram|Alpha和Wolfram Language访问计算、数学、精选知识和实时数据。

Zapier:与5000多款应用程序交互,包括Google Sheets, Trello, Gmail, HubSpot, Salesforce等。

另外,OpenAI还自己托管了两款插件,其一为网络浏览器,其二是代码解释器。OpenAI开源了一款知识库检索插件的代码,任何开发者都可以借此托管用于增强ChatGPT的信息。

OpenAI表示,现在的语言模型虽然在各类任务中都能有所表现,但结果还不尽人意。而模型提升自我的唯一途径就是其训练数据。但一个问题是,数据内容可能已经过时,而且模型往往“以偏概全”、“生搬硬套”。此外,语言模型唯一能够开箱即用的输出模式就是文本,虽然文本中包含实用说明,但要将其化为操作还需要经历额外的过程。

OpenAI将插件比喻成语言模型的“眼睛和耳朵”,能帮助模型访问因为较新、较私人或较具体而不宜包含在训练数据内的信息。为了响应用户的明确要求,插件还能帮助语言模型切实执行安全、受控的操作,从而提高整个系统的实用性

视频地址:https://www.infoq.cn/article/sqGLAIdIKP1jv2YKMd3C

ChatGPT插件使用示例

插件的表现如何?

我们先看下OpenAI自己托管的两个插件表现如何。

浏览插件

一套知道该何时及如何浏览互联网的实验性模型。

以往,ChatGPT会礼貌地指出,其训练数据中不具备充足的信息,因此无法回答某些特定问题。但现在可以给出答案和相关链接了。

在OpenAI展示的示例中,ChatGPT会检索关于最新一届奥斯卡颁奖典礼的信息,再用其最擅长的“写诗”能力加以改编。

以下是ChatGPT的回答,它给出了一系列的搜索结果,用户直接点击就可查看相关的信息来源。

除了为最终用户提供显著的实用性助益之外,OpenAI认为,这种对语言和聊天模型全面可解释性的研究,也将在可扩展性和对齐能力方面带来令人兴奋的前景。

代码解释器

一套可使用Python处理上传和下载的实验性ChatGPT模型。

OpenAI为模型开发了一个可在沙盒、防火墙执行环境中工作的Python解释器,外加一些临时磁盘空间。解释器插件运行的代码会在一个持久会话中进行评估,且该会话在聊天期间始终有效(具有上限超时),后续调用可以相互构建。此外,还支持将文件上传至当前对话工作区,并下载工作结果。

比如,当问到:一块砖的重量是这块砖自身30%的重量与5个GPU的重量之和,已知每吨重量包含了100块砖和200个GPU,那么一块砖的重量是多少?

ChatGPT给出的答案是:一块砖的重量是7.8125千克。

执行逻辑计算的代码解释器插件

从早期用户研究来看,OpenAI确定了代码解释器的几种重要用途:

•解决定量和定性类数学问题

•进行数据分析和可视化

•将文件转换为不同格式

OpenAI表示,希望这套模型能够运用自己的编程技能,为计算机中的基础功能提供更自然的使用界面。刚刚上手的初级程序员可以在它的帮助下大大提高工作效率,同时也希望能让更多受众接触并掌握编程技能。

第三方插件

一套知道该何时及如何使用插件的实验性模型。

ChatGPT中的第三方插件

第三方插件由manifest文件做描述,其中包含对插件功能的机器可读描述和调用方法,同时提供面向用户的说明文档。

待办事项管理插件的manifest文件示例

插件的创建步骤如下:

1.用户使用希望语言模型调用的端点来构建API(可以是新的API、现有API或专为大语言模型设计的现有API打包器)。

2.为自己的API创建OpenAPI记录规范,同时创建一个指向OpenAPI规范并包含插件特定元数据的manifest文件。

在chat.openai.com上开始对话时,用户可以指定想要启用的第三方插件。关于已启用插件的文档,将作为对话上下文的一部分被提交给语言模型,让模型能够根据需求调用适当的插件API以实现用户意图。目前的插件主要考虑对后端API的调用,OpenAI也在探索如何让API调用客户端API。

开源检索插件

开源检索插件让ChatGPT能够访问个人或组织信息源(经过许可)。它允许用户通过提问或用自然语言表达需求,从数据源处获取关联性最强的文档片段,包括文件、笔记、电子邮件或公共文档。

作为开源加自托管方案,开发人员可以部署自己的插件版本并在ChatGPT上注册。检索插件利用OpenAI嵌入,允许开发人员选择矢量数据库(Milvus、Pinecone、Qdrant、Redis、Weaviate或Zilliz)来索引和搜索文档。信息源可使用webhooks与数据库保持同步。

要体验这项功能,可以访问检索插件代码仓库:https://github.com/openai/chatgpt-retrieval-plugin

ChatGPT会杀死Python吗?

添加插件后的ChatGPT能力大大增强,英伟达AI科学家Jim Fan激动地表示:如果说ChatGPT的登场是“iPhone盛会”,那么今天第三方插件的集成就是“iOS App Store”盛会。也有网友认为,“今天开始我们已经进入Chat OS时代,ChatGPT=iOS”。

微博大V木遥也感叹道“ChatGPT推出插件功能可能是近期一系列进展中最令人惊讶和震撼的一个”。最后他发出预言:Python已死。

十年前,当一个人跃跃欲试要给新发布的iPhone写APP的时候,ta必须自己是个非常老练的程序员才行。今天,当你跃跃欲试要给新发布的GPT平台写插件,你只要用自然语言描述你希望实现的效果就行了。 OpenAI的网站上有一个视频(player.vimeo.com/video/810996688?h=b552e96813)展示了如何在几分钟之内完全用自然语言跟GPT交互写一个让AI帮你记住私人todo list的插件。换句话说,这就是(至少作为胶水语言层级的)自然语言编程。

如果这条路能走通,如果这成为行业标准,那么……

Python终于没有存在的意义了。撒花。

添加插件后的ChatGPT真的会杀死Python吗?目前来看还不得而知,但正如云计算基础设施软件公司HashiCorp创始人Mitchell Hashimoto所说,OpenAl设计的插件系统的确足够疯狂:

“我开发过许多插件系统,OpenAl设计的插件系统是我这辈子见过的最疯狂的系统。如果你要给它写插件,你并不是去写这个插件的程序,而是写一个关于插件的描述,只需用自然语言描述,然后GPT来帮你生成这个插件。”

也有网友表示,“Python把GPT推到台前,完成了历史使命。”“人人都是程序员的时代到了,而且是只需要掌握自然语言的程序员。”“利好文科生,能准确用语言文字清晰明了地表达自己的诉求成了第一生产力。”

真安全还是说说而已?

安全成为此次发布被多次提及的关键词。

对于浏览插件,由于ChatGPT使用Bing搜索API从Web检索内容,因此OpenAI也继承了微软在这项工作中的基本原则:1)保证信息来源可靠且真实;2)通过“安全模式”防止检索有问题的内容。这款插件在独立服务中运行,能够保证ChatGPT的浏览活动与基础设施内的其余部分相互分离。

为了尊重内容创作者并遵守网络规范,OpenAI浏览器插件使用的用户代理令牌为ChatGPT-User,并通过配置强调重新所访问网站的robots.txt文件。这偶尔会引发“click failed”问题,表明该插件正遵守目标网站的指示、避免执行抓取操作。此用户代理仅用于代表ChatGPT用户执行直接操作,不会以任何自动方式主动抓取网络内容。OpenAI还发布了IP出口范围,并采取限速措施以避免向目标网站发出过多流量。

OpenAI的浏览插件会显示访问过的网站,并在ChatGPT的回复中引用其来源。由此实现的透明度层可帮助用户验证模型响应的准确性,并回馈内容创作者。

对于代码解释器,OpenAI表示之所以要将模型接入代码解释器,主要是想对执行过程做适当的沙盒处理,以确保AI生成的代码不会在现实场景中产生意外的副作用。OpenAI称在安全环境中执行代码,并通过严格的网络控制来防止外部互联网访问到执行代码。此外,还对每个会话设置了资源限制。

而检索插件允许ChatGPT搜索内容矢量数据库,并将最终结果添加至ChatGPT会话当中。这意味着它不会产生任何外部影响,主要风险只涉及数据授权和隐私。开发人员应确保只将有权使用的内容添加至检索插件,进而在用户的ChatGPT会话中共享。

不过,网友对于OpenAPI的“安全宣传”似乎不太买单。

网友“mk_stjames”表示:

我对此有一些奇怪的感觉。从“傻瓜,当然它没有以任何方式连接到互联网!”到现在都没有一年的时间,变成“好的…所以我们连接到互联网…”

首先是您的API调用,然后是您的chatgpt-jailbreak-turns-into-a-bank-DDOS-attack,然后是“今天它以某种方式执行了Python脚本的数十万线程,该脚本在上午8点31分在纽约证交所导致自1987年以来最大的单日跌幅……”

您可以继续讨论个人责任,所有…用户仍然是用户,对吧。但这开始感觉像是给一群黑猩猩上了膛的手枪。

OpenAI一直在谈论“安全”,但“安全”的全部意思是“好吧,我们不允许任何人允许它拿胖子或残疾人开玩笑,所以我们很好,对吧?!”

当然,也有网友表示:为什么要对安全发牢骚呢?随它去吧!“如果你访问他们的API,这基本上就是他们在做的事情,因为是否使用他们的审核端点取决于你。”不过这位网友也表示:“他们的‘人工智能安全’只是嘴上说说。在前几天,他们有一个bug,你可以看到其他用户的聊天历史!”

参考链接

https://openai.com/blog/chatgpt-plugins

https://news.ycombinator.com/item?id=35277677