<budget_name>!ADD_SHARED_RESOURCE¶
将共享资源添加到 自定义预算。当您添加共享资源时,仅当该资源被特定用户使用时,才会跟踪其使用情况。这些用户被贴上了通过 SET_USER_TAGS 方法添加到预算中的标签值对。
有关更多信息,请参阅 针对 AI 功能(共享资源)使用预算。。
语法¶
<budget_name>!ADD_SHARED_RESOURCE( '<domain>' [ , '<instance>' ] )
实参¶
'domain'添加到预算的资源类型。有效值:模型监视器名称字符串。
AI FUNCTIONCORTEX CODECORTEX AGENTSNOWFLAKE INTELLIGENCE
除非指定第二个实参,否则预算将跟踪指定域内所有资源的使用情况。
'instance'可选。指定所选
domain中的特定资源以添加到预算中。对于支持实例级选择的域(例如
AI FUNCTION和CORTEX CODE),此实参允许您跟踪特定的函数或界面。如果不指定第二个实参,预算将跟踪域内的所有实例。
示例:
AI 函数:
AI_CLASSIFY、AI_COMPLETECortex Code:
CORTEX_CODE_CLI、CORTEX_CODE_SNOWSIGHT
实例级选择并不适用于所有域。例如,
CORTEX AGENT和SNOWFLAKE INTELLIGENCE目前仅在域级别进行跟踪。
返回¶
返回一个 VARCHAR 值,用于指明资源是否已成功添加到预算中。
如果资源无法添加到预算,函数会返回错误消息。
访问控制要求¶
要为自定义预算调用此方法,需要具备以下权限和角色:
预算实例的 ADMIN 实例角色。
对包含预算实例的数据库和架构的 USAGE 权限。
对包含该被添加资源的数据库和架构的 USAGE 权限(对于架构对象)。
有关更多信息,请参阅 Budgets 角色和权限。
使用说明¶
您只能将共享资源添加到 自定义预算。
要验证该方法的结果,请调用 GET_BUDGET_SCOPE 方法。
当指定实体类型的所有对象都被添加后(例如所有 AI 函数),您就无法再添加该类型的单个资源了。
调用此方法不会返回对象。因此,您无法使用方法链来调用此方法返回值上的另一个方法。相反,应在单独 SQL 语句中调用每个方法。
示例¶
将全部 AI 函数添加到预算:
CALL finance_budget!ADD_SHARED_RESOURCE('AI FUNCTION');
将特定 AI 函数添加到预算:
CALL finance_budget!ADD_SHARED_RESOURCE('AI FUNCTION', 'AI_CLASSIFY');
将所有 Cortex Code 工作负载添加到预算:
CALL finance_budget!ADD_SHARED_RESOURCE('CORTEX CODE');
将 Cortex Code CLI 工作负载添加到预算:
CALL finance_budget!ADD_SHARED_RESOURCE('CORTEX CODE', 'CORTEX_CODE_CLI');
将 Cortex Code Snowsight 工作负载添加到预算:
CALL finance_budget!ADD_SHARED_RESOURCE('CORTEX CODE', 'CORTEX_CODE_SNOWSIGHT');
将 Cortex Agent 工作负载添加到预算:
CALL finance_budget!ADD_SHARED_RESOURCE('CORTEX AGENT');
备注
Cortex Agent 预算仅在域级别可用。要跟踪特定代理的成本,请改为通过资源标签使用资源预算。有关更多信息,请参阅 Cortex Agent 的资源预算。
将所有 Snowflake Intelligence 工作负载添加到预算:
CALL finance_budget!ADD_SHARED_RESOURCE('SNOWFLAKE INTELLIGENCE');
备注
Snowflake Intelligence 预算仅在域级别可用。