Azure AI 搜索(以前称为“Azure 认知搜索”)在传统和对话式搜索应用程序中针对用户拥有的内容提供大规模的安全信息检索。 关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。
信息检索是任何显示文本和矢量的应用程序的基础。 常见方案包括目录或文档搜索、数据浏览,以及越来越多的基于专有基础数据的聊天式搜索形式。 创建搜索服务时,将使用以下功能:
从体系结构方面来讲,搜索服务位于外部数据存储(包含未编入索引的数据)与客户端应用(向搜索索引发送查询请求并处理响应)之间。
在客户端应用中,搜索体验是使用 Azure AI 搜索中的 API 定义的,可能包括相关性调整、语义评分、自动完成、同义词匹配、模糊匹配、模式匹配、筛选和排序。
在整个 Azure 平台上,Azure AI 搜索可以以以下方式与其他 Azure 服务集成:以“索引器”(自动从 Azure 数据源引入/检索数据)和“技能组”(引入 Azure AI 服务(例如图像和自然语言处理)中的可消耗 AI)的形式,或者以引入你在 Azure 机器学习中创建的或在 Azure Functions 内包装的自定义 AI 的形式。
在搜索服务本身,两个主要工作负荷是索引编制和查询 。
Azure AI 搜索非常适合以下应用方案:
有关特定功能的详细信息,请参阅 [Azure AI 搜索的功能]
在 Azure 门户中使用:功能通过简单的 [REST API]或 Azure SDK(如 [Azure SDK for .NET])公开。 Azure 门户支持通过用于原型制作以及查询索引和技能组的工具进行服务管理和内容管理。
可以通过以下四个步骤来实现核心搜索功能的端到端探索:
或者,也可以以原子步骤创建、加载和查询搜索索引:
客户常常询问 Azure AI 搜索与其他搜索相关解决方案有何不同。 下表总结主要区别。
比较对象 | 主要区别 |
---|---|
Microsoft Search | [Microsoft 搜索]适用于需要在 SharePoint 中查询内容的经过 Microsoft 365 身份验证的用户。 它是现成可用的搜索体验,由管理员进行启用和配置,能够通过连接器接受来自 Microsoft 和其他来源的外部内容。 |
相对地,Azure AI 搜索对你定义的索引执行查询,填充你拥有的数据和文档(常常来自多个不同的源)。 Azure AI 搜索具有通过[索引器]取一些 Azure 数据源的功能,但你也可将符合你的索引架构的所有 JSON 文档推送到单个统一的可搜索资源。 你还可自定义索引管道,将机器学习和词法分析器纳入其中。 由于 Azure AI 搜索构建为更大型的解决方案中的一个插件组件,因此你可通过任意平台在几乎任意应用中集成搜索功能。
必应 [必应系列的搜索 API]在 Bing.com 上搜索索引,以匹配你提交的搜索词。 索引从 HTML、XML 和公共网站上的其他 Web 内容生成。 [必应自定义搜索]构建于同一基础之上,针对 Web 内容类型提供相同的爬网技术,范围覆盖单个网站。
在 Azure AI 搜索中,定义搜索索引并使用你的内容填充此索引。 可以使用[索引器]或将任何符合索引的 JSON 文档推送到搜索服务来控制数据引入。
数据库搜索 许多数据库平台都包含内置的搜索体验。 SQL Server 具有[全文搜索]。 Azure Cosmos DB 及类似技术具有可查询的索引。 在评估结合使用搜索和存储的产品时,确定要采用哪种方式可能颇具挑战性。 许多解决方案同时使用两种:使用 DBMS 进行存储,使用 Azure AI 搜索获取专业搜索功能。
与 DBMS 搜索相比,Azure AI 搜索存储来自不同来源的内容,并提供专用文本处理功能,例如 [56 种语言]中的语言感知文本处理(词干化、词元化、词形式)。 它还支持拼写错误单词的自动更正、[同义词]、[建议]、[评分控制]、[Facet] 和[自定义词汇切分]。 Azure AI 搜索中的[全文搜索引擎]基于 Apache Lucene,它是信息检索方面的行业标准。 虽然 Azure AI 搜索以倒排索引的形式持久存储数据,但它不能替代真正的数据存储,建议不要在该容量中使用它。 有关详细信息,请参阅此论坛帖子。
资源利用是这个类别的另一个转折点。 索引和一些查询操作通常是计算密集型的。 将搜索从 DBMS 卸载到云中的专用解决方案可以节省用于事务处理的系统资源。 此外,通过将搜索外部化,可以根据查询量轻松调整规模。
专用搜索解决方案 假设已决定使用全频谱功能进行专用搜索,则需要在本地解决方案或云服务之间进行最终的分类比较。 许多搜索技术提供对索引和查询管道的控制、对更丰富查询和筛选语法的访问、对设置级别和相关性的控制以及自导智能搜索功能。
如果想要获得一个开销和维护工作量极少且规模可调的统包解决方案,则云服务是适当的选择。
在云范式内,多个提供程序会提供相当的基线功能,以及全文搜索、地理空间搜索,并且能够处理搜索输入中一定程度的模糊性。 通常,它是一项[专用功能],或者是 API、工具以及用于确定最匹配项的管理功能的易化和总体简化。
在所有云提供程序中,对于主要依赖于信息检索搜索和内容导航的应用,Azure AI 搜索在处理 Azure 上的内容存储和数据库的全文搜索工作负荷方面最为强大。
主要优势包括:
在我们的所有客户中,能够运用 Azure AI 搜索中最广泛功能的客户包括在线目录、业务线程序以及文档发现应用程序。