最近相信大家都被 ChatGPT 刷屏了,它的爆火大家是有目共睹的,微软的新必应(New Bing) 是结合了比 ChatGPT 更强大的新一代 OpenAI 语言模式,接下来我们一起来“调教”一下新必应(New Bing)吧!
今天会让新必应(New Bing)做以下三件事情:
首先加入候补者计划需要到新必应网站申请,我是在今年2月21日申请的加入新必应(New Bing)的候补者名单,在同年2月24日的早晨已经收到了“欢迎加入 New Bing”的邮件,三天的时间就通过了,这速度比想象中的要快,这让我心情既开心又兴奋。

查看邮件的正文,在正文下方有个按钮,我们一起点击 Start Exploring 按钮来开始探索。

进入到新必应(New Bing)的网页,我们需要点击 Download Microsoft Edge 按钮,以下载 Edge 解锁全部功能。

之后来到 Edge 的下载页面,点击 Download Edge Dev 下载软件,之后便是根据你在用的机器设备选择对应要下载的 Edge 版本了。


安装过程就不叙述了,安装成功后,打开 Edge 浏览器,登录上自己的微软账号以便激活新必应(New Bing)的新功能。

重点来了,在浏览器输入网址 bing.com 即可访问,这便是新必应(New Bing)的搜索界面,非常美观大气!

我们尝试使用其推荐的内容,并点击试试吧查看结果。

结果如下展示,我们来给这个界面区分为三部分,顶部为搜索的内容,可以点击聊天切换为 AI 问答模式。中间区域还是搜索结果的内容展示。右边的区域是新必应(New Bing)给出的部分回答,可以点查看更多展开回答。

我们点击顶部的聊天按钮打开聊天界面,你也可以页面下拉打开聊天界面,下面是 Bing 给出的完整答案内容。

我们让它写一个睡前小故事吧,想让它写什么题材的内容,我们简单描述一下,让其遵循规则。

新必应(New Bing)一次回答有字数限制,如果输出的总文本太长的话,就需要不断让它继续下去,因此我们可以继续要求它简短一下内容。

这个故事我很喜欢,你们觉得怎么样呢?在这儿相信大家也已经看出来了,新必应(New Bing)可以根据上下文来作出回答,你可以像和人一样和它交流,它会一直在话题中心与你对话,这种感觉很美妙。
我们让它为我们生成一个动画特效,要求是使用核心动画来实现效果。

New Bind 生成的完整代码如下所示:
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// 创建一个矩形视图
let rectView = UIView(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
rectView.backgroundColor = .red
rectView.center = view.center
// 添加到主视图
view.addSubview(rectView)
// 创建一个移动动画
let moveAnimation = CABasicAnimation(keyPath: "position.x")
// 设置起始值和结束值
moveAnimation.fromValue = rectView.center.x - 100
moveAnimation.toValue = rectView.center.x + 100
// 设置持续时间和重复次数
moveAnimation.duration = 1.0
moveAnimation.repeatCount = .infinity
// 设置自动反转效果
moveAnimation.autoreverses = true
// 添加到矩形视图的图层上
rectView.layer.add(moveAnimation, forKey: "move")
// 创建一个旋转动画
let rotateAnimation = CABasicAnimation(keyPath: "transform.rotation.z")
// 设置起始值和结束值(以弧度为单位)
rotateAnimation.fromValue = -CGFloat.pi / 4.0
rotateAnimation.toValue = CGFloat.pi / 4.0
// 设置持续时间和重复次数
rotateAnimation.duration = 0.5
rotateAnimation.repeatCount = .infinity
// 设置自动反转效果
rotateAnimation.autoreverses = true
// 添加到矩形视图的图层上
rectView.layer.add(rotateAnimation, forKey: "rotate")
}
}
这段代码到了 Xcode 运行后的结果如下:

尽管代码不够有趣也不够炫酷,但它也是正确运行了,这也让我感到很兴奋。
我们今天让新必应(New Bing)做了三件事情,一是让它制定一份健身计划,二是让它写一篇睡前小故事,三是让它写代码,这三件事情它都做得很好。我们只需要像与人交谈一样提出问题,新必应(New Bing)便会根据我们的问题而进行回答,我们的问题越是详细,新必应(New Bing)就能够更加准确地回答我们想要知道的问题。
今天我让新必应(New Bing)做的事情也并“不高级”,但是我们通过此篇文章也对新必应(New Bing)有了初步的了解,新必应(New Bing)能做的事情还有很多,我们以后再来详讲。
最后,我希望各位读者能够关注我的公众号,一起分享技术的乐趣和价值。感谢大家的支持和关注。我们下篇文章再见!
博文作者:GarveyCalvin
公众号:凡人程序猿
本文版权归作者所有,欢迎转载,但必须保留此段声明,并给出原文链接,谢谢合作!
我正在学习如何使用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
我在开发的Rails3网站的一些搜索功能上遇到了一个小问题。我有一个简单的Post模型,如下所示:classPost我正在使用acts_as_taggable_on来更轻松地向我的帖子添加标签。当我有一个标记为“rails”的帖子并执行以下操作时,一切正常:@posts=Post.tagged_with("rails")问题是,我还想搜索帖子的标题。当我有一篇标题为“Helloworld”并标记为“rails”的帖子时,我希望能够通过搜索“hello”或“rails”来找到这篇帖子。因此,我希望标题列的LIKE语句与acts_as_taggable_on提供的tagged_with方法
我想将html转换为纯文本。不过,我不想只删除标签,我想智能地保留尽可能多的格式。为插入换行符标签,检测段落并格式化它们等。输入非常简单,通常是格式良好的html(不是整个文档,只是一堆内容,通常没有anchor或图像)。我可以将几个正则表达式放在一起,让我达到80%,但我认为可能有一些现有的解决方案更智能。 最佳答案 首先,不要尝试为此使用正则表达式。很有可能你会想出一个脆弱/脆弱的解决方案,它会随着HTML的变化而崩溃,或者很难管理和维护。您可以使用Nokogiri快速解析HTML并提取文本:require'nokogiri'h