Snowflake Intelligence 概述¶
使用 Snowflake Intelligence 获取见解并根据组织中的数据采取行动。借助 Snowflake Intelligence,您可以执行以下操作:
使用自然语言创建图表并即时获得答案。您无需技术专业知识或等待自定义仪表板即可发现趋势和分析数据。
访问和分析数千个数据源,包括结构化数据和非结构化数据。您可以同时连接来自电子表格、文档、图像和数据库的见解。
Snowflake Intelligence 使用代理,即连接到一个或多个语义视图、语义模型、Cortex 搜索服务和工具的 AI 模型。代理可以回答问题、提供见解并显示可视化效果。Snowflake Intelligence 由 Cortex AISQL、Cortex Analyst 和 Cortex Search 提供支持。
根据以下章节设置 Snowflake Intelligence,并开始使用它来从数据中获取价值。有关 Snowflake Intelligence 的快速入门指南,请参阅 Snowflake Intelligence 入门 (https://quickstarts.snowflake.com/guide/getting-started-with-snowflake-intelligence/index.html)。
支持的模型和区域¶
Snowflake Intelligence 支持以下模型。只要账户有权访问这些模型,您就可以使用它们。有关更多信息,请参阅 控制模型访问。
Claude 4.0
Claude 3.7
Claude 3.5
GPT 4.1
虽然列出的模型可能并非在 所有区域 都可用,但您可以借助 Cortex 跨区域推理在任何云或区域中使用 Snowflake Intelligence。这包括模型不可用的云和区域。有关配置 Cortex 跨区域推理的更多信息,请参阅 跨区域推理。
AWS US - 在 AWS 中,Claude 4 提供最高的质量和最佳速度性能。我们建议您为
aws_us
设置 Cortex 跨区域推理,以便使用 Claude 4 并获得最佳性能。如果没有 Cortex 跨区域推理,则只能在aws_us
中使用 Claude 3.5。**Azure US ** - 如果您在 Snowflake Intelligence 中使用 EAST US,则可以在不使用 Cortex 跨区域推断的情况下使用 GPT 4.1。其他区域和模型组合需要为
azure_us
设置 Cortex 跨区域推理。AWS EU - 只要您为
aws_eu
配置了 Cortex 跨区域推理,就可以在该区域使用 Claude 4。
设置 Snowflake Intelligence¶
要为用户设置 Snowflake Intelligence,必须配置代理权限。
重要
默认情况下,Snowflake Intelligence 使用用户的默认角色和默认仓库。当您邀请其他人使用 Snowflake Intelligence 时,请确保他们已设置了默认角色和仓库。
备注
来自 Snowflake Intelligence 的所有查询都使用用户的凭据。与用户关联的所有基于角色的访问控制和数据掩码策略都会自动应用于与代理的所有互动和对话。
创建数据库。它会保存配置对象和用于支持 Snowflake Intelligence 的其他对象。
CREATE DATABASE IF NOT EXISTS snowflake_intelligence; GRANT USAGE ON DATABASE snowflake_intelligence TO ROLE PUBLIC;
设置
snowflake_intelligence
数据库后,使用以下 SQL 命令创建架构来存储代理并使所有人都能发现它们。CREATE SCHEMA IF NOT EXISTS snowflake_intelligence.agents; GRANT USAGE ON SCHEMA snowflake_intelligence.agents TO ROLE PUBLIC;
向任何应该能够为 Snowflake Intelligence 创建代理的角色授予
agents
架构的 CREATE AGENT 权限。GRANT CREATE AGENT ON SCHEMA snowflake_intelligence.agents TO ROLE <role>;
创建代理¶
从 Snowsight UI 中的“Agent admin”页面创建代理,以回答问题并提供见解。代理使用语义视图、语义模型、Cortex Search 服务或它们的组合来提供答案。尽管您可以创建不使用任何这些工具的基本代理,但该基本代理仅使用基本模型来提供答案。因此,该代理无法访问您的 Snowflake 账户中的数据,并且获得答案的背景有限。
语义视图或模型用于 Snowflake 中的表和结构化数据。只要表可供 Snowflake 查询,这些数据就可以存在于任何表中。Cortex Search 可用于索引和搜索包含大量文本的数据,例如文档、对话和笔录。
创建常识代理¶
本教程将指导您完成创建代理的过程,您无需向代理添加任何工具,该代理即可回答常识问题。
登录 Snowsight。
从左侧导航栏中选择 AI & ML。
选择 Agents。
选择 Create agent。
对于 Platform integration,选择 Create this agent for Snowflake Intelligence。
对于 Agent object name,请指定代理的名称,该名称将在 UI 中向用户显示。
对于 Display name,指定代理的名称,该名称将在代理列表中向管理员显示。
选择 Create agent。
用常识请求提示代理。
在 Cortex Analyst 中创建使用语义视图的代理¶
本节假设您已经创建了语义视图。有关语义视图以及创建方法的信息,请参阅 语义视图概述。
创建语义视图后,可以创建使用语义视图的代理。要创建代理,请按照以下步骤操作:
登录 Snowsight。
从左侧导航栏中选择 AI & ML。
选择 Agents。
选择 Create agent。
对于 Platform integration,选择 Create this agent for Snowflake Intelligence。
对于 Agent object name,请指定代理的名称,该名称将在 UI 中向用户显示。
对于 Display name,指定代理的名称,该名称将在代理列表中向管理员显示。
选择 Create agent。
创建代理后,从代理列表中选择代理。
选择 Edit。
对于 Description,请描述代理以及用户与之交互的方式。
选择 Instructions。
对于 Response instruction,请提供模型用于生成响应的说明。例如,指定您是希望代理优先创建图表,还是要对用户保持某种语气。
要添加用户可以向代理询问的示例问题,请输入示例问题并选择 Add a question。
选择 Tools。
找到 Cortex Analyst 并选择相应的 + Add 按钮。
对于 Name,请输入语义视图的名称。
选择 Semantic view。
选择代理使用的语义视图。
对于 Warehouse,请选择代理用来运行查询的仓库。
对于 Query timeout (seconds),请指定代理在超时之前等待查询完成的最长时间(以秒为单位)。
对于 Description,请描述语义视图。
选择 Add。
选择 Orchestration。
对于 Orchestration model,请选择代理用于处理编排的模型。
对于 Planning instructions,请根据用户提供的输入,提供影响代理选择工具的说明。其中可能包括有关每种工具何时使用的具体说明,甚至包括在响应开始或结束时始终使用工具的说明。
选择 Access。
要向代理授予角色访问权限,请选择 Add role,然后从下拉菜单中选择相应角色。
选择 Save。
创建使用 Cortex Search Service 的代理¶
本节假设您已经创建了 Cortex Search Service。有关创建 Cortex Search Service 的信息,请参阅 Cortex Search。您也可以使用与您共享的 Cortex Knowledge Extension (CKE)。有关使用 CKE 的教程,请参阅 故障排除。
重要
任何通过代理与 Cortex Search Service 交互的用户都必须拥有该服务的访问权限,包括该服务所在的数据库和架构的 USAGE 权限。
创建搜索服务后,您可以创建使用该服务的代理。要创建代理,请按照以下步骤操作:
登录 Snowsight。
从左侧导航栏中选择 AI & ML。
选择 Agents。
选择 Create agent。
对于 Platform integration,选择 Create this agent for Snowflake Intelligence。
对于 Agent object name,请指定代理的名称,该名称将在 UI 中向用户显示。
对于 Display name,指定代理的名称,该名称将在代理列表中向管理员显示。
选择 Create agent。
创建代理后,从代理列表中选择代理。
选择 Edit。
对于 Description,请描述代理以及用户与之交互的方式。
选择 Instructions。
对于 Response instruction,请提供模型用于生成响应的说明。例如,指定您是希望代理优先创建图表,还是要对用户保持某种语气。
要添加用户可以向代理询问的示例问题,请输入示例问题并选择 Add a question。
选择 Tools。
找到 Cortex Search Services 并选择相应的 + Add 按钮。
对于 Name,请输入 Cortex Search Service 的名称。
对于 Description,请描述 Cortex Search Service。
对于 Search service,请选择代理使用的 Cortex Search Service。
选择 Add。
选择 Orchestration。
对于 Orchestration model,请选择代理用于处理编排的模型。
对于 Planning instructions,请根据用户提供的输入,提供影响代理选择工具的说明。其中可能包括有关每种工具何时使用的具体说明,甚至包括在响应开始或结束时始终使用工具的说明。
选择 Access。
要向代理授予角色访问权限,请选择 Add role,然后从下拉菜单中选择相应角色。
选择 Save。
向代理添加自定义工具¶
通过添加自定义工具,您可以扩展代理的功能。使用自定义工具,代理可以调用您定义的存储过程和函数来执行操作或进行计算。有关过程和函数的信息,请参阅 使用函数和过程扩展 Snowflake。
备注
Snowflake Intelligence 仅支持返回大小限制为 16 kb 的单个字符串的自定义工具。此外,Snowflake Intelligence 仅支持将简单类型(例如数字和字符串)作为自定义工具的参数。不支持复杂的对象类型,例如数组、地图和 JSON 对象。
要添加自定义工具,请按照以下步骤操作:
登录 Snowsight。
从左侧导航栏中选择 AI & ML。
选择 Agents。
从代理列表中选择代理。
选择 Edit。
选择 Tools。
找到 Custom tools 并选择相应的 + Add 按钮。
对于 Name,请输入自定义工具的名称。
对于 Resource type,请选择自定义工具是函数还是过程。有关是否使用函数或过程的信息,请参阅 选择是编写存储过程还是用户定义函数。
对于 Custom tool identifier,请选择要添加为自定义工具的现有函数或过程。
函数或过程的相关参数会自动显示。您可以通过添加名称、类型、描述以及选择是否需要参数,来手动为自定义工具添加参数。您也可以修改自动填充的参数。
对于 Warehouse,请选择代理用来运行自定义工具的仓库。必须手动选择仓库。
对于 Description,请描述自定义工具及其使用方法。
创建自定义工具后,确保向用户授予您作为自定义工具添加的函数或过程的 USAGE 权限。使用存储过程时,Snowflake Intelligence 会控制该过程是以所有者权限还是调用方权限运行。有关所有者权限和调用方权限的信息,请参阅 了解调用方权限和所有者权限存储过程。
使用代理¶
创建代理后,您可以向其提问,以通过数据获得见解。代理可以回答以下问题:
上一季度的平均销售额是多少?
上个月哪种产品销量最高?
能告诉我去年的销售趋势吗?
它还可以提供如下可视化图表:
条形图
折线图
饼状图
要使用代理,请按照以下步骤操作:
在左侧导航栏中,选择 AI & ML 或导航到 Snowflake Intelligence 登录页面 (https://ai.snowflake.com/)。
选择 Snowflake Intelligence。导航变为以 Snowflake Intelligence 为中心。我们建议在使用 Snowflake Intelligence 应用程序时打开一个专门用于 Snowsight 的新浏览器选项卡。通过使用不同的浏览器选项卡,您可以在 Snowsight 界面和 Snowflake Intelligence 应用程序之间切换。
在聊天窗口中,从下拉列表中选择代理。
选择代理要使用的数据源。
向代理提问或让代理向您提供数据的可视化图表。
修改现有代理¶
要修改现有代理的配置,请完成以下步骤:
在左侧导航栏中,选择 AI & ML。
选择 Agents。
从代理列表中,选择要修改的代理。这将打开一个窗格,其中包含代理的所有配置详细信息。
选择 Edit。
修改所需的配置详细信息。
选择 Save。
教程 - 创建使用 Snowflake 文档的代理¶
本教程介绍如何创建将 Snowflake 文档用作知识库的代理。该代理可以回答有关 Snowflake 功能和最佳实践的问题。
选择 Get,从 Snowflake Marketplace 安装 Cortex Knowledge Extension for Snowflake Documentation。
在安装提示中,记下在其中安装 Cortex Knowledge Extension 的数据库名称。这将在以后创建代理时使用。
为正在创建代理的角色添加新创建的数据库的权限。这些权限是访问数据库所必需的。
GRANT IMPORTED PRIVILEGES ON DATABASE <database_name> TO ROLE <role>;
按照 创建使用 Cortex Search Service 的代理 中的步骤创建代理,并进行以下修改:
添加 Cortex Search Service 时,选择新创建的数据库和 SHARED 架构。
对于 Search service,请添加
CKE_SNOWFLAKE_DOCS_SERVICE
搜索服务。选择 Add。
保存代理。
导航到 Snowflake Intelligence 登录页面 (https://ai.snowflake.com/)。
选择您创建的代理并选择 Cortex Knowledge Extension for Snowflake Documentation 作为来源。
向代理询问有关 Snowflake 文档的问题。
故障排除¶
如果遇到 table / search service / stage does not exist
错误,则可能表明存在权限问题。验证以下权限设置是否正确:
对于每个语义模型:
用户的默认角色会获授语义模型暂存区或视图以及表的数据库和架构的 USAGE。
用户的默认角色会获授存储语义模型文件的暂存区的 READ。
如果使用视图,则用户的默认角色会获授语义视图的 REFERENCES。
用户的默认角色会获授在语义模型或视图中定义的每个表的 SELECT。
对于每项 Cortex Search Service:
用户的默认角色会获授 Cortex Search Service 的数据库和架构的 USAGE。
用户会获授 Cortex Search Service 的 USAGE。