使用|SharePoint| 查询 Cortex Search 服务

备注

Snowflake Connector for SharePoint 受 `Connector 条款<https://www.snowflake.com/legal/snowflake-connector-terms/>`_ 的约束。

您可以使用 Cortex Search 服务构建聊天和搜索应用程序,以便与 SharePoint 中的文档聊天或查询文档。

安装和配置 Snowflake Connector for SharePoint 并开始从 Sharepoint 引入内容后,您就可以查询 Cortex Search 服务。有关使用 Cortex Search 的更多信息,请参阅 查询 Cortex Search 服务

筛选器响应

要将 Cortex Search 服务的响应限制为 SharePoint 中特定用户可以访问的文档,可以在查询 Cortex Search 时指定一个包含用户 ID 或电子邮件地址的筛选器。例如,filter.@contains.user_idsfilter.@contains.user_emails。连接器创建的 Cortex Search 服务名称是 search_service 并位于 Cortex 架构中。

在 SQL 工作表中运行以下 SQL 代码,利用从 SharePoint 站点引入的文件查询 Cortex Search 服务。

替换以下内容:

  • application_instance_name:数据库和连接器应用程序实例的名称。

  • user_emailID:要筛选响应的用户的电子邮件 ID。

  • your_question:要获取响应的问题。

  • number_of_results:要在响应中返回的最大结果数。最大值为 1000,默认值为 10。

SELECT PARSE_JSON(
  SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
    '<application_instance_name>.cortex.search_service',
      '{
        "query": "<your_question>",
         "columns": ["chunk", "web_url"],
         "filter": {"@contains": {"user_emails": "<user_emailID>"} },
         "limit": <number_of_results>
       }'
   )
)['results'] AS results
Copy

以下是您可以为 columns 输入的值的完整列表:

列名称

类型

描述

full_name

字符串

Sharepoint 站点文档根目录中文件的完整路径。示例:folder_1/folder_2/file_name.pdf

web_url

字符串

在浏览器中显示 Sharepoint 原始文件的 URL。

last_modified_date_time

字符串

项目最近一次修改的日期和时间。

chunk

字符串

与 Cortex Search 查询匹配的文档中的一段文本。

user_ids

数组

可访问文档的 Microsoft 365 用户 IDs ID 的数组。它还包括分配给文档的所有 Microsoft 365 组的用户 IDs。要查找特定用户 ID,请参阅 获取用户 (https://learn.microsoft.com/en-us/graph/api/user-get?view=graph-rest-1.0&tabs=http)。

user_emails

数组

可访问文档的 Microsoft 365 用户电子邮件 IDs 的数组。它还包括分配给文档的所有 Microsoft 365 组的用户电子邮件 IDs。

示例:向 AI 助手查询人力资源 (HR) 信息

您可以使用 Cortex Search 查询 AI 助手,为员工聊天提供最新版本的 HR 信息,如入职、行为规范、团队流程和组织政策等。使用响应筛选器,您还可以允许 HR 团队成员查询员工合同,同时遵守 SharePoint 中配置的访问控制。

SQL 工作表 中运行以下内容,利用从 SharePoint 引入的文件查询 Cortex Search 服务。选择数据库为应用程序实例名称,架构为 Cortex

替换以下内容:

  • application_instance_name:数据库和连接器应用程序实例的名称。

  • user_emailID:要筛选响应的用户的电子邮件 ID。

SELECT PARSE_JSON(
     SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
          '<application_instance_name>.cortex.search_service',
          '{
             "query": "What is my vacation carry over policy?",
             "columns": ["chunk", "web_url"],
             "filter": {"@contains": {"user_emails": "<user_emailID>"} },
             "limit": 1
          }'
     )
 )['results'] AS results
Copy

后续步骤

管理 Snowflake Connector for SharePoint

语言: 中文