当前位置: 首页 > news >正文

对话谷歌首席技术官肖恩,搜索引擎的里程碑,来看看搜索引擎界的大哥Algolia的“快、准、狠”突围关键

原创 | 文 BFT机器人 

图片

人物背景

Character Background

Sean Mullaney是Algolia(端到端人工智能搜索和发现平台)的首席技术官,也是前 Stripe和谷歌高管,拥有扩展工程组织、开发人工智能驱动的搜索和发现工具以及在全球范围内发展API优先解决方案的背景。

在Algolia,他负责监督仅次于谷歌的第二大搜索引擎背后的技术,该引擎每年的搜索量超过1.5万亿次。最近,他领导公司推出了AlgoliaNuralSearc一一世界上最快的、超可扩展且经济高效的矢量和关键字搜索API。

图片

兴趣萌芽

Budding Interests

采访者:计算机科学最初吸引你的地方是什么?

Sean Mullaney:我10岁的时候,父母给家里买了第一台电脑。我想做的第一件事就是弄清楚如何编写一款我从书上抄下来的文字冒险游戏。几年后,我开始学习 c++,但作为一个刚刚开始探索计算机科学的青少年,对于设计和制作电脑游戏的兴趣还是比较大。

经验历程

Experience History

采访者:你在谷歌工作了7年多,在那里你帮助建立并领导了战略、运营、大数据和机器学习方面的团队。你最喜欢的项目是什么?你从这个经历中学到了什么?

Sean Mullaney我们弄清楚了如何利用我们拥有的关于广告商如何使用我们的产品来帮助销售团队的大数据。我们编写开发的自定义规则(后来更复杂的神经网络)来预测应该在什么时闻用什么产品接触哪些客户,从而最大限度地提高销售人员的时间并带来可观的收入。谷歌上有超过100万的广告商,这个工具极大地帮助销售团队在大海捞针。

Algolia的存在价值

Algolia Existence Value

采访者:在最近的DevBit总结中,你描述了Algolia的目的是让用户能够索引世界并将内容运转起来,能详细解释一下这句话是什么意思吗?

Sean Mullaney:最终,我们希望帮助我们的客户从他们的数据中获得价值。互联网创造了大量的内容和电子商务产品,虽然这一发展是一个重要的里程碑,但现在大量的信息意味着,作为用户,找到你真正想要的东西比以往任何时候都要困难。然而,当搜索和发现由人工智能驱动时,可以智能地访问不断增长的内容列表,并将其付诸行动,真正帮助用户,而不仅仅是压倒他们。

NeuralSearch技术介绍

Technical Introduction

采访者:2022年9月,Search.io及其专有旗舰产品NeuralSearch™被Algolia收购,您能讨论一下这项搜索技术具体是什么吗?

Sean Mullaney简而言之,Algolia NeuralSearch将关键字匹配与基于向量的自然语言处理集成在一个API中,这是业界首创。该解决方案结合了我们专有的首创神经散列技术,使矢量的使用可扩展,并且使用成本效益提高90%——这是其他人工智能公司(包括 ChatGPT)面临的问题。这款突破性产品真正令人兴奋的是,它使真正的人工智能搜索可扩展到企业级组织。

新技术还允许零售商等客户理解并提供与查询相匹配的内容,这些查询通常过于会话化,无法提供准确或任何结果(被认为是长尾)。这些内容占当前网站搜索量的55%。作为唯一一个将人工智能应用于查询理解、检索和排名的端到端人工智能搜索解决方案,,NeuralSearch真正理解这些查询,并将错失的机会转化为收入。

采访者:除了Neuralsearch™之外,还使用了哪些其他机器学习方法?

我们将人工智能整合到三个主要功能中一一查询理解、查询检索和结果排序。我们在Algolia称之为人工智能搜索三明治:

查询理解Alqolia的高级自然语言理解(NLU)和AI驱动的矢量搜索提供自由形式的自然语言表达理解和AI驱动的查询分类,可准备和构建用于分析的查询。此外,基于用户反馈的自适应学习可以对意图理解进行微调。

检索然后检索最相关的结果,并从最相关到最不相关进行排序。检索过程使用相同的索引将神经散列结果与关键字进行合并,以方便检索和排序。这种方法解决了“空结果”问题,并显著提高了点击位置和点击率。在搜索和发现领域中没有其他搜索平台能够提供这种强大的功能。

排名最后,Algolia的人工智能重新排名将最好的结果推到顶部,该排名考虑了搜索查询附带的许多信号(包括精确的关键字匹配分数、上下文个性化配置文件、观察到的受欢迎程度、项目的数量、语义匹配分数等)并学习达到最大的相关性。

此外,随着索引的变化、新产品的添加、新内容的上传,或者术语的新含义,人工智能驱动的AlgoliaNeuralSearch产品将自动学习和调整。它不需要任何额外的人员统计或人工操作,它会根据查询或搜索短语自动匹配关键字或概念(可能是两者的混合)。这使搜索处于自动驾驶状态。

Algoia的成功关键

keys To Success

采访者:Algolia最近将其免费计划从提供1万条记录增加到100条记录,这背后的想法是什么,市场反应如何?

Sean Mullaney:我们选择通过引入两个新的面向开发人员的计划来改进Algolia的定价和包装,使其更加适合开发人员:一个是免费的“构建”计划,一个是以实惠的价格提供轻松可扩展性的“增长”计划。

新的Build计划将开发人员可以在Algoli中存储的免费记录数量从1玩条增加到现在的 100万条记录。这意味着开发人员现在可以在Algolia中建立索引的免费记录数量增加了 100倍。此外,Algolia将其Grow计划中的搜索请求成本削减了50%,将记录成本削减了60%。

我们更新的“构建”定价计划背后的想法是让开发者免费访问其人工智能搜索和发现平台的全部功能。当开发人员准备扩展其应用程序时,“增长”计划使开发人员能够为实时生产设置提供更适合开发人员的基于使用的定价。

这里需要注意的一点是,任何设计师、创建者或构建者(无论他们是临时的还是完全投入的软件工程师)都可以快速轻松地访问需要的所有工具、文档、示例代码、教育内容和跨平台集成功能,以便开始管理他们的数据、构建搜索前端、配置分析等等(所有这些都是免费的)。此外,他们还可以立即访问拥有500多万构建者组成的不断增长的开发人员社区。

个性化神器

CORPORATE CULTURE

采访者:你能讨论一下他们提供的搜索个性化工具吗?

Sean Mullaney:Algolia为公司提供了多种搜索个性化工具,帮助他们利用数据更好地改进推荐,包括不同类型的推荐和利用数据实际驱动这些推荐的独特方法。

其中的几个例子包括:

趋势:建议其他流行趋势并与客户进行的搜索相关的项目。

基于评级:人们想希望购买评分最高的产品。

个性化:根据您上次购买的产品、浏览历史、位置或其他因素,我们推荐这些产品。

这些数据驱动的方法可以根据客户与产品的互动方式,帮助快速增强和改善结果,所以更有可能推荐那些真正转化最好的产品。

神经散列的神辅助

Divine Assistance

采访者:你将Algolia描述为世界上最具扩展性的混合人工智能搜索引擎。Algolia是如何设计得如此高效的?

Sean Mullaney:这一切都回到了神经散列。这和尖端的解决方案可以压缩并显著加快了每个查询的速度。计算散列相似度比计算标准向量相似度要快得多,并且可以在几号秒内返回结果。

神经散列代表了将人工智能检索应用于各种各样的生产中,结合人工智能查询处理和重新排名,有望释放人工智能现场搜索的全部力量。在Algolia取得专有突破之前,基于矢量的搜索计算成本太高,无法在生产中运行。

我最想关注的部分是三明治中的肉:检索。之所以说我们是唯一真正的端到端AI搜索引警,是因为在搜索行业的幕后,一直有一场将AI添加到检索中的斗争。信息检索是一个极其复杂的过程,而大规模掌握高性能、经济高效的AI检索则更为复杂。我们通过突破性的神经散列技术掌握了它。

图片

读者感悟:

人工智能技术在随着社会的需求变化不同而不断创新,伴随着社会架构和经济的发展,极大的促进了社会的进步和经济的发展。而人工智能搜索发展至今,技术在不断成熟完善,肖恩作为人工智能搜索重要技术人员,他现如今所在的公司Algolia,还在推出新的人工智能搜索技术,实现扩展到了企业组织上这一突破,让企业发展更加高效。相信在不久的将来人工智能搜索会惠及到人类社会的方方面面。

END

作者 | 春花

排版 | 春花

审核 | 猫

若您对该文章内容有任何疑问,请于我们联系,将及时回应。如果想要了解更多的前沿资讯,记得点赞关注哦~

相关文章:

对话谷歌首席技术官肖恩,搜索引擎的里程碑,来看看搜索引擎界的大哥Algolia的“快、准、狠”突围关键

原创 | 文 BFT机器人 人物背景 Character Background Sean Mullaney是Algolia(端到端人工智能搜索和发现平台)的首席技术官,也是前 Stripe和谷歌高管,拥有扩展工程组织、开发人工智能驱动的搜索和发现工具以及在全球范围内发展A…...

DP读书:鲲鹏处理器 架构与编程(十二)鲲鹏软件实战案例

10min速通了解鲲鹏软件实战案例 云服务器源码移植与编译配置云服务器Porting Advisor代码移植搭建交叉编译环境x86云服务器交叉编译 OpenSSL鲲鹏云服务器上编译 OpenSSL Docker的安装与应用安装DockerDocker运行与验证Docker常用命令卸载Docker安装适配鲲鹏架构的Docker镜像 KV…...

前端 -- 基础 VSCode 工具生成骨架标签新增代码 解释详解

目录 文档类型声明标签 Lang 语言种类 字符集 文档类型声明标签 <!DOCTYPE> 文档类型声明&#xff0c;作用就是告诉浏览器 当前的页面是 使用哪种 HTML 版本 来显示的网页 HTML 版本也很多呀 &#xff0c;比如 &#xff1a; HTML5 ,HTML4&#xff0c;XHTML 等…...

爬虫逆向实战(二十三)--某准网数据

一、数据接口分析 主页地址&#xff1a;某准网 1、抓包 通过抓包可以发现数据接口是api_to/search/company_v2.json 2、判断是否有加密参数 请求参数是否加密&#xff1f; 通过查看“载荷”模块可以发现b参数和kiv参数是加密参数 请求头是否加密&#xff1f; 无响应是否加…...

ruoyi--数据权限

这篇文章我先和大家分析一下 RuoYi-Vue 脚手架中 DataScope 注解的实现原理&#xff0c;在 TienChin 项目视频中到时候还会有深入讲解。 1. 思路分析 首先我们先来捋一捋这里的权限实现的思路。 DataScope 注解处理的内容叫做数据权限&#xff0c;就是说你这个用户登录后能够…...

快速开发平台是什么?和传统开发平台相比有哪些区别?

本文可以从【快速开发平台的价值、和传统平台的区别、使用感受】三个方面来说明。 首先&#xff0c;我们要清楚快速开发平台是什么&#xff1a; 快速开发平台也称为低代码或无代码平台&#xff0c;旨在通过可视化工具、拖放式界面和预构建组件&#xff0c;使应用程序的开发过…...

Android基于JNI的Java与C++互调

java调用C++: #include <jni.h> //导出c函数格式 extern "C" JNIEXPORT //供JNI调用 JNICALL 函数名格式 Java_包名_类名_函数名(包名.替换为_) Java_com_example_getapplist_MainActivity_stringFromJNI 包名:com_example_getapplist 类名:MainActi…...

【算法与数据结构】513、LeetCode找树左下角的值

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;这道题用层序遍历来做比较简单&#xff0c;最底层最左边节点就是层序遍历当中最底层元素容器的第一个值…...

React——组件缓存 react-activation

1、安装依赖 npm i -S react-activation 2、包裹根组件 import { AliveScope } from "react-activation"<AliveScope><App /> </AliveScope> 3、缓存组件 import { KeepAlive } from "react-activation"export default () > {co…...

EV代码签名证书是什么?

在数字世界中&#xff0c;很多软件和应用都需要进行代码签名&#xff0c;以确保其来源可靠和安全&#xff0c;EV代码签名证书恰好都能做到&#xff0c;那么EV代码签名证书是什么&#xff1f;它有什么功能特点呢&#xff1f;下面的内容可以给到答案。 EV代码签名证书是什么&…...

融媒行业落地客户旅程编排,详解数字化用户运营实战

移动互联网时代是流量红利的时代&#xff0c;企业常用低成本的方式进行获客&#xff0c;“增长黑客”的概念大范围传播。与此同时&#xff0c;机构媒体受到传播环境的影响&#xff0c;也开始启动全行业的媒体融合转型。在此背景下&#xff0c;2015 年神策数据成立&#xff0c;核…...

PDF制作成翻页电子书

在日常工作中&#xff0c;大部分人使用的都是PDF文档发送给客户&#xff0c;但是PDF文档通常是静态的&#xff0c;缺乏交互性和视觉吸引力。那你有没有想过把它转换成翻页的电子书呢&#xff1f; 小编将告诉你操作步骤&#xff0c;非常简单 1.搜索FLBOOK在线制作电子杂志平台 …...

多线程

1. 线程池 1.1 线程状态介绍 当线程被创建并启动以后&#xff0c;它既不是一启动就进入了执行状态&#xff0c;也不是一直处于执行状态。线程对象在不同的时期有不同的状态。那么Java中的线程存在哪几种状态呢&#xff1f;Java中的线程 状态被定义在了java.lang.Thread.Stat…...

BingChat与ChatGPT比较,哪个聊天机器人能让你获益更多?

人工智能领域的最新进展为普通人创造新的收入来源提供了更多机会。今年早些时候&#xff0c;微软对OpenAI进行了大量投资。此后&#xff0c;微软在Microsoft Edge浏览器中推出了自家的聊天机器人Bing Chat。 在论坛和社交媒体上&#xff0c;你可以发现这两个AI工具都吸引了很…...

Qt读写ini配置文件(QSettings)、XML

1、ini相关的 总结&#xff1a;Qt读写ini配置文件(QSettings) - 布丁Plus - 博客园 (cnblogs.com) Qt读写ini文件&#xff08;含源码注释&#xff09;_qt ini文件读写_lw向北.的博客-CSDN博客 2、XML相关的 Qt读写XML文件&#xff08;含源码注释&#xff09;_qt写xml_lw向北…...

JVM知识点(二)

1、G1垃圾收集器 -XX:MaxGCPauseMillis10&#xff0c;G1的参数&#xff0c;表示在任意1s时间内&#xff0c;停顿时间不能超过10ms&#xff1b;G1将堆切分成很多小堆区&#xff08;Region&#xff09;&#xff0c;每一个Region可以是Eden、Survivor或Old区&#xff1b;这些区在…...

代码随想录算法训练营day44 | LeetCode 518. 零钱兑换 II 377. 组合总和 Ⅳ

今晚学习了完全背包的做法&#xff0c;和01背包的差别具体来说就是一个可以重复&#xff0c;一个不可以重复。体现在数组的遍历中来说就是完全背包不能用二维数组做法&#xff08;因为二维dp数组一定不会重复&#xff0c;但是还没验证过&#xff09;&#xff0c;只能用一维dp数…...

Vue2向Vue3过度核心技术工程化开发和脚手架

目录 1 工程化开发和脚手架1.1 开发Vue的两种方式1.2.脚手架Vue CLI 2 项目目录介绍和运行流程2.1 项目目录介绍2.2 运行流程 3 组件化开发4 根组件 App.vue4.1 根组件介绍4.2 组件是由三部分构成4.3 总结 5 普通组件的注册使用-局部注册5.1 特点&#xff1a;5.2 步骤&#xff…...

Expected all tensors to be on the same device, but found at least two devices

Expected all tensors to be on the same device, but found at least two devices, 原因是计算的过程中&#xff0c;两个不同类型的变量在一起进行运算&#xff0c;即一个变量存储在gpu中&#xff0c;一个变量存储在cpu中&#xff0c;两个变量的存储位置冲突&#xff0c;导致无…...

Mysql备份命令Mysqldump导入、导出以及压缩成zip、gz格式

1、导出 命令&#xff1a;mysqldump -u用户名 -p数据库密码 数据库名 > 文件名 如果用户名需要密码&#xff0c;则需要在此命令执行后输入一次密码核对&#xff1b;如果数据库用户名不需要密码&#xff0c;则不要加“-p”参数&#xff0c;导入的时候相同。注意输入的用户名…...

App卡帧与BlockCanary

作者&#xff1a;图个喜庆 一&#xff0c;前言 app卡帧一直是性能优化的一个重要方面&#xff0c;虽然现在手机硬件性能越来越高&#xff0c;明显的卡帧现象越来越少&#xff0c;但是了解卡帧相关的知识还是非常有必要的。 本文分两部分从app卡帧的原理出发&#xff0c;讨论屏…...

bpmnjs Properties-panel拓展(ExtensionElements拓展篇)

接上文bpmnjs Properties-panel拓展&#xff08;属性设置篇&#xff09;&#xff0c;继续记录下第三个拓展需求的实现。 需求简述 在ExclusiveGateway标签的extensionElements标签中增加子标签<activiti:executionListener>子标签&#xff0c;可增加复数子标签。子标签…...

虚拟机的使用

首先需要安装VMware软件&#xff0c;这是虚拟机&#xff0c;在里面可以实现在windows的笔记本上运行包括&#xff0c;windows11和linux系统的开发和研究。 VMware是一种虚拟化技术&#xff0c;可以让你在一台物理计算机上运行多个操作系统和应用程序&#xff0c;而不需要重启或…...

CSS Flex布局

前言 Flex布局&#xff08;弹性盒子布局&#xff09; 是一种用于在容器中进行灵活和自适应布局的CSS布局模型。通过使用Flex布局&#xff0c;可以更方便地实现各种不同尺寸和比例的布局&#xff0c;使元素在容器内自动调整空间分配。 Flex-组成 Flex布局由以下几个主要组成部分…...

Virtual

虚拟接口可以用作编写操作系统和驱动程序独立测试的一种方式。任何连接到同一通道(来自同一Python进程)的VirtualBus实例都将相互接收消息。 如果消息应跨进程或主机边界发送,请考虑使用多播IP接口,并参考虚拟接口对不同虚拟接口进行比较和一般性讨论。 Example import …...

6、监测数据采集物联网应用开发步骤(5.2)

监测数据采集物联网应用开发步骤(5.1) 包含4个类数据库连接&#xff08;com.zxy.db_Self.ConnectionPool_Self.py&#xff09;、数据库操作类&#xff08;com.zxy.db_Self.Db_Common_Self.py&#xff09;、数据库管理类&#xff08;com.zxy.db_Self.DBManager_Self.py&#xf…...

解释 Git 的基本概念和使用方式

该文为AI自动生成&#xff0c;InsCode AI 创作助手 Git 是一种版本控制工具&#xff0c;用于跟踪代码或文件的更改历史记录。以下是 Git 的基本概念和使用方式&#xff1a; 仓库 (Repository)&#xff1a;仓库是一个存储项目代码和历史记录的地方&#xff0c;可以在本地或远程…...

不同ubuntu系统下的不同ros系统可以互相通讯吗

可以的,不同版本的Ubuntu系统和ROS版本的机器仍然可以实现ROS节点之间的通信。 主要的原因有:1. ROS节点间通信是通过ROS master实现的。不同机器上的ROS节点都可以连接到同一个ROS master,从而实现通信。 2. ROS消息系统可以兼容不同的ROS版本。即使节点使用的ROS版本不同,也…...

数学建模-模型详解(2)

微分模型 当谈到微分模型时&#xff0c;通常指的是使用微分方程来描述某个系统的动态行为。微分方程是描述变量之间变化率的数学方程。微分模型可以用于解决各种实际问题&#xff0c;例如物理学、工程学、生物学等领域。 微分模型可以分为两类&#xff1a;常微分方程和偏微分…...

IT运维:使用数据分析平台监控DELL服务器

概述 在企业日常运维中&#xff0c;我们有着大量的服务器设备&#xff0c;设备故障一般可以通过常用的监控软件实现自动告警&#xff0c;但如果在管理运维中我们要做的不仅仅是发现故障&#xff0c;处理硬件故障&#xff0c;我们还需要进一步的了解&#xff0c;今年一共出现了多…...