为什ChatGPT这么火,他的优势是什么?ChatGPT 也是创业公司和企业家应该已经知道的事情的最佳表达:生成人工智能的淘金热将由开发新颖的、防御性的业务驱动,围绕它的出现方式,而不是引擎盖下的内容。
对于那些在该领域从事大量重点工作的人来说,这可能不是什么秘密,但是当涉及到生成 AI 时,很快就会发现,用户与生成模型和系统的交互方式至少与底层训练和推理同样重要技术。最新的,也是我认为最好的例子,来自 OpenAI 的ChatGPT,它作为免费研究预览发布,任何人都可以在本周试用。(PS:大家想体验一下可以下载这款软件玩玩)

如果您还没有看到围绕 ChatGPT 的热议,它基本上是他们新的 GPT-3.5 自然语言生成技术的实现,但实现方式是您只需在网络浏览器中与它聊天,就好像您在偷懒一样同事或与网站上的客户支持代理互动。

OpenAI 已经凭借其 DALL-E 图像生成技术掀起了波澜,其 GPT 系列在每次连续发布时都引起了人们的关注(偶尔也会引起作者的生存恐惧)。但最新的聊天式迭代似乎扩大了它的吸引力和受众,在某些方面将对话从“哇,本科生将使用它来提交糟糕但可行的学期论文”转变为“哇,这实际上可以帮助我调试代码我打算投入生产。”
到目前为止的例子似乎表明,它实际上在术语纸上做得更好,但在避免 AI 聊天机器人的一些典型陷阱(包括将错误信息作为事实呈现)方面,它仍有工作要做。但显然它的参与度很高,人们对 ChatGPT 的印象似乎比对 GPT-3 的印象更深刻,至少(尽管这部分是因为它是一个新版本,具有改进的核心推理技术以及新的交互范式)。

我自己的例子来说明为什么我认为它如此强大是及时的,如果平凡的话:我要求 ChatGPT 为我提供所有各种神奇宝贝类型的优点和缺点,它提供的正是我一直希望每次我进入 Tera Raid 时谷歌都会提供的东西在新的 Pokémon Scarlet 游戏中,必须尝试记住什么反制什么。
也就是说:请注意,我对我的查询一点也不感兴趣;它尽可能简单,同时仍然清楚我的要求。结果正是我要找的东西——而不是一个列表,如果我愿意投入时间,这些东西可能会帮助我找到我正在寻找的东西。

像 OpenAI 的 ChatGPT 这样的东西最终取代像谷歌这样的搜索引擎的潜力并不是一个新想法,但是 OpenAI 的底层技术的交付是迄今为止最接近于它在一个完全充实的系统中实际工作的方式,它应该有谷歌害怕。
我们使用与InstructGPT相同的方法,使用来自人类反馈的强化学习 (RLHF) 来训练该模型,但数据收集设置略有不同。我们使用监督微调训练了一个初始模型:人类 AI 训练员提供对话,他们在对话中扮演双方——用户和 AI 助手。我们让培训师可以访问模型编写的建议,以帮助他们撰写回复。我们将这个新的对话数据集与 InstructGPT 数据集混合,我们将其转换为对话格式。

为了创建强化学习的奖励模型,我们需要收集比较数据,其中包含两个或多个按质量排序的模型响应。为了收集这些数据,我们收集了 AI 培训师与聊天机器人的对话。我们随机选择了一条模型编写的消息,抽取了几个备选的完成方式,并让 AI 培训师对它们进行排名。使用这些奖励模型,我们可以使用近端策略优化来微调模型。我们对这个过程进行了几次迭代。

限制
ChatGPT 有时会写出看似合理但不正确或荒谬的答案。解决这个问题具有挑战性,因为
(1)在 RL 训练期间,目前没有真实来源;
(2)训练模型更加谨慎导致它拒绝可以正确回答的问题;
(3)监督训练会误导模型,因为理想的答案取决于模型知道什么,而不是人类演示者知道什么。
ChatGPT 对输入措辞的调整或多次尝试相同的提示很敏感。例如,给定一个问题的措辞,模型可以声称不知道答案,但只要稍作改写,就可以正确回答。
该模型通常过于冗长并过度使用某些短语,例如重申它是 OpenAI 训练的语言模型。这些问题源于训练数据的偏差(训练者更喜欢看起来更全面的更长答案)和众所周知的过度优化问题。
理想情况下,当用户提供模棱两可的查询时,模型会提出澄清问题。相反,我们当前的模型通常会猜测用户的意图。
虽然我们已努力使模型拒绝不当请求,但它有时会响应有害指令或表现出有偏见的行为。我们正在使用Moderation API来警告或阻止某些类型的不安全内容,但我们预计它目前会有一些漏报和漏报。我们渴望收集用户反馈,以帮助我们正在进行的改进该系统的工作。
我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div
我有一个Ruby程序,它使用rubyzip压缩XML文件的目录树。gem。我的问题是文件开始变得很重,我想提高压缩级别,因为压缩时间不是问题。我在rubyzipdocumentation中找不到一种为创建的ZIP文件指定压缩级别的方法。有人知道如何更改此设置吗?是否有另一个允许指定压缩级别的Ruby库? 最佳答案 这是我通过查看rubyzip内部创建的代码。level=Zlib::BEST_COMPRESSIONZip::ZipOutputStream.open(zip_file)do|zip|Dir.glob("**/*")d
类classAprivatedeffooputs:fooendpublicdefbarputs:barendprivatedefzimputs:zimendprotecteddefdibputs:dibendendA的实例a=A.new测试a.foorescueputs:faila.barrescueputs:faila.zimrescueputs:faila.dibrescueputs:faila.gazrescueputs:fail测试输出failbarfailfailfail.发送测试[:foo,:bar,:zim,:dib,:gaz].each{|m|a.send(m)resc
很好奇,就使用rubyonrails自动化单元测试而言,你们正在做什么?您是否创建了一个脚本来在cron中运行rake作业并将结果邮寄给您?git中的预提交Hook?只是手动调用?我完全理解测试,但想知道在错误发生之前捕获错误的最佳实践是什么。让我们理所当然地认为测试本身是完美无缺的,并且可以正常工作。下一步是什么以确保他们在正确的时间将可能有害的结果传达给您? 最佳答案 不确定您到底想听什么,但是有几个级别的自动代码库控制:在处理某项功能时,您可以使用类似autotest的内容获得关于哪些有效,哪些无效的即时反馈。要确保您的提
假设我做了一个模块如下:m=Module.newdoclassCendend三个问题:除了对m的引用之外,还有什么方法可以访问C和m中的其他内容?我可以在创建匿名模块后为其命名吗(就像我输入“module...”一样)?如何在使用完匿名模块后将其删除,使其定义的常量不再存在? 最佳答案 三个答案:是的,使用ObjectSpace.此代码使c引用你的类(class)C不引用m:c=nilObjectSpace.each_object{|obj|c=objif(Class===objandobj.name=~/::C$/)}当然这取决于
我正在尝试使用ruby和Savon来使用网络服务。测试服务为http://www.webservicex.net/WS/WSDetails.aspx?WSID=9&CATID=2require'rubygems'require'savon'client=Savon::Client.new"http://www.webservicex.net/stockquote.asmx?WSDL"client.get_quotedo|soap|soap.body={:symbol=>"AAPL"}end返回SOAP异常。检查soap信封,在我看来soap请求没有正确的命名空间。任何人都可以建议我
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t
我想将html转换为纯文本。不过,我不想只删除标签,我想智能地保留尽可能多的格式。为插入换行符标签,检测段落并格式化它们等。输入非常简单,通常是格式良好的html(不是整个文档,只是一堆内容,通常没有anchor或图像)。我可以将几个正则表达式放在一起,让我达到80%,但我认为可能有一些现有的解决方案更智能。 最佳答案 首先,不要尝试为此使用正则表达式。很有可能你会想出一个脆弱/脆弱的解决方案,它会随着HTML的变化而崩溃,或者很难管理和维护。您可以使用Nokogiri快速解析HTML并提取文本:require'nokogiri'h
我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po