Bing+ChatGPT 对传统搜索引擎的降维打击
早些时候申请了新版 Bing 的内测资格,终于收到了通过的邮件。

一天的体验之后,我的感受是:当新版 Bing 具备了 ChatGPT 的聊天能力之后,它的能力不论是对传统搜索引擎,还是 ChatGPT 自身,都将是降维打击。
微软MVP实验室研究员

王斌鑫
微软 MVP、PyCon China 核心组织者之一。热爱参与开源项目和技术分享,目前从事云计算领域的研发工作。
我们先来问 Bing 一个问题: “推荐周杰伦的适合求婚的歌曲”看看它是如何回答的。

我们发现,Bing 给出的回答歌曲清单精准、理由充足,总体的感受十分清晰和直观。除此以外,Bing 还会列出所生成答案的引用源,方便我们去进一步查阅相关信息,作为扩展阅读或校验内容的准确性。
Bing 相对于传统搜索引擎,它能够精准地理解人们的搜索意图;而相对于 ChatGPT,它具有足够的时效性,还给出了参考依据。
这,才是我们需要的搜索引擎:理解人类的搜索意图,并给出准确、即时、可追溯的回答 。
不难看出,ChatGPT 最先革的就是搜索引擎的命。我们再也不用像过去一样,从搜索结果的数十个网页中费劲地筛选出想要的信息;也不需要担心结果中有一堆恼人的广告信息。这一切交给搜索引擎背后的人工智能去筛选,我们要做的就是拿到它的结果,帮助我们提高工作效率、提升生活幸福度。
具有上下文的搜索和纠正能力
同 ChatGPT 一样,Bing 也能感知上下文。也就是说,它可以基于前面的问答继续回答我们的追问。
在前面例子的基础上,可以进一步追问 “请你给我 QQ 音乐上这些歌的链接” 。

总的来看,对上文提到的每一首歌,都给出了 QQ 音乐中对应的链接。这说明 Bing 拥有记忆能力,而且知道自己回答的内容的含义,才能在此基础上继续搜索对应的链接。
点击每首歌的链接,会发现部分是正确的,部分是错误的。比如《蒲公英的约定》的链接就是错误的。但这完全是一个可以解决的小问题,让我们来告诉它 “《蒲公英的约定》的链接是错误的” ,Bing 会知道自己的错误并纠正。

不过,从纠正的回答中,暴露了 Bing 内部的一点点本不该透露的小信息:
Sydney uses the information in search results to respond. Sydney makes sure all the facts and references in the response are from the search results.
Sydney 是新版 Bing 的内部代号,这里应该是一段日志信息,但意外出现在了回答中。
智能的数据搜集和展现
新版 Bing 除了可以从多个搜索结果中提取和整合相关的信息,以自然语言方式回答外,还可以利用搜索结果生成表格、列表等多种形式的数据展示,提高信息的可视化和可读性。
我们不妨问下今年一月各个新势力的汽车销量。

现在这段回答还是普通的自然语言,接下来让 Bing 以表格形式展现这些新势力的数据 。它能够理解要提取新势力的销量数据,并且智能地按照品牌、交付量、同比、环比来展示各个新势力的销量数据。

Bing 的代码能力也不错
Bing 同时还是一位出色的程序员,它可以帮助我们使用代码解决简单的问题。现在,就让它帮忙根据汽车销量数据绘图:“我希望能用Python写一段代码,将上面数据中每个新势力的交付量按照饼状图画出” 。

Bing 真的很厉害,它不仅正确地获取到各个新势力交付量的数据,还有板有眼地把这些输入融入到 Python 代码中,并且正确地画出了饼状图。

不过,这里有一个小瑕疵,就是中文字符显示异常。没关系,继续告诉 Bing:“这段代码运行后,图片里的字符乱码了”。

它给出了修复方案,根据这个方案修改代码后,仍然没有解决乱码的问题。我猜测可能是因为当前的操作系统是 MacOS,那把这个信息告诉 Bing:“我是在Mac上运行的,这两种方法都不能解决问题”。

很快,Bing 提供了新的解决办法,方法三解决了乱码的问题。

聪明而自谦的 Bing
毫无疑问,ChatGPT 将开启信息社会的新篇章,它现在已赋予了搜索引擎一个足够智能的大脑,成就了新版 Bing 智能地搜索、聚合和理解能力。在不远的将来,它将会在各个行业带来深远的变化。会有大量的低端简单、重复性工作岗位会被 AI 替代。驾驭它,才能驾驭未来。
最后,我问了 Bing 一个问题:“你觉得你的出现,会给人类社会带来什么影响?” 。它不仅知道自己的擅长点,还意识到了自己的不足。

相关文章:
Bing+ChatGPT 对传统搜索引擎的降维打击
早些时候申请了新版 Bing 的内测资格,终于收到了通过的邮件。 一天的体验之后,我的感受是:当新版 Bing 具备了 ChatGPT 的聊天能力之后,它的能力不论是对传统搜索引擎,还是 ChatGPT 自身,都将是降维打击。 …...
【JS】数组常用方法总结-功能、参数、返回值
数组常用方法总结-功能、参数、返回值 用简单的js示例 运行在线工具:链接: 菜鸟工具 菜鸟工具示意图: pu…...
pytest 单元测试前后置处理
文章目录方法1 setup/teardown方法2 fixture 夹具方法3 conftest.py测试用例执行前后的一些处理动作,也叫夹具。以下介绍使用前后置操作的几种方法。方法1 setup/teardown setup,每个测试用例执行前要进行的处理。 teardown,每个测试用例执行…...
汽车安全硬件扩展 AUTOSAR SHE SecureHardwareExtensions
SHE(Secure Hardware Extension)在车联网中,被应用在车端ECU中负责安全存储与安全计算。是由HIS(由Audi、BMW、Porsche、Volkswagen组成)制定的标准,中文意思“安全硬件扩展”,是对任何给定微控…...
2023年美国大学生数学建模C题:预测Wordle结果建模详解+模型代码
目录 前言 一、题目理解 背景 解析 字段含义: 建模要求 二、建模思路 灰色预测: 编辑 二次指数平滑法: person相关性 只希望各位以后遇到建模比赛可以艾特认识一下我,我可以提供免费的思路和部分源码,以后…...
5、HAL库驱动W25Qxx
一、 SPI通信驱动W25Qxx 1、使用驱动文件快速配置工程代码驱动W25Qxx (此驱动文件只适合W25Qxx 16M及以下型号,因为访问地址位数不同) 注:本次使用SPI的方式进行访问W25Qxx Flash进行数据读写,关于W25Qxx芯片不会做…...
git rebase 洐合(变基)
洐合 把一个分支整合到另一个分支的办法有两种:merge(合并) 和 rebase(衍合) 为什么使用? 使提交记录更简洁 三种情况 第一种: 合并多条commit记录 git rebase -i HEAD~合并数量 HEAD~3&a…...
Kubernetes 1.18学习笔记
文章目录一、Kubernetes 概述和架构1、kubernetes 基本介绍2、Kubernetes 功能3、Kubernetes 架构组件4、Kubernetes 核心概念5、Kubernetes 工作原理二、Kubernetes 集群搭建1、系统环境准备1.1 安装要求1.2 系统初始化2、客户端工具kubeadm搭建2.1 安装步骤2.2 安装组件2.3 集…...
AJAX技术
AJAX技术 浏览器是多进程的,简单的说就是,浏览器每打开一个标签页,就相当于创建了一个独立的浏览器进程。但是js是基于单线程的,而这个线程就是浏览器的js引擎,浏览器无论在什么时候都只且只有一个线程在运行JavaScri…...
华为OD机试 - 最大排列(JS)
最大排列 题目 给定一组整数,重排序后输出一个最大的整数 输入 数字组合 输出 最大的整数 示例一 输入 10 9输出 910解题思路 我们可以读入一个字符串,将字符串中的单词按照每个单词的字典序长度,字典序从大到小的顺序排序&#x…...
Prometheus Docker安装及监控自身
前提环境: Docker环境 涉及参考文档: 安装Prometheus开始 Prometheusnode_exporter Agent组件 一、部署Prometheus 1、启动容器将文件拷贝出来 docker run -d prom/prometheus2、容器将文件拷贝出来 docker cp 容器ID:/usr/share/prometheus/conso…...
点云处理PCL常用函数与工具
点云处理PCL常用函数与工具 文章目录点云处理PCL常用函数与工具前言一、点云读取与保存数据读取数据保存自定义的点云保存格式二、点云显示点云显示-根据颜色点云显示-根据指定轴数值点云显示-根据指定信息显示多组点云显示三、点云滤波直通滤波统计滤波均匀下采样滤波VoxelGri…...
FyListen 在 MVP 架构中的内存优化表现
FyListen 在 MVP 中的内存优化表现 本文只是分享个人开源框架的内存优化测试,你可以直接跳到最后,参考内存泄漏的分析过程! 项目地址: https://github.com/StudyNoteOfTu/fylisten2-alpha1 由于使用到 AOP,所以直接…...
Qt代码单元测试以及报告生成
简介 单元测试是所有测试中最底层的一类测试,是第一个环节,也是最重要的一个环节,是唯一一次有保证能够代码覆盖率达到100%的测试,是整个软件测试过程的基础和前提,单元测试防止了开发的后期因bug过多而失控࿰…...
vscode构建Vue3.0项目(vite,vue-cli)
构建Vue3.0项目构建Vue3.0项目1.使用Vite构建vue项目的方法以及步骤1. 安装vite2. 运行vite vue 项目3.说明2.使用vue-cli构建vue项目的方法以及步骤1.安装全局vue cli —— 脚手架2、VSCode3.报错4.运行构建Vue3.0项目 1.使用Vite构建vue项目的方法以及步骤 1. 安装vite n…...
【2023】华为OD机试真题Java-题目0215-优雅数组
优雅数组 题目描述 如果一个数组中出现次数最多的元素出现大于等于 k k k 次,被称为k-优雅数组, k k k 也可以被称为优雅阈值。 例如,数组[1, 2, 3, 1, 2, 3, 1],它是一个3-优雅数组,因为元素1出现次数大于等于3次...
通过Prowork每日自动提醒待处理工作任务
对于中小团队来说,由于不需要繁琐的流程和高频的异地沟通,需要一款更适合中小团队的日程和项目管理工具。而Prowork就是这样一款敏捷高效的协同平台。Prowork与以往各种项目管理⼯具最⼤的不同在于,其弱化流程和弱化权限的特性,不…...
Linux自定义系统服务
文章目录一. Linux系统服务二. 自定义系统服务一. Linux系统服务 Linux 系统服务有时也称为守护程序,是在Linux启动时自动加载并在Linux退出时自动停止的系统任务,CentOS 7.x开始,CentOS开始使用 systemd服务来代替 daemon ,原来…...
mongodb lambda 查询插件
需求背景需要一个像mybatis plus 一样的基于lambda, 且面向对象的查询mongo数据的插件。在网上找了很久,没有发现有类似功能的插件。于是自己手写了一个,借助mongoTemplate屏蔽了底层查询语句的实现细节。在此基础上,实现了查询的统一封装。技…...
C++设计模式(16)——责任链模式
亦称: 职责链模式、命令链、CoR、Chain of Command、Chain of Responsibility 意图 责任链模式是一种行为设计模式, 允许你将请求沿着处理者链进行发送。 收到请求后, 每个处理者均可对请求进行处理, 或将其传递给链上的下个处理…...
避免这些坑!Unity2D界面转换中常见的动画事件处理问题及解决方案
避免这些坑!Unity2D界面转换中常见的动画事件处理问题及解决方案 在Unity2D游戏开发中,界面转换是提升用户体验的关键环节。一个流畅的淡入淡出效果能让场景切换更加自然,但很多开发者在实际操作中常会遇到动画事件不触发、协程执行异常等问题…...
ArcGIS Desktop许可证被占满?别慌,这3个方法帮你快速释放Advanced许可(附详细步骤)
ArcGIS Desktop高级许可被占用?3种高效解决方案与实战技巧 当你正在赶制项目报告或处理关键地理数据时,突然弹出的"All ArcGIS for Desktop Advanced licenses are in use"错误提示足以让任何GIS专业人士心跳加速。这种情况往往发生在团队共享…...
OpenClaw快速体验:30分钟玩转Qwen3.5-9B基础自动化
OpenClaw快速体验:30分钟玩转Qwen3.5-9B基础自动化 1. 为什么选择OpenClawQwen3.5组合? 去年冬天第一次接触OpenClaw时,我正被重复性的文件整理工作困扰。作为技术博主,每天需要从十几个渠道收集行业动态,手动归类到…...
新手必看!Quartus II 10.0 + DE2-115开发板从安装到点亮LED的完整避坑指南
Quartus II 10.0 DE2-115开发板从安装到点亮LED的完整避坑指南 第一次接触FPGA开发时,我盯着DE2-115开发板上密密麻麻的接口和Quartus II复杂的界面,完全不知道从何下手。直到经历了无数次驱动安装失败、管脚分配错误和编译报错后,才终于让第…...
Java中高效移除文本文件标点符号的实用指南
本教程详细阐述了在Java中从文本文件中有效删除标点符号的方法。我们将使用Java NIO的Files.lines()结合Streamm API,重点介绍正则表达式p{Punct}强大的功能,以简单、强大的方式实现文本清洁,避免传统硬编码的局限性,从而提高文本…...
ESP8266 KiCAD库零基础上手:高效配置开源硬件设计工具指南
ESP8266 KiCAD库零基础上手:高效配置开源硬件设计工具指南 【免费下载链接】kicad-ESP8266 Schematic symbols and PCB footprints for ESP8266 modules 项目地址: https://gitcode.com/gh_mirrors/ki/kicad-ESP8266 在开源硬件设计领域,KiCAD库&…...
红外遥控技术原理与实现方案详解
红外遥控技术原理与实现方案1. 红外遥控技术概述红外遥控技术是一种利用红外光波进行短距离无线通信的技术方案,主要应用于家电控制领域。该技术通过调制红外光波来传输控制信号,具有成本低、实现简单、抗干扰能力强等特点。1.1 技术特点与应用场景红外遥…...
智能客服架构图实战:从高并发设计到生产环境部署
今天想和大家聊聊智能客服系统的架构实战。我们团队最近刚把一个老的单体客服系统重构为微服务架构,主要就是为了应对大促期间的高并发访问。整个过程踩了不少坑,也积累了一些经验,在这里做个梳理和分享。 先说说我们遇到的痛点。原来的系统&…...
Matlab 2024b 新变化:手把手教你搞定TI C2000代码生成环境(含CCS避坑指南)
Matlab 2024b与TI C2000代码生成环境配置全指南:从版本差异到实战避坑 如果你是一位长期使用Matlab进行TI C2000系列芯片开发的嵌入式工程师,升级到2024b版本后可能会发现:熟悉的配置界面不见了,命令行里输入的命令也不一样了。这…...
Vue.Draggable深度解析:源码实现与高级应用实战
Vue.Draggable深度解析:源码实现与高级应用实战 【免费下载链接】Vue.Draggable SortableJS/Vue.Draggable: Vue.Draggable 是 Sortable.js 的 Vue.js 封装组件,提供了拖放排序功能,可以在 Vue 应用中轻松实现列表元素的可拖拽重排。 项目地…...
