介绍

已完成

语义搜索使用语义相似性增强标准关键字搜索。 这种相似度意味着,虽然两者之间的词汇重叠程度不超过一个字母,对“sunny”的查询也可以匹配文本“明亮的自然光”。 语义搜索使用人工智能(AI)生成的嵌入矢量来测量查询和记录相似性,而不是字符相似性,从而提供更相关的搜索结果。

本模块演示如何在 Azure Database for PostgreSQL 灵活服务器中启用语义搜索,以及如何使用 Azure OpenAI 生成矢量嵌入。

包含矢量和 azure_ai 扩展的 Azure 数据库的关系图。

情景

假设你在一家管理度假房产列表的公司工作。 你希望让客户在线搜索和预订房源。 一个挑战是人们用来描述相同事物的许多不同的词。 开发和维护关键字列表的资源有限,因为说明更改和属性来去去去,手动关键字输入容易出错。 你希望在无需手动输入关键字列表的情况下提供相关搜索结果。

学习目标

你可以大致了解语义搜索、嵌入和矢量数据库。 然后,启用 pgvectorazure_ai 扩展。 使用这些扩展,你将使用 azure_ai 扩展对从 Azure OpenAI 嵌入生成的矢量列执行语义搜索。 最后,编写一个搜索函数,该函数接收查询字符串,生成该查询的嵌入内容,并针对数据库执行语义搜索。

在此会话结束时,你能够使用 Azure Database for PostgreSQL 灵活服务器数据库对 Azure OpenAI 生成的矢量嵌入执行语义搜索。