公众号关注 “GitHubDaily”
设为 “星标”,每天带你逛 GitHub!

自 ChatGPT 诞生以来,技术圈内有不少开发者基于它的功能实现了不少优秀的产品,现如今在 GitHub 上新增的 ChatGPT 项目更是多不胜数。
为了能够更加灵活的扩展 ChatGPT 的现有功能,OpenAI 正式上线了以安全为核心的 ChatGPT 插件系统,在保障数据安全性的前提下,让 ChatGPT 功能再度提升一整个数量级!
其实,在 ChatGPT 发布没多久后,OpenAI 便收到了来自多家企业与开发者的诉求,希望团队能开放插件系统,以便自己能将产品对接到 ChatGPT 上。
于是,那些用户受众较多的产品,如 Shopify、Slack、Speak、Wolfram 和 Zapier 等公司,OpenAI 提前给他们开放了插件系统的开发权限。
目前,基于他们自有产品所构建的插件,已经上线到 ChatGPT。
这些插件涵盖了实时信息检索、订机票、在线点餐、交通导航、企业办公、流程优化等功能。
对于自家的插件系统,OpenAI 自然也得做出表率,所以,这次他们也带来两款颇有诚意的插件。
1、Web 浏览插件
ChatGPT 常令人诟病的一个问题,就是它的模型训练数据,迄今为止用的还是 2021 年的老数据。
对于当下这个信息大爆炸时代,相隔两小时,消息都有可能滞后,更别说相隔两年了。
本次的「Web 浏览」插件,基本上就是为了解决这个问题而生。
该插件会利用 New Bing 的 API,在互联网上搜索问题的相关信息,然后给出具体答案。
下面这个视频,主要演示了几个功能:
ChatGPT 检索有关奥斯卡颁奖典礼的最新信息;
通过答案中的索引,跳转到详情链接;
ChatGPT 会根据提问内容,判断是否需要调用 Bing 接口来获取信息。
需要注意的一点是,这个插件只支持 GET 请求,不支持 POST,也就是说,它只能用于获取数据,不能用于发送。
这也是 OpenAI 从安全角度出发,做的一些限制。
另外,那些做了爬虫限制,拥有 robots.txt 文件的站点,OpenAI 也会遵守约定,避开那些禁止抓取的内容。
因此在使用时,出现如下报错,属于正常现象。

相信这个插件装上后,Bing Chat 的使用频率会下降很多...
2、代码解释器
昨天推出的 GitHub Copilot X,其编程能力大家都有目共睹了。在技术编程领域,AI 能提供的协助以及应用前景无限。
因此,本次 OpenAI 也开放了一个编程插件:「代码解释器」,该插件用到了尚处于实验阶段的 ChatGPT 模型。
该模型被放置在一个受防火墙保护的沙盒中,并会分配少量的临时磁盘空间。
在用户进行对话交流时,代码会保存在持续会话中,交流不中断的情况下,可随时调用。
下面这个视频,主要演示了三部分内容:
通过函数来生成与修改图表;
解析 CSV 文件内容,并获取、分析表格数据、生成可视化图表;
上传图片,动态调整图片大小、灰度、色调,并生成下载链接。
在 OpenAI 的最初研究中,发现这款代码解释器有着以下几点比较好用的功能:
解决定量和定性的数学问题;
进行数据分析和可视化;
快速转换文件格式。
随着使用人群的增加,这款代码解释器的更多用途功能会被慢慢挖掘出来。
看完 OpenAI 的两个插件,你是否也想尝试自己弄一个?
别急,这个使用权限和开发权限不是人人都有的。
你需要先加入 waitlist 申请,然后等待官方通过。开发者和 ChatGPT Plus 会员通过机率会大一点。
在申请时,最好填上自己的 GitHub 地址,我猜想这应该也是 OpenAI 团队用于判断开发能力的标准之一。
申请地址:https://openai.com/waitlist/plugins
此外,OpenAI 对插件系统的安全也是极为看重。
除了设置沙盒,保障隔离之外,OpenAI 还联合内外部人员进行了多次红队演练,确保插件开发者不会进行 prompt 注入、发送诈骗和垃圾邮件、绕过插件防御系统来安装后门程序等行为。
红队演练是一种模拟攻击的安全评估方法,由一支独立的团队(红队)针对特定目标进行计划、实施攻击,以发现现有系统的安全漏洞和潜在风险,并提供改进建议。
如果你足够幸运,拿到了插件权限。
在动手开发插件之前,不妨先看下 OpenAI 在 GitHub 最新开源的项目:Retrieval。
该项目是一个简单的 ChatGPT 插件 Demo,可对个人或组织文档进行语义搜索和检索。通过提问,便能从数据源(如文件、笔记或电子邮件)中获取相关的文档内容。
下面这个视频,展示了该插件的具体用例:通过提问来调取 2018-2022 年联合国的报告内容,并输出为表格。
GitHub:https://github.com/openai/chatgpt-retrieval-plugin
通过这个 Demo,我们可以先大致了解 ChatGPT 插件的文件结构、API 调用方式,以及跟 ChatGPT 的交互流程。
随着新插件系统的上线,未来 ChatGPT 的功能会变得愈加丰富,用户也不再需要到多个 App 之间来回切换。
对于开发者来说,后续 ChatGPT 插件若打通付费选项,兴许也是一个不错的变现渠道。
从大方向看,ChatGPT 插件系统的上线,将如同早期 iPhone 开放 App Store 一般,OpenAI 正在悄然建立起自己的 AI 生态帝国。
文中所提到的所有开源项目与工具,已收录至 GitHubDaily 的开源项目列表中。
该列表包含了 GitHub 上诸多高质量、有趣实用的开源技术教程、开发者工具、编程网站等内容。
从 2015 年至今,累积分享 3500+ 个开源项目,有需要的,可访问下方 GitHub 地址或点击文末「阅读原文」自取:
GitHub:https://github.com/GitHubDaily/GitHubDaily

好了,今天的分享到此结束,感谢大家抽空阅读,我们下期再见,Respect!
在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/
我对最新版本的Rails有疑问。我创建了一个新应用程序(railsnewMyProject),但我没有脚本/生成,只有脚本/rails,当我输入ruby./script/railsgeneratepluginmy_plugin"Couldnotfindgeneratorplugin.".你知道如何生成插件模板吗?没有这个命令可以创建插件吗?PS:我正在使用Rails3.2.1和ruby1.8.7[universal-darwin11.0] 最佳答案 随着Rails3.2.0的发布,插件生成器已经被移除。查看变更日志here.现在
英文版英文链接关注公众号在“亚特兰蒂斯的回声”中踏上一段难忘的冒险之旅,深入未知的海洋深处。足智多谋的考古学家AriaSeaborne偶然发现了一件古代神器,揭示了一张通往失落之城亚特兰蒂斯的隐藏地图。在她神秘的导师内森·兰登教授的指导和勇敢的冒险家亚历克斯·默瑟的帮助下,阿丽亚开始了一段危险的旅程,以揭开这座传说中城市的真相。他们的冒险之旅带领他们穿越险恶的大海、神秘的岛屿和充满陷阱和谜语的致命迷宫。随着Aria潜在的魔法能力的觉醒,她被睿智勇敢的QueenNeria的幻象所指引,她让她为即将到来的挑战做好准备。三人组揭开亚特兰蒂斯令人惊叹的隐藏文明,并了解到邪恶的巫师马拉卡勋爵试图利用其古
电脑0x0000001A蓝屏错误怎么U盘重装系统教学分享。有用户电脑开机之后遇到了系统蓝屏的情况。系统蓝屏问题很多时候都是系统bug,只有通过重装系统来进行解决。那么蓝屏问题如何通过U盘重装新系统来解决呢?来看看以下的详细操作方法教学吧。 准备工作: 1、U盘一个(尽量使用8G以上的U盘)。 2、一台正常联网可使用的电脑。 3、ghost或ISO系统镜像文件(Win10系统下载_Win10专业版_windows10正式版下载-系统之家)。 4、在本页面下载U盘启动盘制作工具:系统之家U盘启动工具。 U盘启动盘制作步骤: 注意:制作期间,U盘会被格式化,因此U盘中的重要文件请注
在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList()Obt
需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc
您认为可以作为插件很好地存在于您的Rails应用程序中必须实现的哪些行为?您过去曾搜索过哪些插件功能但找不到?哪些现有的Rails插件可以改进或扩展,如何改进或扩展? 最佳答案 我希望在管理界面中看到一个引擎插件,它提供了应用程序中所有模型的仪表板摘要,以及可配置的事件图表。 关于ruby-on-rails-您希望看到哪些Rails插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questio
因为我现在正在做一些时间测量,我想知道是否可以在不使用Benchmark类或命令行实用程序time的情况下测量用户时间或系统时间。使用Time类只显示挂钟时间,而不显示系统和用户时间,但是我正在寻找具有相同灵active的解决方案,例如time=TimeUtility.now#somecodeuser,system,real=TimeUtility.now-time原因是我有点不喜欢Benchmark,因为它不能只返回数字(编辑:我错了-它可以。请参阅下面的答案。)。当然,我可以解析输出,但感觉不对。*NIX系统的time实用程序也应该可以解决我的问题,但我想知道是否已经在Ruby中实
在Ruby中,以毫秒为单位获取自纪元(1970)以来的当前系统时间的正确方法是什么?我试过了Time.now.to_i,好像不是我想要的结果。我需要结果显示毫秒并且使用long类型,而不是float或double。 最佳答案 (Time.now.to_f*1000).to_iTime.now.to_f显示包含十进制数字的时间。要获得毫秒数,只需将时间乘以1000。 关于ruby-以毫秒为单位获取当前系统时间,我们在StackOverflow上找到一个类似的问题:
我们正在使用Vagrant进行部署,我们最终希望将此集群部署在Rackspace上。vagrant-rackspace插件是一个自然的选择,但它有一些错误,这些错误未包含在最新的0.1.1版本中(notablythatvagrantprovisiondoesn'twork)。我已经在我的personalfork中解决了这个问题通过合并其他人的工作来对存储库进行改造。是否可以从github安装vagrant插件?显而易见的事情没有奏效:[unix]$vagrantplugininstallvagrant-rackspace--plugin-sourcehttps://github.com