Azure Machine Learning - 在 Azure 门户中创建AI搜索技能组

你将了解 Azure AI 搜索中的技能组如何通过添加光学字符识别 (OCR)、图像分析、语言检测、文本翻译和实体识别,在搜索索引中创建可搜索文本的内容。
关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。

环境准备

开始之前,必须具备以下先决条件:

  • 具有活动订阅的 Azure 帐户。 免费创建帐户

  • Azure AI 搜索。 [创建服务]或查找现有服务。 可以使用本快速入门的免费服务。

  • 具有 Blob 存储的 Azure 存储帐户。

设置数据

在以下步骤中,在 Azure 存储中设置 blob 容器以存储异类内容文件。

  1. 下载示例数据,其中包括不同类型的小型文件集。 解压缩文件。

  2. 使用 Azure 帐户登录到 Azure 门户

  3. [创建 Azure 存储帐户]或[查找现有帐户]。

    • 选择 Azure AI 搜索所在的同一区域,以避免带宽费用。

    • 选择StorageV2(常规用途 V2)。

  4. 在 Azure 门户中,打开 Azure 存储页并创建容器。 可以使用默认的公共访问级别。

  5. 在容器中,选择"上传"以上传在第一个步骤中下载的示例文件。 请注意,内容类型非常广泛,包括无法以本机格式进行全文搜索的图像和应用程序文件。

现在,你已准备好继续运行"导入数据"向导。

运行"导入数据"向导

  1. 使用 Azure 帐户登录到 Azure 门户

  2. 查找搜索服务,并在"概述"页中,选择命令栏上的"导入数据",通过四个步骤设置认知扩充。

步骤 1:创建数据源

  1. 在"连接到数据"中,选择"Azure Blob 存储" 。

  2. 选择与存储帐户的现有连接,然后选择你创建的容器。 为数据源命名,并对余下的设置使用默认值。

    继续转到下一页。

如果收到"从数据源检测索引架构时出错",则说明支持向导的索引器无法连接到数据源。 数据源很可能具有安全保护。 尝试以下解决方案,然后重新运行向导。

步骤 2:添加认知技能

接下来,配置 AI 扩充来调用 OCR、图像分析和自然语言处理。

  1. 对于本快速入门,我们将使用免费的 Azure AI 服务资源。 示例数据包括 14 个文件,因此,Azure AI 服务免费提供的 20 个事务配额足以完成本快速入门。
  2. 展开"添加扩充",并做出六项选择。

启用 OCR,将图像分析技能添加到向导页。

选择实体识别(人员、组织和位置)和图像分析技能(标记、字幕)。

继续转到下一页。

步骤 3:配置索引

索引包含可搜索的内容,"导入数据"向导通常可以通过对数据源采样来创建架构。 在此步骤中查看生成的架构,并根据情况修改任何设置。 以下是为演示 Blob 数据集创建的默认架构。

在本快速入门中,向导能够很好地设置合理的默认值:

  • 默认字段基于现有 blob 的元数据属性,以及扩充输出的新字段(例如 peopleorganizationslocations)。 数据类型从元数据和数据采样推断。

  • 默认文档键是 metadata_storage_path(由于字段包含唯一值,因此选择了此键)。

  • 默认属性为可检索可搜索可搜索 允许对字段进行全文搜索。 可检索 意味着可以在结果中返回字段值。 向导假设你希望这些字段可检索且可搜索,因为它们是通过技能集创建的。 如果要在筛选表达式中使用字段,请选择"可筛选"。

    将某个字段标记为 Retrievable 并不意味着该字段一定会出现在搜索结果中。 通过使用 $select 查询参数指定要包含的字段,可以控制搜索结果的构成。

继续转到下一页。

步骤 4:配置索引器

索引器驱动索引过程。 它指定数据源名称、目标索引和执行频率。 "导入数据"向导将创建多个对象,包括一个可以重置和重复运行的索引器。

  1. 在"索引器"页中,可以接受默认名称并选择"一次"来立即运行该索引器。
  2. 选择"提交"以创建并同时运行索引器。

监视状态

与典型的基于文本的索引相比,认知技能索引编制需要花费更长的时间才能完成,OCR 和图像分析尤其如此。 若要监视进度,请转到"概述"页,然后选择页面中间的"索引器"。

若要查看有关执行状态的详细信息,请从列表中选择一个索引器,然后选择"成功"(或"失败")以查看执行详细信息。

在此演示中,有一条警告:"Could not execute skill because one or more skill input was invalid."。该警告表示数据源中的 PNG 文件不向实体识别提供文本输入。 出现此警告是因为上游 OCR 技能无法识别图像中的任何文本,因此无法为下游实体识别技能提供文本输入。

警告在技能组执行中很常见。 随着你熟悉技能循环访问数据的方式,你可能开始发现规律并了解哪些警告是可以安全忽略的。

搜索浏览器中的查询

创建索引后,请在"搜索浏览器"中运行查询以返回结果。

  1. 在搜索服务仪表板页上,选择命令栏上的"搜索浏览器"。

  2. 选择顶部的"更改索引",选择创建的索引。

  3. 输入要在其中查询索引的搜索字符串,例如 search=Satya Nadella&$select=people,organizations,locations&$count=true

随后会返回详细的 JSON 格式的结果,这些结果可能难以阅读,尤其是在大型文档中。 在此工具中搜索时,可以借鉴一些提示,其中包括以下技术:

  • 追加 $select 以限制结果中返回的字段。
  • 使用 CTRL-F 在 JSON 中搜索特定属性或术语。

查询字符串区分大小写,因此如果收到"未知字段"消息,请检查"字段"或"索引定义(JSON)"以验证名称和大小写。

关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。

相关推荐
边缘计算社区16 分钟前
首个!艾灵参编的工业边缘计算国家标准正式发布
大数据·人工智能·边缘计算
游客52027 分钟前
opencv中的各种滤波器简介
图像处理·人工智能·python·opencv·计算机视觉
一位小说男主27 分钟前
编码器与解码器:从‘乱码’到‘通话’
人工智能·深度学习
深圳南柯电子43 分钟前
深圳南柯电子|电子设备EMC测试整改:常见问题与解决方案
人工智能
Kai HVZ44 分钟前
《OpenCV计算机视觉》--介绍及基础操作
人工智能·opencv·计算机视觉
biter00881 小时前
opencv(15) OpenCV背景减除器(Background Subtractors)学习
人工智能·opencv·学习
吃个糖糖1 小时前
35 Opencv 亚像素角点检测
人工智能·opencv·计算机视觉
qq_529025291 小时前
Torch.gather
python·深度学习·机器学习